Description of problem: During update, Ansible may hang awaiting node draining Version-Release number of the following components: rpm -q openshift-ansible openshift-ansible-3.6.173.0.96-1.git.0.2954b4a.el7.noarch rpm -q ansible ansible-2.4.2.0-2.el7.noarch ansible --version ansible 2.4.2.0 config file = /etc/ansible/ansible.cfg configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules'] ansible python module location = /usr/lib/python2.7/site-packages/ansible executable location = /usr/bin/ansible python version = 2.7.5 (default, May 3 2017, 07:55:04) [GCC 4.8.5 20150623 (Red Hat 4.8.5-14)] How reproducible: 100% for particular configuration Steps to Reproduce: 1. ansible-playbook /usr/share/ansible/openshift-ansible/playbooks/byo/openshift-cluster/upgrades/v3_6/upgrade_nodes.yml Actual results: Please include the entire output from the last TASK line through the end of output if an error is generated No longer available Hangs at "Drain node" step * I believe this is "Drain and upgrade nodes" in /usr/share/ansible/openshift-ansible/playbooks/common/openshift-cluster/upgrades/upgrade_nodes.yml but the RFE should cover all cases (e.g. docker_upgrade, upgrade_control_plane, and upgrade_nodes) Expected results: Node upgrade without intervention Additional info: Please attach logs from ansible-playbook with the -vvv flag Had to use https://bugzilla.redhat.com/show_bug.cgi?id=1562961#c2 twice (once for node2 and again for node4) The node2 case was due to logging pod hanging on Termination The node4 case was due to CNS pod (gluster-s3) hanging on Termination
Per the help output of `drain`[1], `--force` must be used in order to allow deletion to proceed for a few cases involving managed pods. @Scott, the playbook could be updated to run drain with --force and a --timeout 1. https://github.com/kubernetes/kubernetes/blob/master/pkg/kubectl/cmd/drain.go#L166-L167
This was delivered in 3.9 GA https://github.com/openshift/openshift-ansible/pull/5080 https://trello.com/c/MSD4BNm9/580-3-node-upgrade-improvements
Fixed. openshift-ansible-3.9.14-1.git.3.c62bc34.el7.noarch.rpm This is already shipped. Docs about this: https://docs.openshift.com/container-platform/3.9/upgrading/automated_upgrades.html#customizing-node-upgrades The openshift_upgrade_nodes_drain_timeout variable allows you to specify the length of time to wait before giving up.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2018:2013