Bug 1694960

Summary: OCS upgrade playbook does not update the multipath.conf file after server node upgrades
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Ashmitha Ambastha <asambast>
Component: cns-ansibleAssignee: John Mulligan <jmulligan>
Status: CLOSED CURRENTRELEASE QA Contact: Aditya Ramteke <aramteke>
Severity: high Docs Contact:
Priority: unspecified    
Version: ocs-3.11CC: aramteke, hchiramm, jarrpa, jmulligan, knarra, kramdoss, madam, nigoyal, pprakash, puebele, rhs-bugs, rtalur, sarumuga
Target Milestone: ---Keywords: ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openshift-ansible-3.11.116 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-11-17 12:01:20 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:
Bug Depends On:    
Bug Blocks: 1703695    

Description Ashmitha Ambastha 2019-04-02 07:34:10 UTC
Description of problem:
The OCS upgrade playbook misses updating the multipath.conf file. 
As part of OCS upgrades, we must update the multipath.conf file after all the server nodes are upgraded. Once updating the multipath.conf file is successful, we should start and reload multipathd.

file to be updated: /etc/multipath.conf
------- below snippet as per the 3.11 doc ---------- 

# cat >> /etc/multipath.conf <<EOF
# LIO iSCSI
devices {
        device {
                vendor "LIO-ORG"
                user_friendly_names "yes" # names like mpatha
                path_grouping_policy "failover" # one path per group
                hardware_handler "1 alua"
                path_selector "round-robin 0"
                failback immediate
                path_checker "tur"
                prio "alua"
                no_path_retry 120
        }
}
EOF

---------- /End of Snippet ----------------------
Version-Release number of selected component (if applicable): All OCS versions

Actual results: The OCS upgrade playbook misses updating multipath.conf file after server nodes are upgraded. 

Expected results: The OCS upgrade playbook should update the multipath.conf file after server nodes are upgraded and then start and reload multipathd

Comment 3 Jose A. Rivera 2019-04-17 16:34:14 UTC
PR is upstream: https://github.com/openshift/openshift-ansible/pull/11515

Comment 4 Jose A. Rivera 2019-04-23 14:27:14 UTC
PR is merged.

Comment 5 RamaKasturi 2019-04-27 17:00:23 UTC
Hello Jose,

   Can you please update the FIV for this bug ?

Thanks
kasturi

Comment 9 RamaKasturi 2019-04-29 14:09:01 UTC
FIV - Fixed In version.

Can you update the ansible package which has this bug fixed,  in Fixed In Version of the Bugzilla field.

Comment 12 Jose A. Rivera 2019-05-14 14:27:27 UTC
New PR is upstream: https://github.com/openshift/openshift-ansible/pull/11609

Comment 13 Jose A. Rivera 2019-05-14 17:34:40 UTC
PR is merged. Fix will be available in the next build which should be tonight.

Comment 20 Saravanakumar 2019-07-25 13:56:16 UTC
To verify:

As part of upgrade, a new section for device with vendor value as "LIO-ORG" will be added. 

You can check /etc/multipath.conf before upgrade and ensure "LIO-ORG" added after upgrade. 

Refer:
https://github.com/openshift/openshift-ansible/blob/release-3.11/roles/openshift_node/tasks/storage_plugin_iscsi.yml#L59 
          device {
                    vendor "LIO-ORG"
                    product "TCMU device"
                    user_friendly_names "yes"
                    path_grouping_policy "failover"
                    path_selector "round-robin 0"
                    failback immediate
                    path_checker "tur"
                    prio "alua"
                    hardware_handler "1 alua"
                    no_path_retry 120
                    rr_weight "uniform"
          }

Comment 22 Nitin Goyal 2019-07-29 10:21:38 UTC
Confirming the same as Ashmitha wrote in comment 21, That we should verify the values of prio etc.

Comment 23 Saravanakumar 2019-07-29 10:37:20 UTC
(In reply to Nitin Goyal from comment #22)
> Confirming the same as Ashmitha wrote in comment 21, That we should verify
> the values of prio etc.

I think there is some miscommunication here. 

Updating new section for having gluster-block configured is the main bz here.(Ref comment #0)


There are many different values here as part of device (like prio, rr_weight, no_path_retry etc.,).
It is not possible to check for all the different values present as part of device section.

The original PR posted by Jose is to include this task(iscsi.yml) as part of upgrade playbook:

Refer:
https://github.com/openshift/openshift-ansible/pull/11515/files#diff-d4673ae0996f46748c28b94ecdb4169dR13
  from https://github.com/openshift/openshift-ansible/pull/11515