Kubernetes 卷的AttachVolume.NewAttacher失败:无法获取GCE GCECloudProvider,错误为<;零>;
我在GCE上有两个VM实例,kubernetes自行安装(使用以下代码) 我正在尝试创建卷并在我的播客中使用它 我已创建以下磁盘:Kubernetes 卷的AttachVolume.NewAttacher失败:无法获取GCE GCECloudProvider,错误为<;零>;,kubernetes,google-compute-engine,Kubernetes,Google Compute Engine,我在GCE上有两个VM实例,kubernetes自行安装(使用以下代码) 我正在尝试创建卷并在我的播客中使用它 我已创建以下磁盘: 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: acc
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
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mypvc
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi
pvc_手册.yaml:
apiVersion: v1
kind: PersistentVolume
metadata:
name: manually-created-pv
spec:
accessModes:
- ReadWriteMany
capacity:
storage: 10Gi
persistentVolumeReclaimPolicy: Retain
gcePersistentDisk:
pdName: manual-disk-1
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 get statusContainerCreating
和onkubectl get events
我看到:
7s警告失败附加卷附加卷。卷的NewAttacher失败:无法获取GCE GCECloudProvider,错误为
我使用具有计算实例管理员角色(根据)的ServiceAccount运行我的两个实例,并使用--cloud provider=gce运行我的kubelet
如何解决此问题?您需要创建一个storageclass
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文档操作是否可以添加kubectl get sc
的输出?未找到任何资源我只需要创建storageclass?或者我也应该创建磁盘、pv、pvc?请给我看一下使用这个storageclass的pod.yaml文件的示例好吗?您首先需要storageclass。然后,将在创建pv时使用此选项。您不需要创建磁盘。创建storageclass、pv、pvcI创建storageclass,然后创建pvc,但当我运行kubectl get pvc on pending Status时,您是否使用pvc创建了pod?安装到pod计划所在节点的磁盘。如果使用Toleration在主节点上调度pod,则卷将装载在主节点上