Bug 1639427 - OCS uninstall removes /var/log/glusterfs folder instead of clearing the contents of the same folder
Summary: OCS uninstall removes /var/log/glusterfs folder instead of clearing the conte...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Installer
Version: 3.11.0
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ---
: 3.11.z
Assignee: Jose A. Rivera
QA Contact: Ashmitha Ambastha
URL:
Whiteboard:
Depends On:
Blocks: 1639431
TreeView+ depends on / blocked
 
Reported: 2018-10-15 17:08 UTC by Neha Berry
Modified: 2019-06-26 09:08 UTC (History)
10 users (show)

Fixed In Version: openshift-ansible-3.11.111-1
Doc Type: No Doc Update
Doc Text:
Clone Of:
: 1639431 (view as bug list)
Environment:
Last Closed: 2019-06-26 09:07:51 UTC
Target Upstream Version:
Embargoed:
knarra: needinfo-


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2019:1605 0 None None None 2019-06-26 09:07:59 UTC

Description Neha Berry 2018-10-15 17:08:00 UTC
Description of problem:
------------------------

As part of OCP deploy_cluster.yml, gluster-client packages are installed on all the OCP nodes, thereby creating a /var/log/glusterfs folder by default. This folder is needed for the OCP nodes to keep serving as gluster client nodes.

As part of OCS uninstall, it is seen that the entire :/var/log/glusterfs" directory is removed, instead of clearing up the contents of /var/log/glusterfs/ folder. 


Impact:
===========
In rare cases when we uninstall OCS and then select some other node for new OCS install, the previous nodes do not have the /var/log/glusterfs folder. Hence, if a user forgets to re-create this folder, the node could not be used for mounting any gluster-backed app pod.

Hence, wanted to confirm if, instead of deleting the complete glusterfs folder, clearing the contents of the folder could have been a better solution?



After uninstall of OCS:
+++++++++++++++++++++++++++

# ls /var/log/glusterfs
ls: cannot access /var/log/glusterfs: No such file or directory


The folder remains intact on non-OCS OCP nodes.


Version-Release number of the following components:

# rpm -q openshift-ansible
openshift-ansible-3.11.16-1.git.0.4ac6f81.el7.noarch

# rpm -q ansible
ansible-2.6.4-1.el7ae.noarch

# ansible --version
ansible 2.6.4
  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 31 2018, 09:41:32) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]

# oc version
oc v3.11.16
kubernetes v1.11.0+d4cacc0
features: Basic-Auth GSSAPI Kerberos SPNEGO

Server https://dhcp47-135.lab.eng.blr.redhat.com:8443
openshift v3.11.16
kubernetes v1.11.0+d4cacc0

# rpm -qa|grep openshift
openshift-ansible-roles-3.11.16-1.git.0.4ac6f81.el7.noarch
atomic-openshift-docker-excluder-3.11.16-1.git.0.b48b8f8.el7.noarch
atomic-openshift-3.11.16-1.git.0.b48b8f8.el7.x86_64
openshift-ansible-playbooks-3.11.16-1.git.0.4ac6f81.el7.noarch
openshift-ansible-3.11.16-1.git.0.4ac6f81.el7.noarch
atomic-openshift-clients-3.11.16-1.git.0.b48b8f8.el7.x86_64
openshift-ansible-docs-3.11.16-1.git.0.4ac6f81.el7.noarch
atomic-openshift-excluder-3.11.16-1.git.0.b48b8f8.el7.noarch
atomic-openshift-hyperkube-3.11.16-1.git.0.b48b8f8.el7.x86_64
atomic-openshift-node-3.11.16-1.git.0.b48b8f8.el7.x86_64


How reproducible:

Always

Steps to Reproduce:
1. Install OCP using deploy_cluster playbook. Check for presence of /var/log/glusterfs folder. Check for glusterfs-client versions

2. Install OCS and 
3. Uninstall OCS and check for the folder.

Actual results:
++++++++++++++++

# rpm -q openshift-ansible
openshift-ansible-3.11.16-1.git.0.4ac6f81.el7.noarch

