数据结构

最近更新时间:2019-08-22 19:31:50

Cluster

集群信息结构体

被如下接口引用:DescribeClusters。

名称 类型 描述
ClusterId String 集群ID
ClusterName String 集群名称
ClusterDescription String 集群描述
ClusterVersion String 集群版本(默认值为1.10.5)
ClusterOs String 集群系统。centos7.2x86_64 或者 ubuntu16.04.1 LTSx86_64,默认取值为ubuntu16.04.1 LTSx86_64
ClusterType String 集群类型,托管集群:MANAGED_CLUSTER,独立集群:INDEPENDENT_CLUSTER。
ClusterNetworkSettings ClusterNetworkSettings 集群网络相关参数
ClusterNodeNum Integer 集群当前node数量
ProjectId Integer 集群所属的项目ID

ClusterAdvancedSettings

集群高级配置

被如下接口引用:CreateCluster。

名称 类型 必选 描述
IPVS Boolean 是否启用IPVS
AsEnabled Boolean 是否启用集群节点自动扩缩容(创建集群流程不支持开启此功能)
ContainerRuntime String 集群使用的runtime类型,包括"docker"和"containerd"两种类型,默认为"docker"

ClusterBasicSettings

描述集群的基本配置信息

被如下接口引用:CreateCluster。

名称 类型 必选 描述
ClusterOs String 集群系统。centos7.2x86_64 或者 ubuntu16.04.1 LTSx86_64,默认取值为ubuntu16.04.1 LTSx86_64
ClusterVersion String 集群版本,默认值为1.10.5
ClusterName String 集群名称
ClusterDescription String 集群描述
VpcId String 私有网络ID,形如vpc-xxx。创建托管空集群时必传。
ProjectId Integer 集群内新增资源所属项目ID。

ClusterCIDRSettings

集群容器网络相关参数

被如下接口引用:CreateCluster。

名称 类型 必选 描述
ClusterCIDR String 用于分配集群容器和服务 IP 的 CIDR,不得与 VPC CIDR 冲突,也不得与同 VPC 内其他集群 CIDR 冲突。且网段范围必须在内网网段内,例如:10.1.0.0/14, 192.168.0.1/18,172.16.0.0/16。
IgnoreClusterCIDRConflict Boolean 是否忽略 ClusterCIDR 冲突错误, 默认不忽略
MaxNodePodNum Integer 集群中每个Node上最大的Pod数量。取值范围4~256。不为2的幂值时会向上取最接近的2的幂值。
MaxClusterServiceNum Integer 集群最大的service数量。取值范围32~32768,不为2的幂值时会向上取最接近的2的幂值。

ClusterNetworkSettings

集群网络相关的参数

被如下接口引用:DescribeClusters。

名称 类型 必选 描述
ClusterCIDR String 用于分配集群容器和服务 IP 的 CIDR,不得与 VPC CIDR 冲突,也不得与同 VPC 内其他集群 CIDR 冲突
IgnoreClusterCIDRConflict Boolean 是否忽略 ClusterCIDR 冲突错误, 默认不忽略
MaxNodePodNum Integer 集群中每个Node上最大的Pod数量(默认为256)
MaxClusterServiceNum Integer 集群最大的service数量(默认为256)
Ipvs Boolean 是否启用IPVS(默认不开启)
VpcId String 集群的VPCID(如果创建空集群,为必传值,否则自动设置为和集群的节点保持一致)
Cni Boolean 网络插件是否启用CNI(默认开启)

EnhancedService

描述了实例的增强服务启用情况与其设置,如云安全,云监控等实例 Agent

被如下接口引用:AddExistedInstances、CreateCluster。

名称 类型 必选 描述
SecurityService RunSecurityServiceEnabled 开启云安全服务。若不指定该参数,则默认开启云安全服务。
MonitorService RunMonitorServiceEnabled 开启云监控服务。若不指定该参数,则默认开启云监控服务。

ExistedInstance

已经存在的实例信息

被如下接口引用:DescribeExistedInstances。

