Bug 1348324

Summary: Need 3.2 to 3.1 downgrade instructions
Product: OpenShift Container Platform Reporter: Richard Foyle <rfoyle>
Component: DocumentationAssignee: Alex Dellapenta <adellape>
Status: CLOSED CURRENTRELEASE QA Contact: Anping Li <anli>
Severity: medium Docs Contact: Vikram Goyal <vigoyal>
Priority: unspecified    
Version: 3.2.0CC: adellape, anli, aos-bugs, dgoodwin, jokerman, mmccomas, stwalter
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-08 17:45:05 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 Richard Foyle 2016-06-20 20:01:37 UTC
Description of problem: the documentation for 3.2 has outdated instructions for downgrade at https://docs.openshift.com/enterprise/3.2/install_config/downgrade.html


Version-Release number of selected component (if applicable): 3.2


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info: The documentation needs to have QE test the downgrade procedure. The document states: 	
This procedure is only intended for downgrades from OpenShift Enterprise 3.1 to 3.0. The procedure will be updated in a later revision for the OpenShift Enterprise 3.2 to 3.1 downgrade path.

Comment 2 Richard Foyle 2016-06-20 21:10:26 UTC
*** Bug 1348323 has been marked as a duplicate of this bug. ***

Comment 4 Richard Foyle 2016-06-23 16:59:41 UTC
Customer used rpm method for installation.

Comment 5 Alex Dellapenta 2016-06-24 17:59:16 UTC
I spoke with Devan (Eng) offline; the procedure should be valid for 3.2 to 3.1 downgrades for RPM-based installations. We did not write a containerized downgrade procedure previously because 3.0 did not support containerized, so that would have to be new docs for containerized downgrade of 3.2 -> 3.1. In the meantime, we can update for just the RPM-based procedure.

Worked with Devan to update the steps, and I tested it out w/ the embedded etcd path; it seemed to work fine. I haven't tested the external etcd path.

PR is here:

https://github.com/openshift/openshift-docs/pull/2351

Preview build is here (internal):

http://file.rdu.redhat.com/~adellape/062416/downgrade32/install_config/downgrade.html

@anli - Can you QE the above preview build as you did originally for 3.1 to 3.0 in https://trello.com/c/6VqWWpm8, this time for 3.2 to 3.1? And if you're able, would you be able to provide an estimate on how long it might take for you to get to?

Thanks!

Comment 6 Alex Dellapenta 2016-06-24 23:35:29 UTC
Just noticed the above PR/build doesn't include downgrading back to Docker 1.8.2 from 1.9.1.

Comment 7 Anping Li 2016-06-27 10:15:06 UTC
@alex, Yes, we need docker downgrade part. Depend on customer, it should be 1.10 to docker 1.8 or docker 1.9 to docker 1.8. 
For other part, the procedure has no changes.

Comment 8 Richard Foyle 2016-06-29 16:00:22 UTC
Can we get an ETA in terms of testing the procedure and update to the documented steps? The customer is looking to get the new version in production to deal with instability.

Comment 9 Alex Dellapenta 2016-06-30 21:07:35 UTC
Anping, can you QE the Docker downgrade steps that I wrote in the following KBase article?

https://access.redhat.com/solutions/2214221

Look for the following heading specifically, under the Resolution section:

"If I updated to Docker 1.9+, how can I downgrade to 1.8.2?"

If you verify those steps, I can add those to my 3.2 -> 3.1 downgrade topic/PR, substituting in the following for the yum swap command:

# yum swap docker-* docker-*1.9.1

I feel like the BZ here would then be satisfied, yes?

Comment 10 Alex Dellapenta 2016-06-30 21:09:39 UTC
(In reply to rfoyle from comment #8)
> Can we get an ETA in terms of testing the procedure and update to the
> documented steps? The customer is looking to get the new version in
> production to deal with instability.

I am able to get back to this in earnest tomorrow. If the BZ passes QE, I could have the docs updated by EOD Friday as well. Otherwise, it would more likely be next Tuesday (due to the upcoming holiday weekend).

Comment 11 Anping Li 2016-07-01 12:45:34 UTC
The docker downgrade works https://access.redhat.com/solutions/2214221 .

May be we still need to remove one option draw in y OSE 3.2.1
sed -i 's/ --log-driver=json-file --log-opt max-size=50m//' /etc/sysconfig/docker

Comment 12 Scott Dodson 2016-07-01 16:12:13 UTC
(In reply to Anping Li from comment #11)
> The docker downgrade works https://access.redhat.com/solutions/2214221 .
> 
> May be we still need to remove one option draw in y OSE 3.2.1
> sed -i 's/ --log-driver=json-file --log-opt max-size=50m//'
> /etc/sysconfig/docker

Those options work with docker-1.8.2 but I've asked the docker team if they're safe to use there or not. For now lets leave them as they are.

Comment 13 Anping Li 2016-07-04 00:38:33 UTC
@scott, agree.  I will move status to verified.

Comment 14 Alex Dellapenta 2016-07-06 21:21:00 UTC
Anping, I've now added the following to the doc:

- Docker downgrade steps
- Steps on backing up and restoring node-config.yaml
- A warning that this procedure assumes entire cluster downtime

Because the procedure involves entire cluster downtime (and includes a warning), the Docker downgrade steps no longer involve evacuating nodes.

So here is a new preview build:

http://file.rdu.redhat.com/~adellape/062416/downgrade32/install_config/downgrade.html

Can you verify the doc again? Then if it's all good, I'll publish. Thank you!

Comment 15 Anping Li 2016-07-07 09:53:06 UTC
Shall we add instructions for API Service and Controller service? if it was installed by openshift-ansible, the instructions are as following.

1) Shutting Down the Cluster
 For Native HA masters:
   systemctl stop atomic-openshift-master-api
   systemctl stop atomic-openshift-master-controllers

2) Bringing OpenShift Services Back Online

 For Native HA masters:
   systemctl enable atomic-openshift-master-api
   systemctl enable atomic-openshift-master-controllers
   systemctl start atomic-openshift-master-api
   systemctl start atomic-openshift-master-controllers

BTW:
/usr/lib/systemd/system/atomic-openshift-master-api.service 
/etc/sysconfig/atomic-openshift-master-api
/usr/lib/systemd/system/atomic-openshift-master-controller.service 
/etc/sysconfig/atomic-openshift-master-controller

The above configure file won't be removed by 'yum erase atomic-openshift-master', and only loglevel was changed during ugprade from v3.1 to v3.2. so we can re-use them without any change.

Comment 16 Anping Li 2016-07-07 10:22:18 UTC
#Adding Additional etcd Members
"member update 511b7fb6cc0001 https://172.18.1.18:2379" should be "member update 511b7fb6cc0001 https://172.18.1.18:2380"

Comment 17 Alex Dellapenta 2016-07-07 18:54:31 UTC
Thanks! PR and preview updated per suggestions/fixes:

http://file.rdu.redhat.com/~adellape/062416/downgrade32/install_config/downgrade.html

Comment 18 Anping Li 2016-07-08 01:38:51 UTC
Looks good to me.

Comment 19 openshift-github-bot 2016-07-08 15:50:38 UTC
Commit pushed to master at https://github.com/openshift/openshift-docs

https://github.com/openshift/openshift-docs/commit/4a7d41d74c09a2abd5e6198b480d2e03419318cf
Merge pull request #2351 from adellape/downgrade32

Bug 1348324: Update Downgrading topic for OSE 3.2 -> 3.1