更新时间:2023-05-05 GMT+08:00
分享

使用kubectl部署带对象存储卷的有状态工作负载

操作场景

CCE支持使用已有的对象存储卷(PersistentVolumeClaim),创建有状态工作负载(StatefulSet)

约束与限制

如下配置示例适用于Kubernetes 1.13及以下版本的集群。

操作步骤

  1. 参照使用kubectl自动创建对象存储中操作创建对象存储卷,并获取PVC名称。
  2. 请参见通过kubectl连接集群,使用kubectl连接集群。
  3. 新建一个YAML文件,用于创建工作负载。假设文件名为obs-statefulset-example.yaml

    touch obs-statefulset-example.yaml

    vi obs-statefulset-example.yaml

    yaml示例如下:

    apiVersion: apps/v1
    kind: StatefulSet
    metadata:
      name: obs-statefulset-example
      namespace: default
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: obs-statefulset-example
      serviceName: qwqq
      template:
        metadata:
          annotations:
            metrics.alpha.kubernetes.io/custom-endpoints: '[{"api":"","path":"","port":"","names":""}]'
            pod.alpha.kubernetes.io/initialized: "true"
          creationTimestamp: null
          labels:
            app: obs-statefulset-example
        spec:
          affinity: {}
          containers:	
            image: nginx:latest
            imagePullPolicy: Always
            name: container-0
            volumeMounts:
            - mountPath: /tmp
              name: pvc-obs-example
          imagePullSecrets:
          - name: default-secret
          volumes:
            - name: pvc-obs-example
              persistentVolumeClaim:
                claimName: cce-obs-demo
    表1 关键参数说明

    参数

    描述

    replicas

    实例数。

    name

    新建工作负载的名称。

    image

    新建工作负载使用的镜像。

    mountPath

    容器内挂载路径。

    serviceName

    工作负载对应的服务,服务创建过程请参见创建有状态负载(StatefulSet)

    claimName

    已有PVC名称。

  4. 创建有状态工作负载。

    kubectl create -f obs-statefulset-example.yaml

分享:

    相关文档

    相关产品