2016-10-27 62 views
0

嘗試將EBS卷掛載到Kubernetes的pod時,遇到「發現特殊設備nount」錯誤。 這裏是莢的YAML文件:將AWS EBS卷掛載到Kubernetes'pod時發生「發現特殊設備nount」錯誤

apiVersion: v1 
kind: Pod 
metadata: 
    name: test-ebs 
spec: 
    containers: 
    - image: gcr.io/google_containers/test-webserver 
    name: test-container 
    volumeMounts: 
    - mountPath: /test-ebs 
     name: test-volume 
    volumes: 
    - name: test-volume 
    # This AWS EBS volume must already exist. 
    awsElasticBlockStore: 
     volumeID: aws://us-west-2a/vol-xxxxxxxx 
     fsType: ext4 

運行吊艙後,莢狀態停留在「ContainerCreating」。 「kubectl describe pod」輸出表示存在「未找到設備」錯誤:

SetUp failed for volume "kubernetes.io/aws-ebs/8e830149-9c95-11e6-b969-0691ac4fce05-test-volume" (spec.Name: "test-volume") pod "8e830149-9c95-11e6-b969-0691ac4fce05" (UID: "8e830149-9c95-11e6-b969-0691ac4fce05") with: mount failed: exit status 32 Mounting arguments: /var/lib/kubelet/plugins/kubernetes.io/aws-ebs/mounts/aws/us-west-2a/vol-xxxxxxxx /var/lib/kubelet/pods/8e830149-9c95-11e6-b969-0691ac4fce05/volumes/kubernetes.io~aws-ebs/test-volume [bind] 
Output: mount: special device /var/lib/kubelet/plugins/kubernetes.io/aws-ebs/mounts/aws/us-west-2a/vol-xxxxxxxx does not exist 

任何人都知道這是怎麼發生的?提前致謝。

回答

0

您的volumeID應該只是「vol-xxxxxxxx」而不是「aws:// us-west-2a/vol-xxxxxxxx」。 Kubernetes根據集羣雲提供商設置計算出該地區。