文档首页 > > 用户指南> 存储管理> 文件存储卷>

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

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

分享
更新时间:2021/04/20 GMT+08:00

操作场景

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

操作步骤

  1. 参照创建文件存储卷中操作创建文件存储卷,记录文件存储卷名称。
  2. 请参见通过kubectl或web-terminal插件操作CCE集群配置kubectl命令。
  3. 新建一个YAML文件,用于创建工作负载。假设文件名为sfs-statefulset-example.yaml

    touch sfs-statefulset-example.yaml

    vi sfs-statefulset-example.yaml

    配置示例:

    apiVersion: apps/v1
    kind: StatefulSet
    metadata:
      name: sfs-statefulset-example
      namespace: default
    spec:
      podManagementPolicy: OrderedReady
      replicas: 2
      revisionHistoryLimit: 10
      selector:
        matchLabels:
          app: sfs-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: sfs-statefulset-example
        spec:
          affinity: {}
          containers:
          - env:
            - name: PAAS_APP_NAME
              value: sfs-statefulset-example
            - name: PAAS_NAMESPACE
              value: default
            - name: PAAS_PROJECT_ID
              value: b7bb7d77a2974a8fa8985cbfb63f23c0
            image: nginx:latest
            imagePullPolicy: Always
            name: container-0
            resources: {}
            terminationMessagePath: /dev/termination-log
            terminationMessagePolicy: File
            volumeMounts:
            - mountPath: /tmp
              name: pvc-sfs-example
          dnsPolicy: ClusterFirst
          imagePullSecrets:
          - name: default-secret
          restartPolicy: Always
          schedulerName: default-scheduler
          securityContext: {}
          terminationGracePeriodSeconds: 30
          volumes:
            - name: pvc-sfs-example
              persistentVolumeClaim:
                claimName: cce-sfs-demo
          tolerations:
          - effect: NoExecute
            key: node.kubernetes.io/not-ready
            operator: Exists
            tolerationSeconds: 300
          - effect: NoExecute
            key: node.kubernetes.io/unreachable
            operator: Exists
            tolerationSeconds: 300
      updateStrategy:
        type: RollingUpdate
    表1 关键参数说明

    前置路径

    参数

    描述

    spec

    replicas

    实例数。

    metadata

    name

    新建工作负载的名称。

    spec.template.spec.containers

    image

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

    spec.template.spec.containers.volumeMounts

    mountPath

    容器内挂载路径。

    spec

    serviceName

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

    spec.template.spec.volumes.persistentVolumeClaim

    claimName

    已有PVC名称。

    spec.template.spec.containers.volumeMounts.name和spec.template.spec.volumes.name有映射关系,必须保持一致。

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

    kubectl create -f sfs-statefulset-example .yaml

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区论坛频道来与我们联系探讨

智能客服提问云社区提问