# rpm -q ansible
ansible-2.6.4-1.el7ae.noarch

# ansible --version
ansible 2.6.4
  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 31 2018, 09:41:32) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]

# oc version
oc v3.11.16
kubernetes v1.11.0+d4cacc0
features: Basic-Auth GSSAPI Kerberos SPNEGO

Server https://dhcp47-135.lab.eng.blr.redhat.com:8443
openshift v3.11.16
kubernetes v1.11.0+d4cacc0

# rpm -qa|grep openshift
openshift-ansible-roles-3.11.16-1.git.0.4ac6f81.el7.noarch
atomic-openshift-docker-excluder-3.11.16-1.git.0.b48b8f8.el7.noarch
atomic-openshift-3.11.16-1.git.0.b48b8f8.el7.x86_64
openshift-ansible-playbooks-3.11.16-1.git.0.4ac6f81.el7.noarch
openshift-ansible-3.11.16-1.git.0.4ac6f81.el7.noarch
atomic-openshift-clients-3.11.16-1.git.0.b48b8f8.el7.x86_64
openshift-ansible-docs-3.11.16-1.git.0.4ac6f81.el7.noarch
atomic-openshift-excluder-3.11.16-1.git.0.b48b8f8.el7.noarch
atomic-openshift-hyperkube-3.11.16-1.git.0.b48b8f8.el7.x86_64
atomic-openshift-node-3.11.16-1.git.0.b48b8f8.el7.x86_64


Expected results:
------------------

Since the folder is needed for gluster-client mount, it would be better to keep the folder intact even after OCS uninstall.


Additional info:
Please attach logs from ansible-playbook with the -vvv flag

