更新时间:2024-04-17 GMT+08:00

CCE.StatefulSet

模型说明

CCE.StatefulSet用于为云容器引擎服务(CCE)的集群创建有状态服务。

模型属性

表1 模型定义属性说明

属性

是否必选

描述

namespace

资源在集群内所在的命名空间

参数类型:string

取值说明:需为集群下有效的namespace,示例:default

取值约束:由小写字母、数字和中划线组成,且必须以字母开头

使用建议:按需在CCE管理控制台-资源管理-命名空间查询选择

k8sManifest

kubernetes的StatefulSet对象的原生的manifest

参数类型:dict

取值说明:用户自定义,建议使用公开镜像(上传镜像到镜像仓库,设置类型为公开),建议更新时不要更改metadata下面的名称(name)和标签(labels),spec下面的replicas如果通过get_input获得,需要指定type为integer

取值约束:不可为空

使用建议:用户自定义,参考文档:https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/

clusterId

资源所属的CCE集群的ID,只支持在1.7及以上的集群中创建

参数类型:HuaweiCloud.CCE.Cluster.Id

取值说明:已有容器集群的ID或新建集群的ID

取值约束:满足UUID规则,最大64位

使用建议:1.直接填ID:进入CCE管理控制台-资源管理-集群管理,在集群详情页面查看集群ID。 2.通过get_reference获取。通过连线到cluster对象以get_reference自动获取

关联关系

表2 关联关系说明

关系说明

关联节点

依赖关系

AOS.Batch

依赖关系

DCS.Redis

依赖关系

RDS.MySQL

依赖关系

CCE.Storage.EVS

依赖关系

OBS.Bucket

依赖关系

CCE.Storage.SFS

依赖关系

CCE.ConfigMap

依赖关系

CCE.Job

依赖关系

CCE.Storage.OBS

依赖关系

CCE.DaemonSet

依赖关系

CCE.Secret

依赖关系

CCE.Service

依赖关系

CCE.Ingress

依赖关系

CCE.StatefulSet

依赖关系

CCE.NodePool

依赖关系

CCE.Deployment

依赖关系

CCE.Pod

依赖关系

RDS.PostgreSQL

被包含关系

CCE.Cluster

输出

属性

参数类型

描述

refName

string

有状态服务的名称

refLabelsApp

string

有状态服务的标签app值

blueprint样例

tosca_definitions_version: huaweicloud_tosca_version_1_0
inputs:
  statefulset-image-addr:
    default: "*.*.*.*:20202/***/redis:V1"
    description: "StatefulSet used image address."
node_templates:
  ccess2u6:
    type: HuaweiCloud.CCE.StatefulSet
    properties:
      k8sManifest:
        kind: StatefulSet
        spec:
          replicas: 1
          serviceName: statefulsettest
          template:
            spec:
              imagePullSecrets:
                - name: default-secret
              containers:
                - image: 
                    get_input: statefulset-image-addr
                  terminationMessagePath: '/dev/termination-log'
                  ports:
                    - containerPort: 80
                      protocal: TCP
                  name: mystatefulset-123
                  imagePullPolicy: IfNotPresent
            metadata:
              labels:
                app: statefulsettest
              name: mystatefulset
          selector:
            matchLabels:
              app: statefulsettest
        apiVersion: 'apps/v1'
        metadata:
          labels:
            'cce/appgroup': mystatefulset
          name: statefulsettest