本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
存储类
在 Kubernetes 版本 1.11 之前创建的 Amazon EKS 集群未创建有任何存储类。您必须为要使用的集群定义存储类,并且应为持久卷声明定义默认存储类。有关更多信息,请参阅
Kubernetes 文档中的存储类
本主题使用树内 Amazon EBS 存储预配置程序
为 Amazon EKS 集群创建 AWS 存储类
-
为存储类创建 AWS 存储类清单文件。下面的
gp2-storage-class.yaml
示例定义一个名为gp2
的存储类,该类使用 Amazon EBSgp2
卷类型。有关 AWS 存储类的可用选项的更多信息,请参阅 Kubernetes 文档中的 AWS EBS
。 kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: gp2 annotations: storageclass.kubernetes.io/is-default-class: "true" provisioner: kubernetes.io/aws-ebs parameters: type: gp2 fsType: ext4
-
使用
kubectl
从清单文件创建存储类。kubectl create -f gp2-storage-class.yaml
输出:
storageclass "gp2" created
定义默认存储类
-
列出集群的现有存储类。必须先定义存储类,然后才能将它设置为默认存储类。
kubectl get storageclass
输出:
NAME PROVISIONER AGE gp2 kubernetes.io/aws-ebs 8m
-
选择一个存储类并通过设置
storageclass.kubernetes.io/is-default-class=true
注释来将该存储类设置为默认存储类。kubectl patch storageclass <gp2> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
输出:
storageclass "gp2" patched
-
确认存储类现已设置为默认存储类。
kubectl get storageclass
输出:
gp2 (default) kubernetes.io/aws-ebs 12m