Nodes: vm02 vm05 vm09

Description: orch:cephadm/workunits/{0-distro/centos_9.stream agent/on mon_election/connectivity task/test_host_drain}

Log: https://schulp.build.clyso.com/a/kyr-2026-03-08_22:22:45-orch:cephadm-squid-none-default-vps/305/teuthology.log

  • log_href: https://schulp.build.clyso.com/a/kyr-2026-03-08_22:22:45-orch:cephadm-squid-none-default-vps/305/teuthology.log
  • archive_path: /archive/kyr-2026-03-08_22:22:45-orch:cephadm-squid-none-default-vps/305
  • description: orch:cephadm/workunits/{0-distro/centos_9.stream agent/on mon_election/connectivity task/test_host_drain}
  • duration: 0:19:01
  • email: (Empty)
  • failure_reason: (Empty)
  • flavor: default
  • job_id: 305
  • kernel: (Empty)
  • last_in_suite: False
  • machine_type: vps
  • name: kyr-2026-03-08_22:22:45-orch:cephadm-squid-none-default-vps
  • nuke_on_error: (Empty)
  • os_type: centos
  • os_version: 9.stream
  • overrides:
    • admin_socket:
      • branch: squid
    • ansible.cephlab:
      • branch: main
      • skip_tags: nagios,monitoring-scripts,hostname,pubkeys,zap,sudoers,kerberos,ntp-client,resolvconf,cpan,nfs
      • vars:
        • timezone: UTC
    • ceph:
      • conf:
        • global:
          • mon election default strategy: 3
        • mgr:
          • debug mgr: 20
          • debug ms: 1
          • mgr/cephadm/use_agent: True
        • mon:
          • debug mon: 20
          • debug ms: 1
          • debug paxos: 20
        • osd:
          • debug ms: 1
          • debug osd: 20
          • osd mclock iops capacity threshold hdd: 49000
      • flavor: default
      • log-ignorelist:
        • \(MDS_ALL_DOWN\)
        • \(MDS_UP_LESS_THAN_MAX\)
        • MON_DOWN
        • mons down
        • mon down
        • out of quorum
        • CEPHADM_STRAY_HOST
        • CEPHADM_STRAY_DAEMON
        • CEPHADM_FAILED_DAEMON
      • log-only-match:
        • CEPHADM_
      • sha1: e911bdebe5c8faa3800735d1568fcdca65db60df
    • ceph-deploy:
      • conf:
        • client:
          • log file: /var/log/ceph/ceph-$name.$pid.log
        • mon:
    • install:
      • ceph:
        • flavor: default
        • sha1: e911bdebe5c8faa3800735d1568fcdca65db60df
      • extra_system_packages:
        • deb:
          • python3-xmltodict
          • python3-jmespath
        • rpm:
          • bzip2
          • perl-Test-Harness
          • python3-xmltodict
          • python3-jmespath
    • selinux:
      • allowlist:
        • scontext=system_u:system_r:logrotate_t:s0
        • scontext=system_u:system_r:getty_t:s0
    • workunit:
      • branch: tt-squid
      • sha1: 569c3e99c9b32a51b4eaf08731c728f4513ed589
  • owner: kyr
  • pid: 654974
  • roles:
    • ['host.a', 'mon.a', 'mgr.a', 'osd.0', 'osd.1']
    • ['host.b', 'mon.b', 'mgr.b', 'osd.2', 'osd.3']
    • ['host.c', 'mon.c', 'osd.4', 'osd.5']
  • sentry_event: (Empty)
  • status: pass
  • success: True
  • branch: squid
  • seed: 8017
  • sha1: e911bdebe5c8faa3800735d1568fcdca65db60df
  • subset: 1/64
  • suite: orch:cephadm
  • suite_branch: tt-squid
  • suite_path: /home/teuthos/src/github.com_kshtsk_ceph_569c3e99c9b32a51b4eaf08731c728f4513ed589/qa
  • suite_relpath: qa
  • suite_repo: https://github.com/kshtsk/ceph.git
  • suite_sha1: 569c3e99c9b32a51b4eaf08731c728f4513ed589
  • targets:
    • vm02.local: ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBIxFet/6Nw+135oEdf0jCGwQmGRkOrzMF4jTNJaYSRYniT4d9a3is4HHp6JxYGD5Gx4B+AUtfjabKHq/3f4efE8=
    • vm05.local: ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBIMCNV09dP3/bdl8iQAc8OgCX4tqM6Cclew9c5dn7YVNmAmaw5+BalMmW5eRtFV/fhXgToJRFCVyS86Nqb9NxF4=
    • vm09.local: ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBESGkvbjehbSdgBuD+P98qKq/JzJgi+UN8RaW7BgZ+X2D7zqVSqjyyCt+LjeFauGnmYZ6Oe9Ja7NQVzp8CrDKpI=
  • tasks:
      • internal.check_packages
      • internal.buildpackages_prep
      • internal.save_config
      • internal.check_lock
      • internal.add_remotes
      • console_log
      • internal.connect
      • internal.push_inventory
      • internal.serialize_remote_roles
      • internal.check_conflict
      • internal.check_ceph_data
      • internal.vm_setup
      • internal.base
      • internal.archive_upload
      • internal.archive
      • internal.coredump
      • internal.sudo
      • internal.syslog
      • internal.timer
      • pcp
      • selinux
      • ansible.cephlab
      • clock
      • pexec:
        • all:
          • sudo dnf remove nvme-cli -y
          • sudo dnf install nvmetcli nvme-cli -y
      • install
      • cephadm
      • cephadm.shell:
        • host.a:
          • set -ex HOSTNAMES=$(ceph orch host ls --format json | jq -r '.[] | .hostname') for host in $HOSTNAMES; do # find the hostname for "host.c" which will have no mgr HAS_MGRS=$(ceph orch ps --hostname ${host} --format json | jq 'any(.daemon_type == "mgr")') if [ "$HAS_MGRS" == "false" ]; then HOST_C="${host}" fi done # One last thing to worry about before draining the host # is that the teuthology test tends to put the explicit # hostnames in the placement for the mon service. # We want to make sure we can drain without providing # --force and there is a check for the host being removed # being listed explicitly in the placements. Therefore, # we should remove it from the mon placement. ceph orch ls mon --export > mon.yaml sed /"$HOST_C"/d mon.yaml > mon_adjusted.yaml ceph orch apply -i mon_adjusted.yaml # now drain that host ceph orch host drain $HOST_C --zap-osd-devices # wait for drain to complete HOST_C_DAEMONS=$(ceph orch ps --hostname $HOST_C) while [ "$HOST_C_DAEMONS" != "No daemons reported" ]; do sleep 15 HOST_C_DAEMONS=$(ceph orch ps --hostname $HOST_C) done # we want to check the ability to remove the host from # the CRUSH map, so we should first verify the host is in # the CRUSH map. ceph osd getcrushmap -o compiled-crushmap crushtool -d compiled-crushmap -o crushmap.txt CRUSH_MAP=$(cat crushmap.txt) if ! grep -q "$HOST_C" <<< "$CRUSH_MAP"; then printf "Expected to see $HOST_C in CRUSH map. Saw:\n\n$CRUSH_MAP" exit 1 fi # If the drain was successful, we should be able to remove the # host without force with no issues. If there are still daemons # we will get a response telling us to drain the host and a # non-zero return code ceph orch host rm $HOST_C --rm-crush-entry # verify we've successfully removed the host from the CRUSH map sleep 30 ceph osd getcrushmap -o compiled-crushmap crushtool -d compiled-crushmap -o crushmap.txt CRUSH_MAP=$(cat crushmap.txt) if grep -q "$HOST_C" <<< "$CRUSH_MAP"; then printf "Saw $HOST_C in CRUSH map after it should have been removed.\n\n$CRUSH_MAP" exit 1 fi
  • timestamp: 2026-03-08 22:22:45
  • teuthology_branch: clyso-debian-13
  • verbose: False
  • pcp_grafana_url: (Empty)
  • priority: 1000
  • user: kyr
  • queue: (Empty)
  • posted: 2026-03-08 22:22:54
  • started: 2026-03-08 23:40:24
  • updated: 2026-03-09 00:02:21
  • status_class: success
  • runtime: 0:21:57
  • wait_time: 0:02:56