资讯专栏INFORMATION COLUMN

在UK8S中使用UDISK 容器云 UK8S

ernest.wang / 800人阅读

摘要:请您使用前务必确认可以接受该风险。创建并与关联创建并与关联需要与相对应。在中使用在中使用在中使用

在UK8S中使用UDISK

本篇目录

1. 存储类 StorageClass2. 创建持久化存储卷声明 PVC3. 在 Pod 中使用 PVC

UK8S支持直接在集群中使用UDisk作为持久化存储卷。

备注:

所有云主机均支持 SSD/SATA UDisk,如果节点的云主机类型为快杰,则也支持 RSSD UDisk

SSD/SATA UDisk的最小值为 1GB,最大值为8000GB,RSSD UDisk 最大值为 32000GB;

UDisk和云主机必须位于同一可用区,如果您的集群是跨可用区模式,在应用部署的时候请注意。

如果使用快杰云主机及 RSSD UDisk,则 UDisk 和云主机除在同一个可用区外,也需要在同一个 RDMA 区域,RDMA 区域范围小于可用区,如在集群中使用已有 UDisk,有可能因 RDMA 区域不一致出现挂载失败的情况;

同一个 Pod 如果挂载多块 UDisk,则必须确保 UDisk 处于同一可用区,否则容器无法启动。

⚠️ RSSD UDisk调度要求同一个RDMA区域的快杰型云主机,RDMA 区域范围小于可用区,主机目前不支持指定RDMA区域创建机器。因此使用RSSD UDisk,在Pod漂移的情况下,有可能出现Pod无法调度的问题。请您使用前务必确认可以接受该风险。

1. 存储类 StorageClass

在创建持久化存储卷(PersistentVolume)之前,你需要先创建 StorageClass,然后在 PVC 中使用 StorageClassName。

UK8S 集群默认创建了两个 StorageClass,你也可以创建一个新的StorageClass,示例及说明如下:

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: udisk-ssd-test
provisioner: udisk.csi.ucloud.cn #存储供应方,此处不可更改。
parameters:
  type: "ssd"   # 存储介质,支持ssd和sata,必填
  fsType: "ext4"    # 文件系统,必填
  udataArkMode: "no"   # 是否开启方舟模式,默认不开启,非必填
  chargeType: "month" # 付费类型,支持dynamic、month、year,不填默认为按小时。
  quantity: "1" # 购买时长,dynamic无需填写,可购买1-9个月,或1-10年
reclaimPolicy: Delete  # PV回收策略,支持Delete和Retain,默认为Delete,非必填
volumeBindingMode: WaitForFirstConsumer   # 强烈建议配置该参数
mountOptions:   
  - debug
  - rw

备注:1.15之前的Kubernetes版本,mountOptions无法正常使用,请勿填写,详见Issue80191

2. 创建持久化存储卷声明 PVC

2.1 新建 UDisk

使用新建 UDisk,则可直接创建 PVC 对象,CSI 会自动创建 UDisk 并关联。

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: test-pvc-claim
spec:
  accessModes:
    - ReadWriteOnce
## storageClassName必须与上文创建的 StorageClass 的name一致
  storageClassName: udisk-ssd-test
  resources:
    requests:
      storage: 20Gi
2.2 使用已有 UDisk

如需使用已有 UDisk,需先创建 PV 对象并与已有 UDisk 绑定,再创建 PVC 对象、使用与 PV 相同的声明进行关联

创建持久化存储卷 PV
apiVersion: v1
kind: PersistentVolume
metadata:
  name: test-pvc-claim
spec:
  accessModes:
  - ReadWriteOnce
  capacity:
    storage: 20Gi
  csi:
    driver: udisk.csi.ucloud.cn
    volumeAttributes:
      type: ssd # 磁盘类型,枚举值为ssd,sata,rssd
    volumeHandle: bs-qg55w254 # 请修改为自己的UDiskId
#  nodeAffinity:强烈建议添加此字段
  persistentVolumeReclaimPolicy: Retain
#  storageClassName必须与上文创建的 StorageClass 的name一致
  storageClassName: udisk-ssd-test

