Kubernetes无法将AWS EBS作为卷附加。可能是由于云提供商问题

时间:2016-11-30 11:56:49

标签: kubernetes

我在AWS上运行了一个kubernetes集群。现在,当我尝试将AWS EBS作为卷附加到pod时,我遇到了“特殊设备不存在”的问题。

  

输出:mount:特殊设备/var/lib/kubelet/plugins/kubernetes.io/aws-ebs/mounts/vol-xxxxxxx不存在

我做了一些研究,发现正确的AWS EBS设备路径应该是这样的格式:

  

/var/lib/kubelet/plugins/kubernetes.io/aws-ebs/mounts/aws/us-west-2a/vol-xxxxxxxx

我怀疑是因为我根据此tutorial设置了Kubernetes集群并且没有设置云提供商,因此AWS设备“不退出”。我想知道我的怀疑是否正确,如果是的话,如何在集群运行后设置云提供商。

1 个答案:

答案 0 :(得分:1)

您需要将云提供商设置为正确安装EBS卷。要在以下服务中设置--cloud-provider=aws之后执行此操作:

  • 控制器的管理器
  • API服务器
  • kubelet

重新启动所有内容并尝试重新安装。

明确安装EBS卷的示例窗格可能如下所示:

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: <volume-id>
      fsType: ext4