Comment 2 Neha Berry 2018-10-15 17:12:47 UTC
(In reply to Neha Berry from comment #0)
> Description of problem:
> ------------------------
> 
> As part of OCP deploy_cluster.yml, gluster-client packages are installed on
> all the OCP nodes, thereby creating a /var/log/glusterfs folder by default.
> This folder is needed for the OCP nodes to keep serving as gluster client
> nodes.
> 
> As part of OCS uninstall, it is seen that the entire :/var/log/glusterfs"
> directory is removed, instead of clearing up the contents of
> /var/log/glusterfs/ folder. 
> 
> 
> Impact:
> ===========
> In rare cases when we uninstall OCS and then select some other node for new
> OCS install, the previous nodes do not have the /var/log/glusterfs folder.
> Hence, if a user forgets to re-create this folder, the node could not be
> used for mounting any gluster-backed app pod.
> 
> Hence, wanted to confirm if, instead of deleting the complete glusterfs
> folder, clearing the contents of the folder could have been a better
> solution?
> 
> 
> 
> After uninstall of OCS:
> +++++++++++++++++++++++++++
> 
> # ls /var/log/glusterfs
> ls: cannot access /var/log/glusterfs: No such file or directory
> 
> 
> The folder remains intact on non-OCS OCP nodes.
> 
> 
> Version-Release number of the following components:
> 
> # rpm -q openshift-ansible
> openshift-ansible-3.11.16-1.git.0.4ac6f81.el7.noarch
> 
> # rpm -q ansible
> ansible-2.6.4-1.el7ae.noarch
> 
> # ansible --version
> ansible 2.6.4
>   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 31 2018, 09:41:32) [GCC 4.8.5
> 20150623 (Red Hat 4.8.5-28)]
> 
> # oc version
> oc v3.11.16
> kubernetes v1.11.0+d4cacc0
> features: Basic-Auth GSSAPI Kerberos SPNEGO
> 
> Server https://dhcp47-135.lab.eng.blr.redhat.com:8443
> openshift v3.11.16
> kubernetes v1.11.0+d4cacc0
> 
> # rpm -qa|grep openshift
> openshift-ansible-roles-3.11.16-1.git.0.4ac6f81.el7.noarch
> atomic-openshift-docker-excluder-3.11.16-1.git.0.b48b8f8.el7.noarch
> atomic-openshift-3.11.16-1.git.0.b48b8f8.el7.x86_64
> openshift-ansible-playbooks-3.11.16-1.git.0.4ac6f81.el7.noarch
> openshift-ansible-3.11.16-1.git.0.4ac6f81.el7.noarch
> atomic-openshift-clients-3.11.16-1.git.0.b48b8f8.el7.x86_64
> openshift-ansible-docs-3.11.16-1.git.0.4ac6f81.el7.noarch
> atomic-openshift-excluder-3.11.16-1.git.0.b48b8f8.el7.noarch
> atomic-openshift-hyperkube-3.11.16-1.git.0.b48b8f8.el7.x86_64
> atomic-openshift-node-3.11.16-1.git.0.b48b8f8.el7.x86_64
> 
> 
> How reproducible:
> 
> Always
> 
> Steps to Reproduce:
> 1. Install OCP using deploy_cluster playbook. Check for presence of
> /var/log/glusterfs folder. Check for glusterfs-client versions
> 
> 2. Install OCS and 
> 3. Uninstall OCS and check for the folder.
> 
> Actual results:
> ++++++++++++++++
> 
> # rpm -q openshift-ansible
> openshift-ansible-3.11.16-1.git.0.4ac6f81.el7.noarch
> 
> # rpm -q ansible
> ansible-2.6.4-1.el7ae.noarch
> 
> # ansible --version
> ansible 2.6.4
>   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 31 2018, 09:41:32) [GCC 4.8.5
> 20150623 (Red Hat 4.8.5-28)]
> 
> # oc version
> oc v3.11.16
> kubernetes v1.11.0+d4cacc0
> features: Basic-Auth GSSAPI Kerberos SPNEGO
> 
> Server https://dhcp47-135.lab.eng.blr.redhat.com:8443
> openshift v3.11.16
> kubernetes v1.11.0+d4cacc0
> 
> # rpm -qa|grep openshift
> openshift-ansible-roles-3.11.16-1.git.0.4ac6f81.el7.noarch
> atomic-openshift-docker-excluder-3.11.16-1.git.0.b48b8f8.el7.noarch
> atomic-openshift-3.11.16-1.git.0.b48b8f8.el7.x86_64
> openshift-ansible-playbooks-3.11.16-1.git.0.4ac6f81.el7.noarch
> openshift-ansible-3.11.16-1.git.0.4ac6f81.el7.noarch
> atomic-openshift-clients-3.11.16-1.git.0.b48b8f8.el7.x86_64
> openshift-ansible-docs-3.11.16-1.git.0.4ac6f81.el7.noarch
> atomic-openshift-excluder-3.11.16-1.git.0.b48b8f8.el7.noarch
> atomic-openshift-hyperkube-3.11.16-1.git.0.b48b8f8.el7.x86_64
> atomic-openshift-node-3.11.16-1.git.0.b48b8f8.el7.x86_64
> 
> 
> Expected results:
> ------------------
> 
> Since the folder is needed for gluster-client mount, it would be better to
> keep the folder intact even after OCS uninstall.
> 
> 
> Additional info:
> Please attach logs from ansible-playbook with the -vvv flag


Please ignore the Actual Results section , Version details were copied again mistakenly.


Actual Results:
--------------

The entire folder is deleted.

After uninstall of OCS:
# ls /var/log/glusterfs
ls: cannot access /var/log/glusterfs: No such file or directory

The folder is intact on non-OCS  OCP nodes

Comment 4 Jose A. Rivera 2019-02-07 14:56:40 UTC
PR submitted: https://github.com/openshift/openshift-ansible/pull/11138

Comment 5 Jose A. Rivera 2019-04-10 14:55:48 UTC
PR merged. Moving to ON_QA.

Comment 6 Jose A. Rivera 2019-04-10 15:35:12 UTC
Sorry, I was thinking of the wrong product. Moving to modified.

Comment 24 errata-xmlrpc 2019-06-26 09:07:51 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-2019:1605


Note You need to log in before you can comment on or make changes to this bug.