名称 类型 描述
Usable Boolean 实例是否支持加入集群(TRUE 可以加入 FALSE 不能加入)。
注意:此字段可能返回 null,表示取不到有效值。
UnusableReason String 实例不支持加入的原因。
注意:此字段可能返回 null,表示取不到有效值。
AlreadyInCluster String 实例已经所在的集群ID。
注意:此字段可能返回 null,表示取不到有效值。
InstanceId String 实例ID形如:ins-xxxxxxxx。
InstanceName String 实例名称。
注意:此字段可能返回 null,表示取不到有效值。
PrivateIpAddresses Array of String 实例主网卡的内网IP列表。
注意:此字段可能返回 null,表示取不到有效值。
PublicIpAddresses Array of String 实例主网卡的公网IP列表。
注意:此字段可能返回 null,表示取不到有效值。
CreatedTime Timestamp 创建时间。按照ISO8601标准表示,并且使用UTC时间。格式为:YYYY-MM-DDThh:mm:ssZ。
注意:此字段可能返回 null,表示取不到有效值。
InstanceChargeType String 实例计费模式。取值范围:
PREPAID:表示预付费,即包年包月
POSTPAID_BY_HOUR:表示后付费,即按量计费
CDHPAID:CDH付费,即只对CDH计费,不对CDH上的实例计费。
注意:此字段可能返回 null,表示取不到有效值。
CPU Integer 实例的CPU核数,单位:核。
注意:此字段可能返回 null,表示取不到有效值。
Memory Integer 实例内存容量,单位:GB。
注意:此字段可能返回 null,表示取不到有效值。
OsName String 操作系统名称。
注意:此字段可能返回 null,表示取不到有效值。
InstanceType String 实例机型。
注意:此字段可能返回 null,表示取不到有效值。

ExistedInstancesForNode

不同角色的已存在节点配置参数

被如下接口引用:CreateCluster。

名称 类型 必选 描述
NodeRole String 节点角色,取值:MASTER_ETCD, WORKER。MASTER_ETCD只有在创建 INDEPENDENT_CLUSTER 独立集群时需要指定。MASTER_ETCD节点数量为3~7,建议为奇数。MASTER_ETCD最小配置为4C8G。
ExistedInstancesPara ExistedInstancesPara 已存在实例的重装参数

ExistedInstancesPara

已存在实例的重装参数

被如下接口引用:CreateCluster。

名称 类型 必选 描述
InstanceIds Array of String 集群ID
InstanceAdvancedSettings InstanceAdvancedSettings 实例额外需要设置参数信息
EnhancedService EnhancedService 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。
LoginSettings LoginSettings 节点登录信息(目前仅支持使用Password或者单个KeyIds)
SecurityGroupIds Array of String 实例所属安全组。该参数可以通过调用 DescribeSecurityGroups 的返回值中的sgId字段来获取。若不指定该参数,则绑定默认安全组。(目前仅支持设置单个sgId)

Filter

过滤器

被如下接口引用:DescribeClusters、DescribeExistedInstances。

名称 类型 必选 描述
Name String 属性名称, 若存在多个Filter时,Filter间的关系为逻辑与(AND)关系。
Values Array of String 属性值, 若同一个Filter存在多个Values,同一Filter下Values间的关系为逻辑或(OR)关系。

Instance

集群的实例信息

被如下接口引用:DescribeClusterInstances。

名称 类型 描述
InstanceId String 实例ID
InstanceRole String 节点角色, MASTER, WORKER, ETCD, MASTER_ETCD,ALL, 默认为WORKER
FailedReason String 实例异常(或者处于初始化中)的原因
InstanceState String 实例的状态(running 运行中,initializing 初始化中,failed 异常)

InstanceAdvancedSettings

描述了k8s集群相关配置与信息。

被如下接口引用:AddExistedInstances、CreateCluster、CreateClusterInstances。

名称 类型 必选 描述
MountTarget String 数据盘挂载点, 默认不挂载数据盘. 已格式化的 ext3,ext4,xfs 文件系统的数据盘将直接挂载,其他文件系统或未格式化的数据盘将自动格式化为ext4 并挂载,请注意备份数据! 无数据盘或有多块数据盘的云主机此设置不生效。
DockerGraphPath String dockerd --graph 指定值, 默认为 /var/lib/docker
UserScript String base64 编码的用户脚本, 此脚本会在 k8s 组件运行后执行, 需要用户保证脚本的可重入及重试逻辑, 脚本及其生成的日志文件可在节点的 /data/ccs_userscript/ 路径查看, 如果要求节点需要在进行初始化完成后才可加入调度, 可配合 unschedulable 参数使用, 在 userScript 最后初始化完成后, 添加 kubectl uncordon nodename --kubeconfig=/root/.kube/config 命令使节点加入调度
Unschedulable Integer 设置加入的节点是否参与调度,默认值为0,表示参与调度;非0表示不参与调度, 待节点初始化完成之后, 可执行kubectl uncordon nodename使node加入调度.

