ZBLOG

pv如何和sc进行绑定?

在 Kubernetes 中,PersistentVolume(PV)是一种集群级别的资源,用于表示可供 Pod 使用的持久存储。而 StorageClass(SC)则是一种动态分配 PV 的方式。当 PVC 需要使用存储时,可以通过绑定到一个 SC 来自动创建相应的 PV。

以下是将 PV 与 SC 绑定的步骤:

  1. 创建 StorageClass

首先需要创建一个 StorageClass 对象。在创建时,需要指定该类别的名称、provisioner、参数等信息。例如:

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: slow
provisioner: kubernetes.io/aws-ebs
parameters:
  type: io1
  iopsPerGB: "10"
  1. 创建 PersistentVolume

接下来需要手动或者通过自动化工具创建一个 PV,并将其与该 StorageClass 进行关联。在创建 PV 的 YAML 文件中,需要指定该卷所需容量大小和其他相关属性,并且在 spec.storageClassName 字段中引用上述定义的 StorageClass 名称。例如:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-slow-01
spec:
  capacity:
    storage: 100Gi
  accessModes:
    - ReadWriteOnce
  storageClassName: slow   # 引用上述定义的 StorageClass 名称 
  awsElasticBlockStore:
    volumeID: vol-0123456789abcdefg # 指定 EBS 卷 ID  
    fsType: ext4

请注意,此处指定的 storageClassName 必须与上述创建的 StorageClass 名称完全匹配。只有在匹配成功时,PVC 才会自动绑定到该 PV 上。

  1. 创建 PersistentVolumeClaim

最后,可以创建一个 PVC 并将其与上述定义的 PV 进行绑定。在 PVC 的 YAML 文件中,需要指定所需容量大小和访问模式等参数,并且在 spec.storageClassName 字段中引用上述定义的 StorageClass 名称。例如:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: myclaim
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 10Gi
  storageClassName: slow   # 引用上述定义的 StorageClass 名称 

当 PVC 被创建时,Kubernetes 将搜索并尝试使用可用的 PV 来满足其需求。如果存在与该 PVC 匹配的 PV,则自动将其绑定在一起。

通过以上步骤,就可以将一个 PV 和 SC 相关联,并使得相应的 PVC 自动绑定到 PV 上。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=2955

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?