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

CCE.NodePool

模型说明

CCE.NodePool用于部署PaaS层kubernetes节点资源。通过创建该资源,方便用户将资源编排在节点上,提供更加强大优质的功能。

模型属性

表1 模型定义属性说明

属性

是否必选

描述

dataVolumes

创建节点的数据盘模型

参数类型:CCE.DataVolume数组

取值说明:用户自定义,示例:[{"volumeType":"SATA","size":100}]

取值约束:数组格式,当前仅支持一个对象

使用建议:用户自定义

availabilityZone

节点的可用区

参数类型:Cloud.ECS.AvailabilityZone.Name

取值说明:待创建云服务器所在的可用区,需要指定可用区(AZ)的名称,例如ae-ad-1a。请参考地区和终端节点获取。

取值约束:根据所属区域选择

使用建议:将该字段通过get_input函数传入,在AOS界面创建堆栈填写输入参数时可自动选择

name

创建节点的名称

参数类型:string

取值说明:用户自定义

取值约束:长度[4,32],由小写字母、数字和下划线组成,且必须以小写字母开头

使用建议:用户自定义,一般以堆栈名称作为节点名称

publicKey

密钥对的公钥。

参数类型:Cloud.ECS.KeyPair.PublicKey

取值说明:可选择已有的公钥

使用建议:请将该字段通过get_input函数传入,在AOS界面创建堆栈填写输入参数时可根据sshKeyName的值自动选择

postInstall

节点安装后执行脚本

参数类型:string

取值说明:用户自定义

取值约束:脚本将在K8S软件安装后执行,不影响K8S软件安装

使用建议:常用于修改Docker配置参数等场景

labels

节点的标签

参数类型:CCE.Labels数组

取值说明:用户自定义,示例:{"app": "aos"}

使用建议:用户自定义,可输入多个key/value键值对

clusterId

资源所属的集群ID

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

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

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

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

preInstall

节点安装前执行脚本

参数类型:string

取值说明:用户自定义

取值约束:脚本将在K8S软件安装前执行,可能导致K8S软件无法正常安装,需谨慎使用。

使用建议:常用于格式化数据盘等场景

publicIp

创建节点的虚IP模型

参数类型:CCE.PublicIP

取值说明:用户自定义,示例:{"eip":{"bandwidth:{"shareType":PER}, 5_sbgp"}}

默认值:{}

取值约束:每个节点仅支持定义一个eip

使用建议:用户自定义

instances

创建节点的数量

参数类型:integer

取值说明:用户自定义,取值范围为[1, 50]

默认值:1

取值约束:{u'in_range': [1, 50]}

使用建议:根据规格按需选择

rootVolume

创建节点的系统盘模型

参数类型:ECS.RootVolume

取值说明:用户自定义,示例:{"volumeType":"SATA","size":40}

默认值:{u'volumeType': u'unset', u'size': 40}

使用建议:用户自定义

os

节点的操作系统

参数类型:string

取值说明:["EulerOS 2.2", "CentOS 7.4"]

默认值:EulerOS 2.2

取值约束:{u'valid_values': [u'CentOS 7.4', u'EulerOS 2.2']}

nodePasswd

节点root的密码

参数类型:password

取值说明:用户自定义

取值约束:1. 参数必须写入inputs内,通过get_input的方式传入 2. 由小写字母、大写字母、数字和特殊符号!@$%^-_=+[{}]:,./?组成且至少包含两种,长度8~26位,非弱密码。

使用建议:建议定义为get_input方式获取,以保证安全性

flavor

容器节点的规格

参数类型:Cloud.CCE.Node.Flavor.Name

取值说明:待创建云服务器的系统规格的ID,已上线的规格请查阅《弹性云服务器 产品介绍》。建议通过get_input方式输入

使用建议:在CCE界面创建节点时,选择节点规格。在节点模板中通过inputs指定节点规格

sshKeyName

创建节点登录时使用的密钥对,请妥善保存

参数类型:Cloud.ECS.KeyPair.Name

取值说明:需要在ECS服务界面提前创建

使用建议:1. 建议通过get_input方式定义以便在使用模板时可以选择; 2. 在ECS界面查询后输入

annotations

节点的注解

参数类型:dict

取值说明:用户自定义,示例:{"app": "aos"}

使用建议:用户自定义,可输入多个key/value键值对

关联关系

表2 关联关系说明

关系说明

关联节点

被包含关系

CCE.Cluster

关联关系

ECS.KeyPair

关联关系

CCE.Storage.OBS

关联关系

CCE.Pod

关联关系

CCE.NodePool

关联关系

CCE.Storage.SFS

输出

属性

参数类型

描述

floatingIpId

string

弹性IP的ID

clusterId

string

集群ID

refName

string

节点名称

privateIp

数组

弹性IP内网地址列表

publicIp

数组

弹性IP公开地址列表

refID

string

节点ID

blueprint样例

tosca_definitions_version: cloud_tosca_version_1_0
node_templates:
  ccenp1ep:
    type: Cloud.CCE.NodePool
    properties:
      dataVolumes:
        - volumeType: SATA
          size: 100
      name: ''
      instances: 1
      rootVolume:
        volumeType: SATA
        size: 40
      flavor:
        get_input: ccenp1ep_flavor
      sshKeyName:
        get_input: ccenp1ep_sshKeyName
inputs:
  ccenp1ep_flavor:
    description: 容器节点的规格
    label: ''
  ccenp1ep_sshKeyName:
    description: 创建节点登录时使用的密钥对,请妥善保存
    label: ''