Bug 1640014 - etcdctl2&etcdctl3 is deprecated commands
Summary: etcdctl2&etcdctl3 is deprecated commands
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Installer
Version: 3.10.0
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
: 3.10.z
Assignee: Scott Dodson
QA Contact: ge liu
Depends On: 1610166
TreeView+ depends on / blocked
Reported: 2018-10-17 07:09 UTC by ge liu
Modified: 2019-01-10 09:27 UTC (History)
11 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
The etcd helper functions `etcdctl2` and `etcdctl3` were broken during the upgrade to 3.10. These scripts have been updated to work properly when etcd is running inside a static pod restoring normal function.
Clone Of: 1610166
Last Closed: 2019-01-10 09:27:10 UTC
Target Upstream Version:

Attachments (Terms of Use)

System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2018:2578 None None None 2018-10-17 07:09:15 UTC
Red Hat Product Errata RHBA-2019:0026 None None None 2019-01-10 09:27:16 UTC

Comment 1 ge liu 2018-10-17 07:14:06 UTC
@sdodson, I found the 'etcdctl2'&'etcdctl3' still exists in 3.10, but 'etcdctl' doesn't work in 3.10, but in 3.11, it work as expected that 'etcdctl2&etcdctl3' deprecated, and etcdctl works well.

my 3.10 version:
openshift v3.10.57
kubernetes v1.10.0+b81c8f8

Comment 2 Scott Dodson 2018-10-22 12:38:07 UTC
(In reply to ge liu from comment #1)
> @sdodson, I found the 'etcdctl2'&'etcdctl3' still exists in 3.10, but
> 'etcdctl' doesn't work in 3.10, but in 3.11, it work as expected that
> 'etcdctl2&etcdctl3' deprecated, and etcdctl works well.
> my 3.10 version:
> openshift v3.10.57
> kubernetes v1.10.0+b81c8f8

The two bash functions are etcdctl2 and etcdctl3 which specify flags for etcd v2 and v3 which are different. If those two commands work then that seems like what I'd expect. We've never deployed an alias for `etcdctl`.

Comment 3 ge liu 2018-10-23 06:01:45 UTC
@sdodson, It still ambiguous to me, and what i know is 'etcdctl' works in 3.11 at master server, but doesn't work in 310's master server, and this will bring some problems like below:

Etcd backup/restore:

we may use etcdctl3 to do etcd bakcup, then we remove etcd.yaml and rm -rf '/var/lib/etcd', then we try to do etcd restore, but etcdctl3 command is not work, so we can only reinstall etcdctl command tools to do etcd restore.

and compare to 3.11,

we do etcd backup with etcdctl command, then we remove etcd.yaml and rm -rf '/var/lib/etcd', and etcdctl command still work for etcd restore.

so the difference between 310 and 311 will bring problems to us.

Comment 4 Russell Teague 2018-11-20 20:19:35 UTC
https://github.com/openshift/openshift-ansible/pull/9757 3.10 backport

Fixed in openshift-ansible-3.10.36-1

Comment 5 ge liu 2018-11-21 02:38:41 UTC
Fail to verify on:
oc v3.10.79
kubernetes v1.10.0+b81c8f8
features: Basic-Auth GSSAPI Kerberos SPNEGO

# etcdctl
bash: etcdctl: command not found

Comment 6 Scott Dodson 2018-11-21 03:13:27 UTC
Only etcdctl2 and etcdctl3 bash functions are expected to work. These will execute insider the pod.

Comment 7 ge liu 2018-11-21 04:09:38 UTC
@sdodson, regarding to Comment 5, if etcdctl only work inside pod, the etcd restore process could not be executed because etcd pod be destroyed. Is it work as design?

[root@qe-geliu310master-etcd-1 master]# etcdctl3
Component etcd is stopped or not running
[root@qe-geliu310master-etcd-1 master]# etcdctl
bash: etcdctl: command not found
[root@qe-geliu310master-etcd-1 master]#

Comment 8 Scott Dodson 2018-11-26 19:50:41 UTC
I've not kept up with the latest on the restore process. These commands will definitely fail if the etcd pod is not running or otherwise crash looping. I'm not sure what we can do about that.

Comment 9 ge liu 2018-11-27 03:21:39 UTC
As my personal feeling, 3.11's design is make sense, could it possible do same with 3.11?

Comment 10 ge liu 2018-12-05 02:03:08 UTC
According to comment 6, close this bug.

Comment 12 errata-xmlrpc 2019-01-10 09:27:10 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.


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