Bug 1490304

Summary: Etcd scale-up playbook should add new member to etcdClientInfo of master-config.yaml
Product: OpenShift Container Platform Reporter: Gaoyun Pei <gpei>
Component: InstallerAssignee: Andrew Butcher <abutcher>
Status: CLOSED ERRATA QA Contact: Gaoyun Pei <gpei>
Severity: medium Docs Contact:
Priority: low    
Version: 3.7.0CC: aos-bugs, jokerman, mmccomas
Target Milestone: ---   
Target Release: 3.7.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Previously, scaling up etcd with playbooks/byo/openshift-etcd/scaleup.yml would not update master configuration in order to add new etcd hosts. New etcd hosts are now added to master configuration by the etcd scaleup playbook. Note that master services will be restarted serially when this occurs.
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-11-28 22:09:56 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 Gaoyun Pei 2017-09-11 09:52:05 UTC
Description of problem:
Etcd scale-up playbook didn't add the url of new etcd members into etcdClientInfo.urls in /etc/origin/master/master-config.yaml on masters.


Version-Release number of the following components:
openshift-ansible-3.7.0-0.125.0.git.0.91043b6.el7.noarch
ansible-2.3.2.0-2.el7.noarch

How reproducible:
Always


Steps to Reproduce:
1.Add new OSEv3 children group "new_etcd" and new host in group "new_etcd" in ansible inventory file, run etcd scale up playbook. 

#ansible-playbook -i host /usr/share/ansible/openshift-ansible/playbooks/byo/openshift-etcd/scaleup.yml


2.After playbook finished, check master's config yaml file
New etcd members were not added in etcdClientInfo


Actual results:


Expected results:


Additional info:

Comment 1 Scott Dodson 2017-09-11 18:17:32 UTC
Thanks, as long as the existing members defined in /etc/origin/master/master-config.yaml work then the client should pick up the additional members. However we should definitely fix this.

Comment 3 openshift-github-bot 2017-09-14 18:52:40 UTC
Commit pushed to master at https://github.com/openshift/openshift-ansible

https://github.com/openshift/openshift-ansible/commit/4b728ee84b2c0b52a9c8dbf96d04f1bccc5c51e3
Merge pull request #5367 from abutcher/etcd-scaleup-master-client-urls

Bug 1490304: Etcd scale-up playbook should add new member to etcdClientInfo of master-config.yaml

Comment 4 Gaoyun Pei 2017-09-22 13:40:16 UTC
Test this bug with openshift-ansible-3.7.0-0.127.0.git.0.b9941e4.el7.noarch.rpm.

New etcd members were not added into etcdClientInfo.urls of master-config.yaml after the etcd scale-up playbook finished, the log shows:

PLAY [Update master etcd client urls] ******************************************

TASK [Gathering Facts] *********************************************************
ok: [qe-17-qarc-master-1.0922-ti4.qe.rhcloud.com]

TASK [openshift_master : yedit] ************************************************
ok: [qe-17-qarc-master-1.0922-ti4.qe.rhcloud.com] => {"changed": false, "failed": false, "result": [], "state": "present"}

Comment 7 Gaoyun Pei 2017-10-19 07:15:13 UTC
Verify this bug with openshift-ansible-3.7.0-0.161.0.git.0.2ca2c69.el7.noarch.rpm

New etcd members were added into etcdClientInfo.urls of master-config.yaml after the etcd scale-up playbook finished.

TASK [openshift_master : yedit] ************************************************
changed: [qe-15446-3uoog-master-etcd-1.1019-kv5.qe.rhcloud.com] => {"changed": true, "failed": false,
...

RUNNING HANDLER [openshift_master : restart master api] ************************
...

RUNNING HANDLER [openshift_master : restart master controllers] ****************
...

RUNNING HANDLER [openshift_master : Verify API Server] *************************
...

Comment 11 errata-xmlrpc 2017-11-28 22:09:56 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/RHSA-2017:3188