Yud*_*udi 4 kubernetes devops minikube devops-services
我的问题是关于PersistentVolumeClaim我在aws ec2上有一个节点集群设置我正在尝试使用kubernetes.io/host-path作为Provisioner创建一个存储类.
存储类的yaml文件内容如下,
kind: StorageClass
apiVersion: storage.k8s.io/v1beta1
metadata:
namespace: kube-system
name: my-storage
annotations:
storageclass.beta.kubernetes.io/is-default-class: "false"
labels:
kubernetes.io/cluster-service: "true"
provisioner: kubernetes.io/host-path
Run Code Online (Sandbox Code Playgroud)
PersistentVolumeClaim的yaml文件内容如下,
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: task-pv-claim
annotations:
volume.beta.kubernetes.io/storage-class: my-storage
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 3Gi
Run Code Online (Sandbox Code Playgroud)
当我尝试在minikube上创建存储类和PVC时,它正在工作.它是在/ tmp/hostpath_volume/minikube上创建音量但是,当我在aws ec2上的一个节点集群设置上尝试类似的事情时,我收到了以下错误
无法创建配置程序:已禁用配置卷插件"kubernetes.io/host-path"
当我执行kubectl描述pvc task-pv-claim时,我可以看到此错误.此外,PV未创建,因此声明处于暂挂状态
我找到了类似kube-controller-manager的东西,它在其选项中显示了--enable-dynamic-provisioning和--enable-hostpath-provisioner,但不知道如何使用它.
看起来你可能没有运行配置器本身,所以没有什么可以实际创建主机路径目录的工作.
看看这里
这种方式的工作方式是hostpath provisioner从kubernetes API读取,并监视您创建存储类(已完成)和persistentvolumeclaim(也已完成).
当存在这些时,配置程序(作为pod运行)将执行a mkdir来创建主机路径.
运行以下命令:
kubectl apply -f https://raw.githubusercontent.com/kubernetes-incubator/external-storage/master/docs/demo/hostpath-provisioner/pod.yaml
Run Code Online (Sandbox Code Playgroud)
然后重新创建您的存储类和pvc
| 归档时间: |
|
| 查看次数: |
6133 次 |
| 最近记录: |