Bug 1275166

Summary: Creating pod with FibreChannel show "unsupported volume type"
Product: OKD Reporter: Liang Xia <lxia>
Component: StorageAssignee: hchen
Status: CLOSED CURRENTRELEASE QA Contact: Liang Xia <lxia>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.xCC: aos-bugs, bchilds, hchen, lxia
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-23 21:15:19 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 Liang Xia 2015-10-26 08:02:36 UTC
Description of problem:
Trying to create a mysql pod which use FibreChannel, seem following error:
E1026 03:13:59.898107    7956 kubelet.go:1322] Unable to mount volumes for pod "mysql_default": unsupported volume type; skipping pod
E1026 03:13:59.900839    7956 pod_workers.go:113] Error syncing pod e56d39ef-7bb0-11e5-a188-0e415ce14591, skipping: unsupported volume type

Version-Release number of selected component (if applicable):
openshift v1.0.6-946-g5954394
kubernetes v1.2.0-alpha.1-1107-g4c8e6f4
etcd 2.1.2

How reproducible:
Always

Steps to Reproduce:
1.Setup an all-in-one server.
2.Change scc to allow bind to port 80
$ oc edit scc restricted
runAsUser:
  type: MustRunAsRange  <-- change to RunAsAny
seLinuxContext:
  type: MustRunAs
3.Create PV.
$ oc create -f examples/wordpress/fc/pv-1.yaml
$ oc create -f examples/wordpress/fc/pv-2.yaml
4.Create PVC.
$ oc create -f examples/wordpress/pvc-wp.yaml 
$ oc create -f examples/wordpress/pvc-mysql.yaml
5.Create pod.
$ oc create -f examples/wordpress/pod-mysql.yaml
6.Check pod.
$ oc get pods mysql
$ oc describe pods mysql

Actual results:
# oc get pods
NAME      READY     STATUS              RESTARTS   AGE
mysql     0/1       ContainerCreating   0          3s
[root@ip-172-18-14-116 tmp]# oc describe pods mysql
Name:                mysql
Namespace:            default
Image(s):            openshift/mysql-55-centos7
Node:                ip-172-18-14-116.ec2.internal/172.18.14.116
Start Time:            Mon, 26 Oct 2015 03:12:19 -0400
Labels:                name=mysql
Status:                Pending
Reason:                
Message:            
IP:                
Replication Controllers:    <none>
Containers:
  mysql:
    Container ID:    
    Image:        openshift/mysql-55-centos7
    Image ID:        
    QoS Tier:
      cpu:    Guaranteed
      memory:    BestEffort
    Limits:
      cpu:    500m
    Requests:
      cpu:        500m
    State:        Waiting
      Reason:        ContainerCreating
    Ready:        False
    Restart Count:    0
    Environment Variables:
      MYSQL_ROOT_PASSWORD:    yourpassword
      MYSQL_USER:        wp_user
      MYSQL_PASSWORD:        wp_pass
      MYSQL_DATABASE:        wp_db
Conditions:
  Type        Status
  Ready     False 
Volumes:
  mysql-persistent-storage:
    Type:    PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
    ClaimName:    claim-mysql
    ReadOnly:    false
  default-token-7knn2:
    Type:    Secret (a secret that should populate this volume)
    SecretName:    default-token-7knn2
Events:
  FirstSeen    LastSeen    Count    From                    SubobjectPath    Reason        Message
  ─────────    ────────    ─────    ────                    ─────────────    ──────        ───────
  8s        8s        1    {scheduler }                        Scheduled    Successfully assigned mysql to ip-172-18-14-116.ec2.internal
  8s        8s        1    {kubelet ip-172-18-14-116.ec2.internal}            FailedMount    Unable to mount volumes for pod "mysql_default": unsupported volume type
  8s        8s        1    {kubelet ip-172-18-14-116.ec2.internal}            FailedSync    Error syncing pod, skipping: unsupported volume type


Expected results:
Pod created successfully and running.

Additional info:
# tailf /root/openshift/run/openshift.log 
E1026 03:11:45.352012    7956 persistentvolume_claim_binder_controller.go:144] PVClaimBinder could not update claim claim-wp: Error updating volume: persistentvolumeclaims "claim-wp" cannot be updated: the object has been modified; please apply your changes to the latest version and try again
E1026 03:12:05.183956    7956 persistentvolume_claim_binder_controller.go:144] PVClaimBinder could not update claim claim-mysql: Error updating volume: persistentvolumeclaims "claim-mysql" cannot be updated: the object has been modified; please apply your changes to the latest version and try again
E1026 03:12:19.855831    7956 kubelet.go:1322] Unable to mount volumes for pod "mysql_default": unsupported volume type; skipping pod
E1026 03:12:19.859685    7956 pod_workers.go:113] Error syncing pod e56d39ef-7bb0-11e5-a188-0e415ce14591, skipping: unsupported volume type
E1026 03:12:29.858318    7956 kubelet.go:1322] Unable to mount volumes for pod "mysql_default": unsupported volume type; skipping pod
E1026 03:12:29.861809    7956 pod_workers.go:113] Error syncing pod e56d39ef-7bb0-11e5-a188-0e415ce14591, skipping: unsupported volume type
E1026 03:12:39.861321    7956 kubelet.go:1322] Unable to mount volumes for pod "mysql_default": unsupported volume type; skipping pod

Comment 1 hchen 2015-10-27 14:47:24 UTC
Fibre channel support landed on kubernetes v1.2.0-alpha.2. kubernetes v1.2.0-alpha.1-1107-g4c8e6f4 tested in your setup needs to be upgraded.

Please download it from https://github.com/kubernetes/kubernetes/releases/tag/v1.2.0-alpha.2

Comment 2 Liang Xia 2015-10-28 03:23:08 UTC
QE need to test Fibre Channel both in Kubernetes and OpenShift(origin and enterprise), this bug is used to track Fibre Channel in origin.

The current/latest origin build is:
openshift v1.0.6-997-gff3b522
kubernetes v1.2.0-alpha.1-1107-g4c8e6f4
etcd 2.1.2

So we will wait for origin's another rebase, then verify if it works or not.

Comment 3 Liang Xia 2015-11-04 06:10:02 UTC
Verified users can read/write to the mounted FC storage in the pod.

# openshift version
openshift v1.0.7-206-gee714a1
kubernetes v1.2.0-alpha.1-1107-g4c8e6f4
etcd 2.1.2


Move bug to verified.