Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1425583

Summary: Install should fail for unsupported docker version on atomic host
Product: OpenShift Container Platform Reporter: Vikas Laad <vlaad>
Component: InstallerAssignee: Steve Milner <smilner>
Status: CLOSED ERRATA QA Contact: Vikas Laad <vlaad>
Severity: medium Docs Contact:
Priority: high    
Version: 3.5.0CC: aos-bugs, dma, jokerman, mifiedle, mmccomas, pmorie, pweil, vlaad, wmeng
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Cause: On older atomic host instances there can be an out of date version of docker which is not supported. Consequence: Install would finish but pods would be unusable. Fix: Check for old unsupported version of docker when using atomic host. If an old version is found, halt the install and notify the user. Result: The install stops and the user is notified of what needs to happen.
Story Points: ---
Clone Of: 1424629 Environment:
Last Closed: 2017-04-25 17:42:18 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: 1424629    
Bug Blocks:    

Description Vikas Laad 2017-02-21 19:08:14 UTC
+++ This bug was initially created as a clone of Bug #1424629 +++

Description of problem:
Install should fail for unsupported docker version on atomic host

Version-Release number of selected component (if applicable):
openshift v3.5.0.31-1+d55d08f
kubernetes v1.5.2+43a9be4
etcd 3.1.0

How reproducible:
Always

Steps to Reproduce:
1. Create atomic host OCP env
2. after running openshift-ansible paybook see the pods

-bash-4.2# oc get pods -n default
NAME                        READY     STATUS              RESTARTS   AGE
docker-registry-7-deploy    0/1       ContainerCreating   0          16m
registry-console-1-deploy   0/1       ContainerCreating   0          16m
router-1-deploy             0/1       ContainerCreating   0          17m

Failed events from registry pod
  21m		13s		98	{kubelet ip-172-31-56-82.us-west-2.compute.internal}			Warning		FailedSync	Error syncing pod, skipping: failed to "StartContainer" for "POD" with RunContainerError: "runContainer: Error response from daemon: Invalid --security-opt: \"label=level:s0:c1,c0\""

Failed events from router pod
  23m		13s		107	{kubelet ip-172-31-56-82.us-west-2.compute.internal}			Warning		FailedSync	Error syncing pod, skipping: failed to "StartContainer" for "POD" with RunContainerError: "runContainer: Error response from daemon: Invalid --security-opt: \"label=level:s0:c1,c0\""

Actual results:
Registry and Router in stuck in ContainerCreating

Expected results:
Install should fail complaining unsupported docker installed.

Additional info:

--- Additional comment from DeShuai Ma on 2017-02-20 08:38:31 EST ---

what's the docker version?
FYI: https://github.com/openshift/origin/pull/12831#issuecomment-280329639

--- Additional comment from Vikas Laad on 2017-02-20 09:38:17 EST ---

-bash-4.2# docker version
Client:
 Version:         1.10.3
 API version:     1.22
 Package version: docker-common-1.10.3-44.el7.x86_64
 Go version:      go1.4.2
 Git commit:      7ffc8ee-unsupported
 Built:           Fri Jun 17 15:27:21 2016
 OS/Arch:         linux/amd64

Server:
 Version:         1.10.3
 API version:     1.22
 Package version: docker-common-1.10.3-44.el7.x86_64
 Go version:      go1.4.2
 Git commit:      7ffc8ee-unsupported
 Built:           Fri Jun 17 15:27:21 2016
 OS/Arch:         linux/amd64

--- Additional comment from Paul Weil on 2017-02-20 11:17:38 EST ---

docker 1.12 is a minimum requirement for 3.5  and should not suffer from this issue.  Also, please note that this was fixed upstream in https://github.com/kubernetes/kubernetes/pull/40946 with a version checking method that can set the separator correctly.  We should get that into OpenShift.

--- Additional comment from Paul Morie on 2017-02-20 16:31:55 EST ---

The issue is that an unsupported docker is being used; use docker 1.12

Comment 1 Steve Milner 2017-02-23 16:34:04 UTC
Vikas,

Can you provide the version (or git revision) of openshift-ansible you used, as well as any relevant configuration settings?

Comment 2 Vikas Laad 2017-02-23 16:39:00 UTC
I used latest openshift ansible the day I created this bug, also what specific configuration are you looking for? I will try to find the inv file and provide you.

Comment 3 Steve Milner 2017-02-23 17:40:33 UTC
"Latest version" as in git head?

Really anything. I just want to make sure I follow the path you hit.

Comment 6 Steve Milner 2017-02-24 14:59:24 UTC
Work being done in https://github.com/openshift/openshift-ansible/pull/3475

Comment 7 Steve Milner 2017-03-02 16:42:40 UTC
PR merged.

Comment 10 Vikas Laad 2017-03-03 15:18:53 UTC
Looks like our Jenkins was still running the old code, here is the latest output.

TASK [openshift_facts : assert] ************************************************
Friday 03 March 2017  15:10:13 +0000 (0:00:01.953)       0:00:11.570 ********** 
fatal: [ec2-54-144-35-228.compute-1.amazonaws.com]: FAILED! => {
    "assertion": "l_atomic_docker_version.stdout | replace('\"', '') | version_compare('1.12','>=')", 
    "changed": false, 
    "evaluated_to": false, 
    "failed": true
}

MSG:

Installation on Atomic Host requires Docker 1.12 or later. Please upgrade and restart the Atomic Host.

Comment 12 errata-xmlrpc 2017-04-25 17:42:18 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-2017:1140