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

CCE.Deployment

模型说明

CCE.Deployment用于为云容器引擎服务(CCE)的集群创建kubernetes集群中的Deployment对象。目前AOS支持直接使用kubernetes原生yaml文件进行创建。

模型属性

表1 模型定义属性说明

属性

是否必选

描述

namespace

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

参数类型:string

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

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

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

k8sManifest

用于描述CCE服务创建的kubernetes集群中的Deployment对象

参数类型:dict

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

使用建议:kubernetes对象原生的yaml文件内容

clusterId

资源所属的CCE集群的ID

参数类型: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

输出

属性

参数类型

描述

chargeMode

按流量计费还是按带宽计费

参数类型:string

取值说明:bandwidth、traffic。不填或者为空时默认是bandwidth

默认值:bandwidth

取值约束:可选值为bandwidth,traffic

refName

string

所创建Deployment的名称

refLabelsApp

string

有状态服务的标签app值

blueprint样例

tosca_definitions_version: huaweicloud_tosca_version_1_0
inputs:
  containername:
    default: deployment-123
    type: string
  deploymentname:
    default: deploymenttest
    type: string
  image:
    default: nginx
    type: string
  imagePullPolicy:
    default: IfNotPresent
    type: string
  labels:
    default: mydeployment
    type: string
node_templates:
  my-deployment:
    type: HuaweiCloud.CCE.Deployment
    properties:
      k8sManifest:
        apiVersion: 'apps/v1'
        kind: Deployment
        metadata:
          labels:
            'cce/appgroup':
              get_input: labels
          name:
            get_input: deploymentname
        spec:
          'replicas:{get_input': 'deploymentname}'
          selector:
            matchLabels:
              'cce/appgroup':
                get_input: labels
          template:
            metadata:
              labels:
                'cce/appgroup':
                  get_input: labels
            spec:
              containers:
                - image:
                    get_input: image
                  name:
                    get_input: containername
              imagePullPolicy:
                get_input: imagePullPolicy