AttachVolume.NewAttacher 卷失败:无法获取 GCE GCECloudProvider 并显示错误<nil>



我在GCE上有两个带有kubernetes自安装的VM实例(使用以下https://medium.com/edureka/install-kubernetes-on-ubuntu-5cd1f770c9e4)。

我正在尝试创建音量并在我的pod中使用它。

我已经创建了以下磁盘:

gcloud compute disks create --type=pd-ssd --size=10GB manual-disk-1

并创建以下yaml文件

pv_manual.yaml:

apiVersion: v1
kind: PersistentVolume
metadata:
name: manually-created-pv
spec:
accessModes:
- ReadWriteMany
capacity:
storage: 10Gi
persistentVolumeReclaimPolicy: Retain
gcePersistentDisk:
pdName: manual-disk-1

pvc_manual.yaml:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mypvc
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi

pod.yaml:

apiVersion: v1
kind: Pod
metadata:
name: sleppypod
spec:
volumes:
- name: data
persistentVolumeClaim:
claimName: mypvc
containers:
- name: sleppycontainer
image: gcr.op/google_containers/busybox
command:
- sleep
- "5000"
volumeMounts:
- name: data
mountPath: /data
readOnly: false

当我试图创建pod时,pode的状态为ContainerCreating,在kubectl get events上,我看到:

7s警告失败AttachVolume AttachVolume.NewAttacher对卷失败:无法获取GCE GCECloudProvider,错误为

我使用具有计算实例管理员角色的ServiceAccount运行我的两个实例(根据Kubernetes:Failed to get GCE GCECloudProvider,error<nil>(,并且我的kubelet使用--cloud-provider=gce运行

我该如何解决?

您需要创建一个存储类

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
annotations:
storageclass.kubernetes.io/is-default-class: "true"
name: standard
provisioner: kubernetes.io/gce-pd
parameters:
type: pd-standard
fstype: ext4
replication-type: none

有关GCE的详细信息,请点击

您也可以在这里阅读GCE文档

相关内容

最新更新