LoginSettings

描述了实例登录相关配置与信息。

被如下接口引用:AddExistedInstances、CreateCluster。

名称 类型 必选 描述
Password String 实例登录密码。不同操作系统类型密码复杂度限制不一样,具体如下:
  • Linux实例密码必须8到16位,至少包括两项[a-z,A-Z]、[0-9] 和 [( ) ~ ! @ # $ % ^ & * - + = &#124; { } [ ] : ; ' , . ? / ]中的特殊符号。<br><li>Windows实例密码必须12到16位,至少包括三项[a-z],[A-Z],[0-9] 和 [( ) ~ ! @ # $ % ^ & * - + = { } [ ] : ; ' , . ? /]中的特殊符号。

    若不指定该参数,则由系统随机生成密码,并通过站内信方式通知到用户。
    注意:此字段可能返回 null,表示取不到有效值。
  • KeyIds Array of String 密钥ID列表。关联密钥后,就可以通过对应的私钥来访问实例;KeyId可通过接口DescribeKeyPairs获取,密钥与密码不能同时指定,同时Windows操作系统不支持指定密钥。当前仅支持购买的时候指定一个密钥。
    注意:此字段可能返回 null,表示取不到有效值。
    KeepImageLogin String 保持镜像的原始设置。该参数与Password或KeyIds.N不能同时指定。只有使用自定义镜像、共享镜像或外部导入镜像创建实例时才能指定该参数为TRUE。取值范围:
  • TRUE:表示保持镜像的登录设置
  • FALSE:表示不保持镜像的登录设置

    默认取值:FALSE。
    注意:此字段可能返回 null,表示取不到有效值。
  • RouteInfo

    集群路由对象

    被如下接口引用:DescribeClusterRoutes。

    名称 类型 描述
    RouteTableName String 路由表名称。
    DestinationCidrBlock String 目的端CIDR。
    GatewayIp String 下一跳地址。

    RouteTableConflict

    路由表冲突对象

    被如下接口引用:DescribeRouteTableConflicts。

    名称 类型 描述
    RouteTableType String 路由表类型。
    RouteTableCidrBlock String 路由表CIDR。
    注意:此字段可能返回 null,表示取不到有效值。
    RouteTableName String 路由表名称。
    注意:此字段可能返回 null,表示取不到有效值。
    RouteTableId String 路由表ID。
    注意:此字段可能返回 null,表示取不到有效值。

    RouteTableInfo

    集群路由表对象

    被如下接口引用:DescribeClusterRouteTables。

    名称 类型 描述
    RouteTableName String 路由表名称。
    RouteTableCidrBlock String 路由表CIDR。
    VpcId String VPC实例ID。

    RunInstancesForNode

    不同角色的节点配置参数

    被如下接口引用:CreateCluster。

    名称 类型 必选 描述
    NodeRole String 节点角色,取值:MASTER_ETCD, WORKER。MASTER_ETCD只有在创建 INDEPENDENT_CLUSTER 独立集群时需要指定。MASTER_ETCD节点数量为3~7,建议为奇数。MASTER_ETCD节点最小配置为4C8G。
    RunInstancesPara Array of String CVM创建透传参数,json化字符串格式,详见CVM创建实例接口,传入公共参数外的其他参数即可,其中ImageId会替换为TKE集群OS对应的镜像。

    RunMonitorServiceEnabled

    描述了 “云监控” 服务相关的信息

    被如下接口引用:AddExistedInstances、CreateCluster。

    名称 类型 必选 描述
    Enabled Boolean 是否开启云监控服务。取值范围:
  • TRUE:表示开启云监控服务
  • FALSE:表示不开启云监控服务

    默认取值:TRUE。
  • RunSecurityServiceEnabled

    描述了 “云安全” 服务相关的信息

    被如下接口引用:AddExistedInstances、CreateCluster。

    名称 类型 必选 描述
    Enabled Boolean 是否开启云安全服务。取值范围:
  • TRUE:表示开启云安全服务
  • FALSE:表示不开启云安全服务

    默认取值:TRUE。