注意:根据使用UDisk的Pod调度策略,为了保证后续调度可以顺利执行,强烈建议您创建时为PV添加nodeAffinity字段。由于不同版本以及不同Storage Class本部分的内容不尽相同,可以参照相同Storage Class CSI自动自动创建出来PV的对应字段。

2.3 创建 PVC 并与 PV 关联

spec.storageClassNamespec.resources.requests.storagevolumeName需要与pv相对应。

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: test-pvc-claim
spec:
  accessModes:
    - ReadWriteOnce
  storageClassName: udisk-ssd-test
  resources:
    requests:
      storage: 20Gi
  volumeName: test-pvc-claim

3. 在 Pod 中使用 PVC

apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
  - name: nginx
    image: uhub.service.ucloud.cn/ucloud/nginx:latest
    volumeMounts:
    - name: test
      mountPath: /data
    ports:
    - containerPort: 80
  volumes:
  - name: test
    persistentVolumeClaim:
      claimName: test-pvc-claim

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/126985.html

相关文章

  • 容器 UK8S使用必读:授权给UK8S产品的管理权限、请勿随意操作由UK8S创建的资源、请尽

    摘要:会使用到以下产品的全部操作权限,例如代替你创建删除云主机,由此产生的费用由你负责,请知悉。如何识别由创建的云资源由创建的云资源名称,都遵循明确的命名规范,具体详见命名规范简要说明如下名称,如名称为的云主机,是这个集群的节点。容器云UK8S使用必读注意:通过UK8S创建的云主机、云盘、EIP等资源,删除资源请不要通过具体的产品列表页删除,否则可能导致UK8S运行不正常或数据丢失风险,可以通过U...

    Tecode 评论0 收藏0
  • 容器 UK8S】操作指南:使用必读之授权给UK8S产品的管理权限,规避将业务部署Master

    摘要:注意通过创建的云主机云盘等资源,删除资源请不要通过具体的产品列表页删除,否则可能导致运行不正常或数据丢失风险,可以通过将资源释放或解绑删除。会使用到以下产品的全部操作权限,例如代替你创建删除云主机,由此产生的费用由你负责,请知悉。注意:通过UK8S创建的云主机、云盘、EIP等资源,删除资源请不要通过具体的产品列表页删除,否则可能导致UK8S运行不正常或数据丢失风险,可以通过UK8S将资源释放...

    Tecode 评论0 收藏0
  • 容器 UK8S】产品简介:产品概念、使用须知与名词解释

    摘要:产品概念是一项基于的容器管理服务,你可以在上部署管理扩展你的容器化应用,而无需关心集群自身的搭建及维护等运维类工作。完全兼容原生的,以私有网络为基础,并整合了等云产品。其命名规范为。产品概念UCloud Container Service for Kubernetes (UK8S)是一项基于Kubernetes的容器管理服务,你可以在UK8S上部署、管理、扩展你的容器化应用,而无需关心Kub...

    Tecode 评论0 收藏0
  • 容器 UK8S使用kubectl操作集群:创建PVC之创建StorageClass和创建一个存

    摘要:创建当前存储卷支持类型的以及,详见在中使用在中使用创建在创建持久化存储卷之前,你需要先创建,然后在中使用。集群默认创建了两个,你也可以创建一个新的,示例及说明如下版本年月日之后创建的集群存储供应方,此处不可更改。创建PVC当前存储卷支持SSD、SATA类型的UDisk以及UFS,详见:在UK8S中使用UDisk在UK8S中使用UFS创建StorageClass在创建持久化存储卷(persis...

    Tecode 评论0 收藏0
  • 容器 UK8S】存储卷:CSI更新21.01.1(版本更新)内容

    摘要:更新升级操作仅支持集群大于版本且在使用插件的集群,如您删除过插件则需要重新部署信息。后续更新工作,将添加至集群插件中进行点击更新。变更记录更新版本更新时间更新内容的起始大小变更为。更新版本更新时间更新内容支持限制节点最大可挂载卷的数量。CSI更新21.01.1CSI升级操作仅支持uk8s集群大于1.14版本且在使用CSI插件的集群,如您删除过CSI插件则需要重新部署userdata信息。后续...

    Tecode 评论0 收藏0

发表评论

0条评论

ernest.wang

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<