Closed pintojoy closed 1 year ago
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 30 days if no further activity occurs.
This issue has been automatically closed due to inactivity. Please re-open if this still requires investigation.
@bugzilla("1861104") @bugzilla("1946573") @pytest.mark.polarion_id("OCS-2524") @tier4a def test_pdb_check_simultaneous_node_drains( self, pvc_factory, pod_factory, bucket_factory, rgw_bucket_factory, node_drain_teardown, ): """
Check cluster and Ceph health
"""
Validate OSD PDBs before drain operation
assert ( not validate_existence_of_blocking_pdb() ), "Blocking PDBs exist, Can't perform drain"
Get 2 worker nodes to drain
typed_nodes = get_nodes(num_of_nodes=2) assert len(typed_nodes) == 2, "Failed to find worker nodes for the test" node_A = typed_nodes[0].name node_B = typed_nodes[1].name
Drain Node A and validate blocking PDBs
drain_nodes([node_A]) pdb_sample = TimeoutSampler( timeout=100, sleep=10, func=validate_existence_of_blocking_pdb, ) if not pdb_sample: log.error("Failed to create PDBs post node A drain") else: log.info("PDBs are created post node A drain")
Inducing delay between 2 drains
Node-B drain expected to be in pending due to blocking PDBs
time.sleep(30) try: drain_nodes([node_B])
After the drain check Mon failover in 10th, 15th and 20th min
except TimeoutExpired:
Mark the node-A back to schedulable and let drain finish in Node-B
time.sleep(40)
Validate OSD PDBs
assert ( validate_existence_of_blocking_pdb() ), "Blocking PDBs not created post second drain" E AssertionError: Blocking PDBs not created post second drain E assert False E + where False = validate_existence_of_blocking_pdb()
tests/manage/z_cluster/nodes/test_nodes_maintenance.py:510: AssertionError