Bug 1523681

Summary: CNS installation fails when openshift_storage_glusterfs_wipe=true
Product: OpenShift Container Platform Reporter: Jiří Mencák <jmencak>
Component: InstallerAssignee: Jose A. Rivera <jarrpa>
Status: CLOSED ERRATA QA Contact: Wenkai Shi <weshi>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 3.7.0CC: aos-bugs, jokerman, mmccomas, rspazzol, weshi
Target Milestone: ---   
Target Release: 3.9.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: aos-scalability-37
Fixed In Version: Doc Type: No Doc Update
Doc Text:
undefined
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-03-28 14:14:24 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jiří Mencák 2017-12-08 15:32:54 UTC
Description of problem:
In certain cases CNS installation can fail when openshift_storage_glusterfs_wipe variable is set.

Version-Release number of selected component (if applicable):
[cloud-user@ansible-host openshift-ansible]$ git describe
openshift-ansible-3.7.14-1-2-g9349b3b

How reproducible:
Always on an openstack system provisioned by openshift-ansible-contrib.

Steps to Reproduce:
1. Install a openshift on OpenStack with openshift-ansible-contrib and set openshift_storage_glusterfs_wipe=true

TASK [openshift_storage_glusterfs : Unlabel any existing GlusterFS nodes] *********************************************************************************************************************
task path: /home/cloud-user/openshift-ansible/roles/openshift_storage_glusterfs/tasks/glusterfs_deploy.yml:19
fatal: [master-1.scale-ci.example.com]: FAILED! => {"failed": true, "msg": "the field 'args' has an invalid value, which appears to include a variable that is undefined. The error was: 'dict object' has no attribute 'openshift'\n\nThe error appears to have been in '/home/cloud-user/openshift-ansible/roles/openshift_storage_glusterfs/tasks/glusterfs_deploy.yml': line 19, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: Unlabel any existing GlusterFS nodes\n  ^ here\n"}
ok: [master-1.scale-ci.example.com] => (item=lb-0.scale-ci.example.com) => {"changed": false, "item": "lb-0.scale-ci.example.com", "state": "absent"}
        to retry, use: --limit @/home/cloud-user/openshift-ansible/playbooks/byo/openshift-glusterfs/config.retry

Expected results:
Successful instalation.

Additional info:
The issue seems to be a missing check in "roles/openshift_storage_glusterfs/tasks/glusterfs_deploy.yml"

when: glusterfs_wipe

should be changed to

when: "'openshift' in hostvars[item] and glusterfs_wipe"

Fix tested and works fine.  Will create a PR that fixes this.

Comment 1 Jiří Mencák 2017-12-08 15:41:50 UTC
PR that fixes this: https://github.com/openshift/openshift-ansible/pull/6402

Comment 2 Jiří Mencák 2017-12-11 21:25:20 UTC
PR6402 merged.

Comment 3 Wenkai Shi 2017-12-26 06:21:11 UTC
*** Bug 1528688 has been marked as a duplicate of this bug. ***

Comment 4 Wenkai Shi 2017-12-26 06:22:24 UTC
According to document[1]. Seems these block devices must be bare (e.g. have no data, not be marked as LVM PVs), and will be formatted.

[1]. https://github.com/openshift/openshift-ansible/blob/master/inventory/hosts.glusterfs.native.example#L45-L46

But, from attached log, looks like code of the task has issue.

Comment 7 Wenkai Shi 2018-01-16 05:31:53 UTC
Verified with version openshift-ansible-3.9.0-0.19.0.git.0.de168fd.el7, code merged, installer could pass the TASK when set openshift_storage_glusterfs_wipe=true.

Comment 10 errata-xmlrpc 2018-03-28 14:14:24 UTC
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/RHBA-2018:0489