UNPKG

tenyun

Version:

Promise based and chained Tencent Cloud OpenAPI client for NodeJS

1,978 lines (1,833 loc) 345 kB
/// <reference types="node" /> import { AxiosPromise, AxiosRequestConfig } from "axios"; /** k8s中标注,一般以数组的方式存在 */ declare interface Annotation { /** map表中的Name */ Name: string; /** map表中的Value */ Value: string; } /** 托管节点池运维窗口设置 */ declare interface AutoUpgradeOptions { /** 自动升级开始时间 */ AutoUpgradeStartTime?: string | null; /** 自动升级持续时间 */ Duration?: string | null; /** 运维日期 */ WeeklyPeriod?: string[] | null; } /** 自动扩缩容的节点 */ declare interface AutoscalingAdded { /** 正在加入中的节点数量 */ Joining?: number; /** 初始化中的节点数量 */ Initializing?: number; /** 正常的节点数量 */ Normal?: number; /** 节点总数 */ Total?: number; } /** 原生节点池创建参数 */ declare interface CreateNativeNodePoolParam { /** 节点池伸缩配置 */ Scaling: MachineSetScaling; /** 子网列表 */ SubnetIds: string[]; /** 节点计费类型。PREPAID:包年包月;POSTPAID_BY_HOUR:按量计费(默认); */ InstanceChargeType: string; /** 系统盘配置 */ SystemDisk: Disk; /** 机型列表 */ InstanceTypes: string[]; /** 安全组列表 */ SecurityGroupIds?: string[]; /** 自动升级配置 */ UpgradeSettings?: MachineUpgradeSettings; /** 是否开启自愈能力 */ AutoRepair?: boolean; /** 包年包月机型计费配置 */ InstanceChargePrepaid?: InstanceChargePrepaid; /** 节点池 Management 参数设置 */ Management?: ManagementConfig; /** 故障自愈规则名称 */ HealthCheckPolicyName?: string; /** 原生节点池hostName模式串 */ HostNamePattern?: string; /** kubelet 自定义参数 */ KubeletArgs?: string[]; /** 预定义脚本 */ Lifecycle?: LifecycleConfig; /** 运行时根目录 */ RuntimeRootDir?: string; /** 是否开启弹性伸缩 */ EnableAutoscaling?: boolean; /** 期望节点数 */ Replicas?: number; /** 公网带宽设置 */ InternetAccessible?: InternetAccessible; /** 原生节点池数据盘列表 */ DataDisks?: DataDisk[]; /** qgpu开关 */ QGPUEnable?: boolean; /** 节点池ssh公钥id数组 */ KeyIds?: string[]; /** 节点池类型 */ MachineType?: string; /** 原生节点池安装节点自动化助手开关 */ AutomationService?: boolean; } /** 描述了k8s节点数据盘相关配置与信息。 */ declare interface DataDisk { /** 云盘类型 */ DiskType: string | null; /** 文件系统(ext3/ext4/xfs) */ FileSystem: string | null; /** 云盘大小(G) */ DiskSize: number | null; /** 是否自动化格式盘并挂载 */ AutoFormatAndMount: boolean | null; /** 挂载设备名或分区名 */ DiskPartition: string | null; /** 挂载目录 */ MountTarget?: string | null; /** 传入该参数用于创建加密云盘,取值固定为ENCRYPT */ Encrypt?: string | null; /** 购买加密盘时自定义密钥,当传入该参数时, Encrypt入参不为空 */ KmsKeyId?: string | null; /** 快照ID,如果传入则根据此快照创建云硬盘,快照类型必须为数据盘快照 */ SnapshotId?: string | null; /** 云硬盘性能,单位:MB/s。使用此参数可给云硬盘购买额外的性能 */ ThroughputPerformance?: number | null; } /** 节点系统盘和数据盘配置 */ declare interface Disk { /** 云盘类型 */ DiskType: string; /** 云盘大小(G) */ DiskSize: number; /** 是否自动化格式盘并挂载 */ AutoFormatAndMount?: boolean; /** 文件系统 */ FileSystem?: string; /** 挂载目录 */ MountTarget?: string; /** 云盘ID */ DiskId?: string | null; } /** 第三方节点 */ declare interface ExternalNodeInfo { /** 第三方节点名称 */ Name?: string; /** CPU核数,单位:核 */ CPU?: number | null; /** 节点内存容量,单位:`GB` */ Memory?: number | null; /** 第三方节点kubelet版本信息 */ K8SVersion?: string | null; } /** 第三方节点池信息 */ declare interface ExternalNodePoolInfo { /** 第三方节点Runtime配置 */ RuntimeConfig?: RuntimeConfig; /** 节点数 */ NodesNum?: number; } /** 过滤器 */ declare interface Filter { /** 属性名称, 若存在多个Filter时,Filter间的关系为逻辑与(AND)关系。 */ Name: string; /** 属性值, 若同一个Filter存在多个Values,同一Filter下Values间的关系为逻辑或(OR)关系。 */ Values: string[]; } /** 机型名称与GPU相关的参数,包括驱动版本,CUDA版本,cuDNN版本,是否开启MIG以及是否开启Fabric等相关配置信息 */ declare interface GPUConfig { /** 机型名称 */ InstanceType: string | null; /** GPU相关的参数,包括驱动版本,CUDA版本,cuDNN版本,是否开启MIG以及是否开启Fabric等 */ GPUParams: GPUParams | null; } /** GPU相关的参数,包括驱动版本,CUDA版本,cuDNN版本,是否开启MIG以及是否开启Fabric */ declare interface GPUParams { /** GPU驱动版本 */ Driver?: string | null; /** CUDA版本 */ CUDA?: string | null; /** CUDNN版本 */ CUDNN?: string | null; /** 是否启用MIG特性 */ MIGEnable?: boolean | null; /** 是否启用Fabric特性 */ Fabric?: boolean | null; /** 自定义驱动下载地址 */ CustomGPUDriver?: string | null; } /** 健康检测规则 */ declare interface HealthCheckPolicy { /** 健康检测策略名称 */ Name: string; /** 健康检测策略规则列表 */ Rules: HealthCheckPolicyRule[]; } /** 健康检测策略和节点池的绑定关系 */ declare interface HealthCheckPolicyBinding { /** 健康检测策略名称 */ Name?: string; /** 规则创建时间 */ CreatedAt?: string; /** 关联节点池数组 */ NodePools?: string[]; } /** 健康检测规则 */ declare interface HealthCheckPolicyRule { /** 健康检测规则 */ Name: string; /** 是否检测此项目 */ Enabled: boolean; /** 是否启用修复 */ AutoRepairEnabled: boolean; } /** 健康检测模板 */ declare interface HealthCheckTemplate { /** 健康检测项 */ Rules: HealthCheckTemplateRule[]; } /** 健康检测模板规则 */ declare interface HealthCheckTemplateRule { /** 健康检测项目名称 */ Name: string; /** 健康检测规则描述 */ Description: string; /** 修复动作 */ RepairAction: string; /** 修复影响 */ RepairEffect: string; /** 是否建议开启检测 */ ShouldEnable: boolean; /** 是否建议修复 */ ShouldRepair: boolean; /** 问题严重程度 */ Severity: string; } /** 集群的实例信息 */ declare interface Instance { /** 实例ID */ InstanceId?: string; /** 节点角色, MASTER, WORKER, ETCD, MASTER_ETCD,ALL, 默认为WORKER */ InstanceRole?: string; /** 实例异常(或者处于初始化中)的原因 */ FailedReason?: string | null; /** 实例的状态- initializing创建中- running 运行中- failed 异常 */ InstanceState?: string; /** 是否不可调度 */ Unschedulable?: boolean | null; /** 添加时间 */ CreatedTime?: string; /** 节点内网IP */ LanIP?: string | null; /** 资源池ID */ NodePoolId?: string | null; /** 原生节点参数 */ Native?: NativeNodeInfo | null; /** 普通节点参数 */ Regular?: RegularNodeInfo | null; /** 超级节点参数 */ Super?: SuperNodeInfo | null; /** 第三方节点参数 */ External?: ExternalNodeInfo | null; /** 节点类型 */ NodeType?: string | null; } /** 描述了k8s集群相关配置与信息。 */ declare interface InstanceAdvancedSettings { /** 该节点属于podCIDR大小自定义模式时,可指定节点上运行的pod数量上限 */ DesiredPodNumber: number | null; /** base64 编码的用户脚本,在初始化节点之前执行,目前只对添加已有节点生效 */ PreStartUserScript: string | null; /** 运行时描述 */ RuntimeConfig?: RuntimeConfig | null; /** base64 编码的用户脚本, 此脚本会在 k8s 组件运行后执行, 需要用户保证脚本的可重入及重试逻辑, 脚本及其生成的日志文件可在节点的 /data/ccs_userscript/ 路径查看, 如果要求节点需要在进行初始化完成后才可加入调度, 可配合 unschedulable 参数使用, 在 userScript 最后初始化完成后, 添加 kubectl uncordon nodename --kubeconfig=/root/.kube/config 命令使节点加入调度 */ UserScript?: string | null; /** 节点相关的自定义参数信息 */ ExtraArgs?: InstanceExtraArgs | null; } /** 包年包月配置 */ declare interface InstanceChargePrepaid { /** 后付费计费周期,单位(月):1,2,3,4,5,6,7, 8,9,10,11,12,24,36,48,60 */ Period?: number; /** 预付费续费方式:- NOTIFY_AND_AUTO_RENEW:通知用户过期,且自动续费 - NOTIFY_AND_MANUAL_RENEW:通知用户过期,但不自动续费(默认)- DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知用户过期,也不自动续费 */ RenewFlag?: string; } /** 节点自定义参数 */ declare interface InstanceExtraArgs { /** kubelet自定义参数,参数格式为["k1=v1", "k1=v2"], 例如["root-dir=/var/lib/kubelet","feature-gates=PodShareProcessNamespace=true,DynamicKubeletConfig=true"] */ Kubelet?: string[] | null; } /** 数值结构 */ declare interface IntOrString { /** 数值类型,0是int, 1是字符串 */ Type: number | null; /** 整数 */ IntVal?: number | null; /** 字符串 */ StrVal?: string | null; } /** 公网带宽 */ declare interface InternetAccessible { /** 带宽 */ MaxBandwidthOut: number; /** 网络计费方式 */ ChargeType: string; /** 带宽包 ID */ BandwidthPackageId?: string; } /** k8s中标签,一般以数组的方式存在 */ declare interface Label { /** map表中的Name */ Name: string; /** map表中的Value */ Value: string; } /** 节点池自定义脚本 */ declare interface LifecycleConfig { /** 节点初始化前自定义脚本 */ PreInit?: string | null; /** 节点初始化后自定义脚本 */ PostInit?: string | null; } /** 节点池弹性伸缩配置 */ declare interface MachineSetScaling { /** 节点池最小副本数 */ MinReplicas?: number; /** 节点池最大副本数 */ MaxReplicas?: number; /** 节点池扩容策略。ZoneEquality:多可用区打散;ZonePriority:首选可用区优先; */ CreatePolicy?: string | null; } /** 托管节点池自动升级配置 */ declare interface MachineUpgradeSettings { /** 是否开启自动升级 */ AutoUpgrade?: boolean; /** 运维窗口 */ UpgradeOptions?: AutoUpgradeOptions; /** 升级项 */ Components?: string[] | null; /** 升级时,最大不可升级的节点数 */ MaxUnavailable?: IntOrString; } /** 托管节点池Management配置 */ declare interface ManagementConfig { /** dns 配置 */ Nameservers?: string[] | null; /** hosts 配置 */ Hosts?: string[] | null; /** 内核参数配置 */ KernelArgs?: string[] | null; } /** 手动加入的节点 */ declare interface ManuallyAdded { /** 加入中的节点数量 */ Joining?: number; /** 初始化中的节点数量 */ Initializing?: number; /** 正常的节点数量 */ Normal?: number; /** 节点总数 */ Total?: number; } /** 节点信息 */ declare interface NativeNodeInfo { /** 节点名称 */ MachineName?: string; /** Machine 状态 */ MachineState?: string; /** Machine 所在可用区 */ Zone?: string; /** 节点计费类型。PREPAID:包年包月;POSTPAID_BY_HOUR:按量计费(默认); */ InstanceChargeType?: string; /** 创建时间 */ CreatedAt?: string; /** Machine 登录状态 */ LoginStatus?: string | null; /** 是否开启缩容保护 */ IsProtectedFromScaleIn?: boolean | null; /** Machine 名字 */ DisplayName?: string | null; /** CPU核数,单位:核 */ CPU?: number; /** GPU核数,单位:核 */ GPU?: number | null; /** 自动续费标识 */ RenewFlag?: string; /** 节点计费模式 */ PayMode?: string; /** 节点内存容量,单位:`GB` */ Memory?: number; /** 节点系统盘配置信息 */ SystemDisk?: Disk; /** 公网带宽相关信息设置 */ InternetAccessible?: InternetAccessible; /** 机型所属机型族 */ InstanceFamily?: string; /** 节点内网 IP */ LanIp?: string; /** 机型 */ InstanceType?: string; /** 包年包月节点计费过期时间 */ ExpiredTime?: string | null; /** 节点外网 IP */ WanIp?: string | null; /** 节点密钥 ID 列表 */ KeyIds?: string[] | null; /** 节点GPU相关配置 */ GPUParams?: GPUParams | null; /** 数据盘列表 */ DataDisks?: DataDisk[] | null; /** 安全组列表 */ SecurityGroupIDs?: string[] | null; /** VPC 唯一 ID */ VpcId?: string; /** 子网唯一 ID */ SubnetId?: string; /** OS的名称 */ OsImage?: string | null; /** **原生节点的 Machine 类型**- Native 表示 CXM 类型的原生节点- NativeCVM 表示 CVM 类型的原生节点 */ MachineType?: string; /** **原生节点对应的实例 ID**- ins-q47ofw6 表示这个实例是一个 CVM 的实例- eks-f8mvyaep 表示这个实例是一个 CXM 的实例 */ InstanceId?: string | null; } /** 原生节点池信息 */ declare interface NativeNodePoolInfo { /** 伸缩配置 */ Scaling?: MachineSetScaling; /** 子网列表 */ SubnetIds?: string[]; /** 安全组列表 */ SecurityGroupIds?: string[] | null; /** 自动升级配置 */ UpgradeSettings?: MachineUpgradeSettings; /** 是否开启自愈能力 */ AutoRepair?: boolean | null; /** 节点计费类型 */ InstanceChargeType?: string; /** 包年包月机型计费配置 */ InstanceChargePrepaid?: InstanceChargePrepaid; /** 系统盘配置 */ SystemDisk?: Disk; /** 密钥 ID 列表 */ KeyIds?: string[] | null; /** Machine 系统配置 */ Management?: ManagementConfig; /** 故障自愈规则名称 */ HealthCheckPolicyName?: string | null; /** 原生节点池hostName模式串 */ HostNamePattern?: string | null; /** kubelet 自定义参数 */ KubeletArgs?: string[] | null; /** 预定义脚本 */ Lifecycle?: LifecycleConfig; /** 运行时根目录 */ RuntimeRootDir?: string; /** 是否开启弹性伸缩 */ EnableAutoscaling?: boolean; /** 机型列表 */ InstanceTypes?: string[]; /** 期望节点数 */ Replicas?: number; /** 就绪 Machine 个数 */ ReadyReplicas?: number; /** 公网带宽设置 */ InternetAccessible?: InternetAccessible; /** 原生节点池数据盘 */ DataDisks?: DataDisk[] | null; /** 原生节点机型 Native, NativeCVM */ MachineType?: string; } /** 节点统计列表 */ declare interface NodeCountSummary { /** 手动管理的节点 */ ManuallyAdded?: ManuallyAdded | null; /** 自动管理的节点 */ AutoscalingAdded?: AutoscalingAdded | null; } /** 节点池信息 */ declare interface NodePool { /** 集群 ID */ ClusterId?: string; /** 节点池 ID */ NodePoolId?: string; /** 节点标签 */ Tags?: TagSpecification[] | null; /** 节点污点 */ Taints?: Taint[] | null; /** 是否开启删除保护 */ DeletionProtection?: boolean | null; /** 节点是否不可调度 */ Unschedulable?: boolean | null; /** 节点池类型 */ Type?: string; /** 节点 Labels */ Labels?: Label[] | null; /** 节点池状态 */ LifeState?: string; /** 创建时间 */ CreatedAt?: string; /** 节点池名称 */ Name?: string; /** 原生节点池参数 */ Native?: NativeNodePoolInfo | null; /** 节点 Annotation 列表 */ Annotations?: Annotation[] | null; /** 超级节点池参数,在Type等于Super该字段才有值 */ Super?: SuperNodePoolInfo | null; /** 普通节点池参数,在Type等于Regular该字段才有值 */ Regular?: RegularNodePoolInfo | null; /** 第三方节点池参数,在Type等于External该字段才有值 */ External?: ExternalNodePoolInfo | null; } /** 普通节点信息 */ declare interface RegularNodeInfo { /** 节点配置 */ InstanceAdvancedSettings?: InstanceAdvancedSettings | null; /** 自动伸缩组ID */ AutoscalingGroupId?: string | null; } /** 普通节点池信息 */ declare interface RegularNodePoolInfo { /** LaunchConfigurationId 配置 */ LaunchConfigurationId?: string; /** AutoscalingGroupId 分组id */ AutoscalingGroupId?: string; /** NodeCountSummary 节点列表 */ NodeCountSummary?: NodeCountSummary; /** 状态信息 */ AutoscalingGroupStatus?: string | null; /** 最大节点数量 */ MaxNodesNum?: number | null; /** 最小节点数量 */ MinNodesNum?: number | null; /** 期望的节点数量 */ DesiredNodesNum?: number | null; /** 节点池osName */ NodePoolOs?: string | null; /** 节点配置 */ InstanceAdvancedSettings?: InstanceAdvancedSettings | null; } /** 运行时配置 */ declare interface RuntimeConfig { /** 运行时类型 */ RuntimeType?: string | null; /** 运行时版本 */ RuntimeVersion?: string | null; /** 运行时根目录 */ RuntimeRootDir?: string | null; } /** 排序信息 */ declare interface SortBy { /** 排序指标 */ FieldName?: string; /** 排序方式 */ OrderType?: string; } /** 超级节点信息 */ declare interface SuperNodeInfo { /** 实例名称 */ Name?: string | null; /** 自动续费标识 */ AutoRenewFlag?: number | null; /** 资源类型 */ ResourceType?: string | null; /** 节点的 CPU 规格,单位:核。 */ CPU?: number | null; /** 节点上 Pod 的 CPU总和,单位:核。 */ UsedCPU?: number | null; /** 节点的内存规格,单位:Gi。 */ Memory?: number | null; /** 节点上 Pod 的内存总和,单位:Gi。 */ UsedMemory?: number | null; /** 可用区 */ Zone?: string | null; /** VPC 唯一 ID */ VpcId?: string | null; /** 子网唯一 ID */ SubnetId?: string | null; /** 生效时间 */ ActiveAt?: string | null; /** 过期时间 */ ExpireAt?: string | null; /** 可调度的单 Pod 最大 CPU 规格 */ MaxCPUScheduledPod?: number | null; /** 实例属性 */ InstanceAttribute?: string | null; } /** 虚拟节点池信息 */ declare interface SuperNodePoolInfo { /** 子网列表 */ SubnetIds?: string[] | null; /** 安全组列表 */ SecurityGroupIds?: string[] | null; } /** 标签绑定的资源类型,当前支持类型:"cluster" */ declare interface Tag { /** 标签键 */ Key?: string; /** 标签值 */ Value?: string; } /** 标签描述列表。通过指定该参数可以同时绑定标签到相应的资源实例,当前仅支持绑定标签到云主机实例。 */ declare interface TagSpecification { /** 标签绑定的资源类型,当前支持类型:1.cluster:集群相关接口,TagSpecification 的 ResourceType 传参为 cluster2.machine:节点池相关接口,如:CreateNodePool, DescribeNodePools 等,TagSpecification 的 ResourceType 传参为 machine */ ResourceType?: string | null; /** 标签对列表 */ Tags?: Tag[] | null; } /** kubernetes Taint */ declare interface Taint { /** Taint的Key */ Key?: string; /** Taint的Value */ Value?: string; /** Taint的Effect */ Effect?: string; } /** 修改原生节点池参数 */ declare interface UpdateNativeNodePoolParam { /** 伸缩配置 */ Scaling?: MachineSetScaling; /** 子网列表 */ SubnetIds?: string[]; /** 安全组列表 */ SecurityGroupIds?: string[]; /** 自动升级配置 */ UpgradeSettings?: MachineUpgradeSettings; /** 是否开启自愈能力 */ AutoRepair?: boolean; /** 节点计费类型变更当前仅支持按量计费转包年包月:- PREPAID */ InstanceChargeType?: string; /** 包年包月机型计费配置 */ InstanceChargePrepaid?: InstanceChargePrepaid; /** 系统盘配置 */ SystemDisk?: Disk; /** Machine 系统配置 */ Management?: ManagementConfig; /** 故障自愈规则名称 */ HealthCheckPolicyName?: string; /** 原生节点池hostName模式串 */ HostNamePattern?: string; /** kubelet 自定义参数 */ KubeletArgs?: string[]; /** 预定义脚本 */ Lifecycle?: LifecycleConfig; /** 运行时根目录 */ RuntimeRootDir?: string; /** 是否开启弹性伸缩 */ EnableAutoscaling?: boolean; /** 机型列表 */ InstanceTypes?: string[]; /** 期望节点数 */ Replicas?: number; /** 是否更新存量节点 */ UpdateExistedNode?: boolean; /** 数据盘列表 */ DataDisks?: DataDisk[]; /** ssh公钥id数组 */ KeyIds?: string[]; /** 节点池 GPU 配置 */ GPUConfigs?: GPUConfig[]; } declare interface CreateHealthCheckPolicyRequest { /** 集群ID */ ClusterId: string; /** 健康检测策略 */ HealthCheckPolicy: HealthCheckPolicy; } declare interface CreateHealthCheckPolicyResponse { /** 健康检测策略名称 */ HealthCheckPolicyName?: string; /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface CreateNodePoolRequest { /** 集群 ID */ ClusterId: string; /** 节点池名称 */ Name: string; /** 节点池类型 */ Type: string; /** 节点 Labels */ Labels?: Label[]; /** 节点污点 */ Taints?: Taint[]; /** 节点标签 */ Tags?: TagSpecification[]; /** 是否开启删除保护 */ DeletionProtection?: boolean; /** 节点是否默认不可调度 */ Unschedulable?: boolean; /** 原生节点池创建参数(Type字段设置为Native时需填写) */ Native?: CreateNativeNodePoolParam; /** 节点 Annotation 列表 */ Annotations?: Annotation[]; } declare interface CreateNodePoolResponse { /** 节点池 ID */ NodePoolId?: string; /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface DeleteClusterMachinesRequest { /** 集群 ID */ ClusterId: string; /** 节点名列表 */ MachineNames: string[]; /** 删除节点时是否缩容节点池,true为缩容 */ EnableScaleDown?: boolean; /** 集群实例删除时的策略:terminate(销毁实例,仅支持按量计费云主机实例)retain(仅移除,保留实例) */ InstanceDeleteMode?: string; } declare interface DeleteClusterMachinesResponse { /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface DeleteHealthCheckPolicyRequest { /** 集群 ID */ ClusterId: string; /** 健康检测策略名称 */ HealthCheckPolicyName: string; } declare interface DeleteHealthCheckPolicyResponse { /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface DeleteNodePoolRequest { /** 集群 ID */ ClusterId: string; /** 节点池 ID */ NodePoolId: string; } declare interface DeleteNodePoolResponse { /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface DescribeClusterInstancesRequest { /** 集群ID */ ClusterId: string; /** 偏移量,默认为0。关于Offset的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 */ Offset?: number; /** 返回数量,默认为20,最大值为100。关于Limit的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 */ Limit?: number; /** 过滤条件列表:InstanceIds(实例ID),InstanceType(实例类型:Regular,Native,Super,External),VagueIpAddress(模糊匹配IP),Labels(k8s节点label),NodePoolNames(节点池名称),VagueInstanceName(模糊匹配节点名),InstanceStates(节点状态),Unschedulable(是否封锁),NodePoolIds(节点池ID) */ Filters?: Filter[]; /** 排序信息 */ SortBy?: SortBy; } declare interface DescribeClusterInstancesResponse { /** 集群中实例总数 */ TotalCount?: number; /** 集群中实例列表 */ InstanceSet?: Instance[]; /** 错误信息集合 */ Errors?: string[]; /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface DescribeHealthCheckPoliciesRequest { /** 集群 ID */ ClusterId: string; /** · HealthCheckPolicyName 按照【健康检测策略名称】进行过滤。 类型:String 必选:否 */ Filters?: Filter[]; /** 最大输出条数,默认20,最大为100 */ Limit?: number; /** 偏移量,默认0 */ Offset?: number; } declare interface DescribeHealthCheckPoliciesResponse { /** 健康检测策略数组 */ HealthCheckPolicies?: HealthCheckPolicy[] | null; /** 数组总数目 */ TotalCount?: number; /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface DescribeHealthCheckPolicyBindingsRequest { /** 集群 ID */ ClusterId: string; /** · HealthCheckPolicyName 按照【健康检测规则名称】进行过滤。 类型:String 必选:否 */ Filter?: Filter[]; /** 最大输出条数,默认20,最大为100 */ Limit?: number; /** 偏移量,默认0 */ Offset?: number; } declare interface DescribeHealthCheckPolicyBindingsResponse { /** 健康检测规则数组 */ HealthCheckPolicyBindings?: HealthCheckPolicyBinding[] | null; /** 健康检测规则数量 */ TotalCount?: number; /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface DescribeHealthCheckTemplateRequest { } declare interface DescribeHealthCheckTemplateResponse { /** 健康检测策略模板 */ HealthCheckTemplate?: HealthCheckTemplate; /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface DescribeNodePoolsRequest { /** 集群 ID */ ClusterId: string; /** 查询过滤条件:· NodePoolsName 按照【节点池名】进行过滤。 类型:String 必选:否· NodePoolsId 按照【节点池id】进行过滤。 类型:String 必选:否· tags 按照【标签键值对】进行过滤。 类型:String 必选:否· tag:tag-key 按照【标签键值对】进行过滤。 类型:String 必选:否 */ Filters?: Filter[]; /** 偏移量,默认0 */ Offset?: number; /** 最大输出条数,默认20,最大为100 */ Limit?: number; } declare interface DescribeNodePoolsResponse { /** 节点池列表 */ NodePools?: NodePool[]; /** 资源总数 */ TotalCount?: number; /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface ModifyHealthCheckPolicyRequest { /** 集群 ID */ ClusterId: string; /** 健康检测策略 */ HealthCheckPolicy: HealthCheckPolicy; } declare interface ModifyHealthCheckPolicyResponse { /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface ModifyNodePoolRequest { /** 集群 ID */ ClusterId: string; /** 节点池 ID */ NodePoolId: string; /** 节点池名称 */ Name?: string; /** 节点 Labels */ Labels?: Label[]; /** 节点污点 */ Taints?: Taint[]; /** 节点标签 */ Tags?: TagSpecification[]; /** 是否开启删除保护 */ DeletionProtection?: boolean; /** 节点是否不可调度 */ Unschedulable?: boolean; /** 原生节点池更新参数 */ Native?: UpdateNativeNodePoolParam; /** 节点 Annotation 列表 */ Annotations?: Annotation[]; } declare interface ModifyNodePoolResponse { /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface RebootMachinesRequest { /** 集群 ID */ ClusterId: string; /** 节点名字列表,一次请求,传入节点数量上限为100个 */ MachineNames: string[]; /** 实例的关闭模式。取值范围:soft_first:表示在正常关闭失败后进行强制关闭hard:直接强制关闭soft:仅软关机默认取值:soft。 */ StopType?: string; } declare interface RebootMachinesResponse { /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface SetMachineLoginRequest { /** 集群 ID */ ClusterId: string; /** 节点名称 */ MachineName: string; /** 密钥 ID 列表 */ KeyIds?: string[]; } declare interface SetMachineLoginResponse { /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface StartMachinesRequest { /** 集群 ID */ ClusterId: string; /** 节点名字列表,一次请求,传入节点数量上限为100个 */ MachineNames: string[]; } declare interface StartMachinesResponse { /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare interface StopMachinesRequest { /** 集群 ID */ ClusterId: string; /** 节点名字列表,一次请求,传入节点数量上限为100个 */ MachineNames: string[]; /** 实例的关闭模式。取值范围:soft_first:表示在正常关闭失败后进行强制关闭hard:直接强制关闭soft:仅软关机 */ StopType?: string; } declare interface StopMachinesResponse { /** 唯一请求 ID,每次请求都会返回。 */ RequestId?: string; } declare namespace V20180525 { type VersionHeader = { headers: { 'X-TC-Version': '2018-05-25' } } /** addon的具体描述 */ interface Addon { /** addon名称 */ AddonName?: string; /** addon的版本 */ AddonVersion?: string; /** addon的参数,是一个json格式的base64转码后的字符串 */ RawValues?: string; /** addon的状态:- Installing:安装中- Upgrading:升级中- Terminating:删除中- Succeeded:安装/升级成功- InstallFailed:安装失败- UpgradFailed:升级失败 */ Phase?: string; /** addon失败的原因 */ Reason?: string; /** addon的创建时间 */ CreateTime?: string; } /** 注释 */ interface AnnotationValue { /** 注释键 */ Name: string; /** 注释值 */ Value: string; } /** app所支持的chart */ interface AppChart { /** chart名称 */ Name?: string; /** chart的标签 */ Label?: string; /** chart的版本 */ LatestVersion?: string; } /** 集群关联的伸缩组最大实例数最小值实例数 */ interface AutoScalingGroupRange { /** 伸缩组最小实例数 */ MinSize?: number; /** 伸缩组最大实例数 */ MaxSize?: number; } /** 自动变配集群等级 */ interface AutoUpgradeClusterLevel { /** 是否开启自动变配集群等级 */ IsAutoUpgrade: boolean; } /** 自动扩缩容的节点 */ interface AutoscalingAdded { /** 正在加入中的节点数量 */ Joining?: number; /** 初始化中的节点数量 */ Initializing?: number; /** 正常的节点数量 */ Normal?: number; /** 节点总数 */ Total?: number; } /** 仓储仓库信息 */ interface BackupStorageLocation { /** 备份仓库名称 */ Name?: string; /** 存储仓库所属地域,比如COS广州(ap-guangzhou) */ StorageRegion?: string; /** 存储服务提供方,默认腾讯云 */ Provider?: string; /** 对象存储桶名称,如果是COS必须是tke-backup-前缀开头 */ Bucket?: string; /** 对象存储桶路径 */ Path?: string; /** 存储仓库状态- Available: 可用- Unavailable: 不可用 */ State?: string; /** 详细状态信息 */ Message?: string; /** 最后一次检查时间 */ LastValidationTime?: string; } /** cuDNN的版本信息 */ interface CUDNN { /** cuDNN的名字 */ Name: string; /** cuDNN的版本 */ Version: string; /** cuDNN的Dev名字 */ DevName?: string; /** cuDNN的Doc名字 */ DocName?: string; } /** cloudrun安全特性能力 */ interface Capabilities { /** 启用安全能力项列表 */ Add?: string[] | null; /** 禁用安全能力向列表 */ Drop?: string[] | null; } /** EKS Instance CBS volume */ interface CbsVolume { /** 腾讯云cbs盘Id */ CbsDiskId: string; /** cbs volume 数据卷名称 */ Name: string; } /** 集群信息结构体 */ interface Cluster { /** 集群ID */ ClusterId?: string; /** 集群名称 */ ClusterName?: string; /** 集群描述 */ ClusterDescription?: string; /** 集群版本(默认值为1.10.5) */ ClusterVersion?: string; /** 集群系统。centos7.2x86_64 或者 ubuntu16.04.1 LTSx86_64,默认取值为ubuntu16.04.1 LTSx86_64 */ ClusterOs?: string; /** 集群类型,托管集群:MANAGED_CLUSTER,独立集群:INDEPENDENT_CLUSTER。 */ ClusterType?: string; /** 集群网络相关参数 */ ClusterNetworkSettings?: ClusterNetworkSettings; /** 集群当前node数量 */ ClusterNodeNum?: number; /** 集群所属的项目ID */ ProjectId?: number; /** 标签描述列表。 */ TagSpecification?: TagSpecification[] | null; /** 集群状态 (Trading 集群开通中,Creating 创建中,Running 运行中,Deleting 删除中,Idling 闲置中,Recovering 唤醒中,Scaling 规模调整中,Upgrading 升级中,WaittingForConnect 等待注册,Trading 集群开通中,Isolated 欠费隔离中,Pause 集群升级暂停,NodeUpgrading 节点升级中,RuntimeUpgrading 节点运行时升级中,MasterScaling Master扩缩容中,ClusterLevelUpgrading 调整规格中,ResourceIsolate 隔离中,ResourceIsolated 已隔离,ResourceReverse 冲正中,Abnormal 异常) */ ClusterStatus?: string; /** 集群属性(包括集群不同属性的MAP,属性字段包括NodeNameType (lan-ip模式和hostname 模式,默认无lan-ip模式)) */ Property?: string; /** 集群当前master数量 */ ClusterMaterNodeNum?: number; /** 集群使用镜像id */ ImageId?: string; /** OsCustomizeType 系统定制类型 */ OsCustomizeType?: string; /** 集群运行环境docker或container */ ContainerRuntime?: string; /** 创建时间 */ CreatedTime?: string; /** 删除保护开关 */ DeletionProtection?: boolean; /** 集群是否开启第三方节点支持 */ EnableExternalNode?: boolean; /** 集群等级,针对托管集群生效 */ ClusterLevel?: string; /** 自动变配集群等级,针对托管集群生效 */ AutoUpgradeClusterLevel?: boolean; /** 是否开启QGPU共享 */ QGPUShareEnable?: boolean; /** 运行时版本 */ RuntimeVersion?: string; /** 集群当前etcd数量 */ ClusterEtcdNodeNum?: number; /** 本地专用集群Id */ CdcId?: string; } /** 集群高级配置 */ interface ClusterAdvancedSettings { /** 是否启用集群节点自动扩缩容(创建集群流程不支持开启此功能) */ AsEnabled?: boolean; /** 是否开启审计开关 */ AuditEnabled?: boolean; /** 审计日志上传到的topic */ AuditLogTopicId?: string; /** 审计日志上传到的logset日志集 */ AuditLogsetId?: string; /** 自定义模式下的基础pod数量 */ BasePodNumber?: number; /** 启用 CiliumMode 的模式,空值表示不启用,“clusterIP” 表示启用 Cilium 支持 ClusterIP */ CiliumMode?: string; /** 集群使用的runtime类型,包括"docker"和"containerd"两种类型,默认为"docker" */ ContainerRuntime?: string; /** 是否启用 DataPlaneV2(cilium替代kube-proxy) */ DataPlaneV2?: boolean; /** 是否启用集群删除保护 */ DeletionProtection?: boolean; /** 是否开节点podCIDR大小的自定义模式 */ EnableCustomizedPodCIDR?: boolean; /** 元数据拆分存储Etcd配置 */ EtcdOverrideConfigs?: EtcdOverrideConfig[]; /** 集群自定义参数 */ ExtraArgs?: ClusterExtraArgs; /** 是否启用IPVS */ IPVS?: boolean; /** 集群VPC-CNI模式下是否是双栈集群,默认false,表明非双栈集群。 */ IsDualStack?: boolean; /** 集群VPC-CNI模式是否为非固定IP,默认: FALSE 固定IP。 */ IsNonStaticIpMode?: boolean; /** 集群的网络代理模型,目前tke集群支持的网络代理模式有三种:iptables,ipvs,ipvs-bpf,此参数仅在使用ipvs-bpf模式时使用,三种网络模式的参数设置关系如下:iptables模式:IPVS和KubeProxyMode都不设置ipvs模式: 设置IPVS为true, KubeProxyMode不设置ipvs-bpf模式: 设置KubeProxyMode为kube-proxy-bpf使用ipvs-bpf的网络模式需要满足以下条件:1. 集群版本必须为1.14及以上;2. 系统镜像必须是: Tencent Linux 2.4; */ KubeProxyMode?: string; /** 集群网络类型,默认为GR。- GR: 全局路由- VPC-CNI: VPC-CNI模式- CiliumOverlay: CiliumOverlay模式 */ NetworkType?: string; /** 集群中节点NodeName类型(包括 hostname,lan-ip两种形式,默认为lan-ip。如果开启了hostname模式,创建节点时需要设置HostName参数,并且InstanceName需要和HostName一致) */ NodeNameType?: string; /** 是否开启QGPU共享 */ QGPUShareEnable?: boolean; /** 运行时版本 */ RuntimeVersion?: string; /** 区分共享网卡多IP模式和独立网卡模式,共享网卡多 IP 模式填写"tke-route-eni",独立网卡模式填写"tke-direct-eni",默认为共享网卡模式 */ VpcCniType?: string; } /** 集群关联的伸缩组信息 */ interface ClusterAsGroup { /** 伸缩组ID */ AutoScalingGroupId?: string; /** 伸缩组状态(开启 enabled 开启中 enabling 关闭 disabled 关闭中 disabling 更新中 updating 删除中 deleting 开启缩容中 scaleDownEnabling 关闭缩容中 scaleDownDisabling) */ Status?: string; /** 节点是否设置成不可调度 */ IsUnschedulable?: boolean; /** 伸缩组的label列表 */ Labels?: Label[]; /** 创建时间 */ CreatedTime?: string; } /** 集群伸缩组属性 */ interface ClusterAsGroupAttribute { /** 伸缩组ID */ AutoScalingGroupId?: string; /** 是否开启 */ AutoScalingGroupEnabled?: boolean; /** 伸缩组最大最小实例数 */ AutoScalingGroupRange?: AutoScalingGroupRange; } /** 集群弹性伸缩配置 */ interface ClusterAsGroupOption { /** 是否开启缩容 */ IsScaleDownEnabled?: boolean | null; /** 多伸缩组情况下扩容选择算法(random 随机选择,most-pods 最多类型的Pod least-waste 最少的资源浪费,默认为random) */ Expander?: string; /** 最大并发缩容数 */ MaxEmptyBulkDelete?: number | null; /** 集群扩容后多少分钟开始判断缩容(默认为10分钟) */ ScaleDownDelay?: number | null; /** 节点连续空闲多少分钟后被缩容(默认为 10分钟) */ ScaleDownUnneededTime?: number | null; /** 节点资源使用量低于多少(百分比)时认为空闲(默认: 50(百分比)) */ ScaleDownUtilizationThreshold?: number | null; /** 含有本地存储Pod的节点是否不缩容(默认: true) */ SkipNodesWithLocalStorage?: boolean | null; /** 含有kube-system namespace下非DaemonSet管理的Pod的节点是否不缩容 (默认: true) */ SkipNodesWithSystemPods?: boolean | null; /** 计算资源使用量时是否默认忽略DaemonSet的实例(默认值: False,不忽略) */ IgnoreDaemonSetsUtilization?: boolean | null; /** CA做健康性判断的个数,默认3,即超过OkTotalUnreadyCount个数后,CA会进行健康性判断。 */ OkTotalUnreadyCount?: number | null; /** 未就绪节点的最大百分比,此后CA会停止操作 */ MaxTotalUnreadyPercentage?: number | null; /** 表示未准备就绪的节点在有资格进行缩减之前应该停留多长时间 */ ScaleDownUnreadyTime?: number | null; /** CA删除未在Kubernetes中注册的节点之前等待的时间 */ UnregisteredNodeRemovalTime?: number | null; } /** 描述集群的基本配置信息 */ interface ClusterBasicSettings { /** 集群操作系统,支持设置公共镜像(字段传相应镜像Name)和自定义镜像(字段传相应镜像ID),详情参考:https://cloud.tencent.com/document/product/457/68289 */ ClusterOs?: string; /** 集群版本,默认值为1.10.5 */ ClusterVersion?: string; /** 集群名称 */ ClusterName?: string; /** 集群描述 */ ClusterDescription?: string; /** 私有网络ID,形如vpc-e55paxnt。创建托管空集群时必传。 */ VpcId?: string; /** 集群内新增资源所属项目ID。 */ ProjectId?: number; /** 标签描述列表。通过指定该参数可以同时绑定标签到相应的资源实例,当前仅支持绑定标签到集群实例。 */ TagSpecification?: TagSpecification[]; /** 容器的镜像版本,"DOCKER_CUSTOMIZE"(容器定制版),"GENERAL"(普通版本,默认值) */ OsCustomizeType?: string; /** 是否开启节点的默认安全组(默认: 否,Alpha特性) */ NeedWorkSecurityGroup?: boolean; /** 控制面子网信息,仅在以下场景使用时要求必填。- 容器网络插件为CiliumOverlay时,TKE会从该子网获取2个IP用来创建内网负载均衡。- 创建支持CDC的托管集群,且网络插件为VPC-CNI时,要求预留至少12个IP。 */ SubnetId?: string; /** 集群等级,针对托管集群生效 */ ClusterLevel?: string; /** 自动变配集群等级,针对托管集群生效 */ AutoUpgradeClusterLevel?: AutoUpgradeClusterLevel; } /** 集群容器网络相关参数 */ interface ClusterCIDRSettings { /** 用于分配集群容器和服务 IP 的 CIDR,不得与 VPC CIDR 冲突,也不得与同 VPC 内其他集群 CIDR 冲突。且网段范围必须在内网网段内,例如:10.1.0.0/14, 192.168.0.1/18,172.16.0.0/16。 */ ClusterCIDR?: string; /** 是否忽略 ClusterCIDR 冲突错误, 默认不忽略 */ IgnoreClusterCIDRConflict?: boolean; /** 集群中每个Node上最大的Pod数量。取值范围16~256。不为2的幂值时会向上取最接近的2的幂值。 */ MaxNodePodNum?: number; /** 集群最大的service数量。取值范围32~32768,不为2的幂值时会向上取最接近的2的幂值。默认值256 */ MaxClusterServiceNum?: number; /** 用于分配集群服务 IP 的 CIDR,不得与 VPC CIDR 冲突,也不得与同 VPC 内其他集群 CIDR 冲突。且网段范围必须在内网网段内,例如:10.1.0.0/14, 192.168.0.1/18,172.16.0.0/16。 */ ServiceCIDR?: string; /** VPC-CNI网络模式下,弹性网卡的子网Id。 */ EniSubnetIds?: string[]; /** VPC-CNI网络模式下,弹性网卡IP的回收时间,取值范围[300,15768000) */ ClaimExpiredSeconds?: number; /** 是否忽略 ServiceCIDR 冲突错误, 仅在 VPC-CNI 模式生效,默认不忽略 */ IgnoreServiceCIDRConflict?: boolean; } /** 集群创建过程 */ interface ClusterCondition { /** 集群创建过程类型 */ Type?: string; /** 集群创建过程状态 */ Status?: string; /** 最后一次探测到该状态的时间 */ LastProbeTime?: string; /** 最后一次转换到该过程的时间 */ LastTransitionTime?: string; /** 转换到该过程的简明原因 */ Reason?: string; /** 转换到该过程的更多信息 */ Message?: string; } /** 接入k8s 的认证信息 */ interface ClusterCredential { /** CA 根证书 */ CACert: string; /** 认证用的Token */ Token?: string; } /** 集群master自定义参数 */ interface ClusterExtraArgs { /** etcd自定义参数,只支持独立集群 */ Etcd?: string[] | null; /** kube-apiserver自定义参数,参数格式为["k1=v1", "k1=v2"], 例如["max-requests-inflight=500","feature-gates=PodShareProcessNamespace=true,DynamicKubeletConfig=true"] */ KubeAPIServer?: string[] | null; /** kube-controller-manager自定义参数 */ KubeControllerManager?: string[] | null; /** kube-scheduler自定义参数 */ KubeScheduler?: string[] | null; } /** 弹性容器集群内网访问LB信息 */ interface ClusterInternalLB { /** 是否开启内网访问LB */ Enabled: boolean; /** 内网访问LB关联的子网Id */ SubnetId?: string | null; } /** 托管集群等级属性 */ interface ClusterLevelAttribute { /** 集群等级 */ Name?: string; /** 等级名称 */ Alias?: string; /** 节点数量 */ NodeCount?: number; /** Pod数量 */ PodCount?: number; /** Configmap数量 */ ConfigMapCount?: number; /** ReplicaSets数量 */ RSCount?: number; /** CRD数量 */ CRDCount?: number; /** 是否启用 */ Enable?: boolean; /** 其他资源数量 */ OtherCount?: number; } /** 集群等级变配记录 */ interface ClusterLevelChangeRecord { /** 记录ID */ ID?: string; /** 集群ID */ ClusterID?: string; /** 变配状态:trading 发货中,upgrading 变配中,success 变配成功,failed 变配失败。 */ Status?: string; /** 状态描述 */ Message?: string; /** 变配前规模 */ OldLevel?: string; /** 变配后规模 */ NewLevel?: string; /** 变配触发类型:manual 手动,auto 自动 */ TriggerType?: string; /** 创建时间 */ CreatedAt?: string; /** 开始时间 */ StartedAt?: string; /** 结束时间 */ EndedAt?: string; } /** 集群网络相关的参数 */ interface ClusterNetworkSettings { /** 用于分配集群容器和服务 IP 的 CIDR,不得与 VPC CIDR 冲突,也不得与同 VPC 内其他集群 CIDR 冲突 */ ClusterCIDR?: string; /** 是否忽略 ClusterCIDR 冲突错误, 默认不忽略 */ IgnoreClusterCIDRConflict?: boolean; /** 集群中每个Node上最大的Pod数量(默认为256) */ MaxNodePodNum?: number; /** 集群最大的service数量(默认为256) */ MaxClusterServiceNum?: number; /** 是否启用IPVS(默认不开启) */ Ipvs?: boolean; /** 集群的VPCID(如果创建空集群,为必传值,否则自动设置为和集群的节点保持一致) */ VpcId?: string; /** 网络插件是否启用CNI(默认开启) */ Cni?: boolean; /** service的网络模式,当前参数只适用于ipvs+bpf模式 */ KubeProxyMode?: string; /** 用于分配service的IP range,不得与 VPC CIDR 冲突,也不得与同 VPC 内其他集群 CIDR 冲突 */ ServiceCIDR?: string; /** 集群关联的容器子网 */ Subnets?: string[] | null; /** 是否忽略 ServiceCIDR 冲突错误, 仅在 VPC-CNI 模式生效,默认不忽略 */ IgnoreServiceCIDRConflict?: boolean; /** 集群VPC-CNI模式是否为非双栈集群,默认false,非双栈。 */ IsDualStack?: boolean; /** 用于分配service的IP range,由系统自动分配 */ Ipv6ServiceCIDR?: string; /** 集群Cilium Mode配置- clusterIP */ CiliumMode?: string; /** 控制面子网信息,仅在以下场景返回。- 容器网络插件为CiliumOverlay。- 支持CDC的托管集群,且网络插件为VPC-CNI。 */ SubnetId?: string; /** 是否启用了 DataPlaneV2(cilium替代kube-proxy) */ DataPlaneV2?: boolean; } /** 集群属性 */ interface ClusterProperty { /** 节点hostname命名模式 */ NodeNameType?: string; } /** 弹性容器集群公网访问负载均衡信息 */ interface ClusterPublicLB { /** 是否开启公网访问LB */ Enabled: boolean; /** 允许访问的来源CIDR列表 */ AllowFromCidrs?: string[]; /** 安全策略放通单个IP或CIDR(例如: "192.168.1.0/24",默认为拒绝所有) */ SecurityPolicies?: string[]; /** 外网访问相关的扩展参数,格式为json */ ExtraParam?: string; /** 新内外网功能,需要传递安全组 */ SecurityGroup?: string; } /** 集群状态信息 */ interface ClusterStatus { /** 集群Id */ ClusterId?: string; /** 集群状态 */ ClusterState?: string; /** 集群下机器实例的状态 */ ClusterInstanceState?: string; /** 集群是否开启监控 */ ClusterBMonitor?: boolean; /** 集群创建中的节点数,-1表示获取节点状态超时,-2表示获取节点状态失败 */ ClusterInitNodeNum?: number; /** 集群运行中的节点数,-1表示获取节点状态超时,-2表示获取节点状态失败 */ ClusterRunningNodeNum?: number; /** 集群异常的节点数,-1表示获取节点状态超时,-2表示获取节点状态失败 */ ClusterFailedNodeNum?: number; /** 集群已关机的节点数,-1表示获取节点状态超时,-2表示获取节点状态失败 */ ClusterClosedNodeNum?: number; /** 集群关机中的节点数,-1表示获取节点状态超时,-2表示获取节点状态失败 */ ClusterClosingNodeNum?: number; /** 集群是否开启删除保护 */ ClusterDeletionProtection?: boolean; /** 集群是否可审计 */ ClusterAuditEnabled?: boolean; } /** 集群版本信息 */ interface ClusterVersion { /** 集群ID */ ClusterId?: string; /** 集群主版本号列表,例如1.18.4 */ Versions?: string[]; } /** 账户UIN与客户端证书CommonName的映射 */ interface CommonName { /** 子账户UIN */ SubaccountUin?: string; /** 子账户客户端证书中的CommonName字段 */ CN?: string; } /** EKS Instance Container容器 */ interface Container { /** 镜像 */ Image: string; /** 容器名 */ Name: string; /** 容器启动参数 */ Args?: string[]; /** 容器启动命令 */ Commands?: string[]; /** CPU,制改容器最多可使用的核数,该值不可超过容器实例的总核数。单位:核。 */ Cpu?: number; /** 当前状态 */ CurrentState?: ContainerState; /** 容器内操作系统的环境变量 */ EnvironmentVars?: EnvironmentVariable[]; /** Gpu限制 */ GpuLimit?: number | null; /** 存活探针 */ LivenessProbe?: LivenessOrReadinessProbe | null; /** 内存,限制该容器最多可使用的内存值,该值不可超过容器实例的总内存值。单位:GiB */ Memory?: number; /** 就绪探针 */ ReadinessProbe?: LivenessOrReadinessProbe | null; /** 重启次数 */ RestartCount?: number | null; /** 容器的安全上下文 */ SecurityContext?: SecurityContext | null; /** 数据卷挂载信息 */ VolumeMounts?: VolumeMount[] | null; /** 容器工作目录 */ WorkingDir?: string; } /** 容器状态 */ interface ContainerState { /** 容器运行退出码 */ ExitCode?: number | null; /** 容器运行结束时间 */ FinishTime?: string | null; /** 容器状态信息 */ Message?: string | null; /** 容器状态 Reason */ Reason?: string | null; /** 容器重启次数 */ RestartCount?: number | null; /** 容器运行开始时间 */ StartTime?: string | null; /** 容器状态:created, running, exited, unknown */ State?: string; } /** 集群中控制器的状态描述 */ interface ControllerStatus { /** 控制器的名字 */ Name: string; /** 控制器是否开启 */ Enabled: boolean; } /** 自定义驱动信息 */ interface CustomDriver { /** 自定义GPU驱动地址链接 */ Address?: string; } /** 自定义DNS配置 */ interface DNSConfig { /** DNS 服务器IP地址列表 */ Nameservers?: string[]; /** 对象选项列表,每个对象由name和value(可选)构成 */ Options?: DNSConfigOption[]; /** DNS搜索域列表 */ Searches?: string[]; } /** DNS配置选项 */ interface DNSConfigOption { /** 配置项名称 */ Name: string | null; /** 项值 */ Value: string | null; } /** 描述了k8s节点数据盘相关配置与信息。 */ interface DataDisk { /** 云盘类型 */ DiskType: string; /** 文件系统(ext3/ext4/xfs) */ FileSystem: string; /** 云盘大小(G) */ DiskSize: number; /** 是否自动化格式盘并挂载 */ AutoFormatAndMount: boolean; /** 挂载目录 */ MountTarget: string; /** 挂载设备名或分区名,当且仅当添加已有节点时需要 */ DiskPartition: string; } /** Eks 自定义域名服务器 配置 */ interface DnsServerConf { /** 域名。空字符串表示所有域名。 */ Domain: string; /** dns 服务器地址列表。地址格式 ip:port */ DnsServers: string[]; } /** GPU驱动和CUDA的版本信息 */ interface DriverVersion { /** GPU驱动或者CUDA的名字 */ Name: string; /** GPU驱动或者CUDA的版本 */ Version: string; } /** ECM增强服务 */ interface ECMEnhancedService { /** 是否开启云监控服务 */ SecurityService?: ECMRunMonitorServiceEnabled; /** 是否开启云镜服务 */ MonitorService?: ECMRunSecurityServiceEnabled; } /** ECM云监控服务 */ interface ECMRunMonitorServiceEnabled { /** 是否开启 */ Enabled?: boolean; } /** ECM云镜服务 */ interface ECMRunSecurityServiceEnabled { /** 是否开启 */ Enabled?: boolean; /** 云镜版本:0 基础版,1 专业版 */ Version?: number; } /** ECM实例可用区及对应的实例创建数目及运营商的组合 */ interface ECMZoneInstanceCountISP { /** 创建实例的可用区 */ Zone: string; /** 在当前可用区欲创建的实例数目 */ InstanceCount: number; /** 运营商 */ ISP: string; } /** 边缘容器参数描述 */ interface EdgeArgsFlag { /** 参数名 */ Name?: string; /** 参数类型 */ Type?: string; /** 参数描述 */ Usage?: string; /** 参数默认值 */ Default?: string; /** 参数可选范围(目前包含range和in两种,"[]"代表range,如"[1, 5]"表示参数必须>=1且 <=5, "()"代表in, 如"('aa', 'bb')"表示参数只能为字符串'aa'或者'bb',该参数为空表示不校验) */ Constraint?: string; } /** 边缘容器集群可用的自定义参数 */ interface EdgeAvailableExtraArgs { /** kube-apiserver可用的自定义参数 */ KubeAPIServer?: EdgeArgsFlag[]; /** kube-controller-manager可用的自定义参数 */ KubeControllerManager?: EdgeArgsFlag[]; /** kube-scheduler可用的自定义参数 */ KubeScheduler?: EdgeArgsFlag[]; /** kubelet可用的自定义参数 */ Kubelet?: EdgeArgsFlag[]; } /** 边缘计算集群信息 */ interface EdgeCluster { /** 集群Id */ ClusterId: string; /** 集群名称 */ ClusterName: string; /** Vpc Id */ VpcId: string; /** 集群pod cidr */ PodCIDR: string; /** 集群 service cidr */ ServiceCIDR: string; /** k8s 版本号 */ K8SVersion: string; /** 集群状态 */ Status?: string; /** 集群描述信息 */ ClusterDesc?: string; /** 集群创建时间 */ CreatedTime?: string; /** 边缘集群版本 */ EdgeClusterVersion?: string; /** 节点最大Pod数 */ MaxNodePodNum?: number; /** 集群高级设置 */ ClusterAdvancedSettings?: EdgeClusterAdvancedSettings; /** 边缘容器集群级别 */ Level?: string; /** 是否支持自动提升集群配置 */ AutoUpgradeClusterLevel?: boolean; /** 集群付费模式,支持POSTPAID_BY_HOUR或者PREPAID */ ChargeType?: string; /** 边缘集群组件的版本 */ EdgeVersion?: string; /** 集群绑定的云标签 */ TagSpecification?: TagSpecification | null; } /** 边缘容器集群高级配置 */ interface EdgeClusterAdvancedSettings { /** 集群自定义参数 */ ExtraArgs?: EdgeClusterExtraArgs | null; /** 运行时类型,支持"docker"和"containerd",默认为docker */ Runtime?: string; /** 集群kube-proxy转发模式,支持"iptables"和"ipvs",默认为iptables */ ProxyMode?: string; } /** 边缘容器集群master自定义参数 */ interface EdgeClusterExtraArgs { /** kube-apiserver自定义参数,参数格式为["k1=v1", "k1=v2"], 例如["max-requests-inflight=500","feature-gates=PodShareProcessNamespace=true,DynamicKubeletConfig=true"] */ KubeAPIServer?: string[]; /** kube-controller-manager自定义参数 */ KubeControllerManager?: string[]; /** kube-scheduler自定义参数 */ KubeScheduler?: string[]; } /** 边缘计算集群内网访问LB信息 */ interface EdgeClusterInternalLB { /** 是否开启内网访问LB */ Enabled: boolean; /** 内网访问LB关联的子网Id */ SubnetId?: string[]; } /** 边缘计算集群公网访问负载均衡信息 */ interface EdgeClusterPublicLB { /** 是否开启公网访问LB */ Enabled: boolean; /** 允许访问的公网cidr */ AllowFromCidrs?: string[]; } /** 用以帮助用户自动创建EIP的配置 */ interface EipAttribute { /** 容器实例删除后,EIP是否释放。Never表示不释放,其他任意值(包括空字符串)表示释放。 */ DeletePolicy: string; /** EIP线路类型。默认值:BGP。已开通静态单线IP白名单的用户,可选值:CMCC:中国移动CTCC:中国电信CUCC:中国联通注意:仅部分地域支持静态单线IP。 */ InternetServiceProvider?: string | null; /** EIP出带宽上限,单位:Mbps。 */ InternetMaxBandwidthOut?: number | null; } /** EksContainerInstance实例类型 */ interface EksCi { /** 自动为用户创建的EipId */ AutoCreatedEipId?: string; /** 为容器实例关联 CAM 角色,value 填写 CAM 角色名称,容器实例可获取该 CAM 角色包含的权限策略,方便 容器实例 内的程序进行如购买资源、读写存储等云资源操作。 */ CamRoleName?: string; /** 容器列表 */ Containers?: Container[]; /** CPU大小 */ Cpu?: number; /** CPU类型 */ CpuType?: string; /** 接到请求后的系统创建时间。 */ CreationTime?: string; /** 容器实例绑定的Eip地址,注意可能为空 */ EipAddress?: string | null; /** EKS Container Instance Id */ EksCiId?: string; /** EKS Container Instance Name */ EksCiName?: string; /** 数据卷信息 */ EksCiVolume?: EksCiVolume; /** GPU卡数量 */ GpuCount?: number; /** GPU类型。如无使用GPU则不返回 */ GpuType?: string; /** 初始化容器列表 */ InitContainers?: Container[] | null; /** 内存大小 */ Memory?: number; /** 容器状态是否持久化 */ PersistStatus?: boolean | null; /** 内网ip地址 */ PrivateIp?: string; /** 容器组的重启策略 */ RestartPolicy?: string; /** 容器组运行的安全上下文 */ SecurityContext?: SecurityContext | null; /** 安全组ID */ SecurityGroupIds?: string[]; /** 返回容器组创建状态:Pending,Running,Succeeded,Failed。其中:Failed (运行失败)指的容器组退出,RestartPolilcy为Never, 有容器exitCode非0;Succeeded(运行成功)指的是容器组退出了,RestartPolicy为Never或onFailure,所有容器exitCode都为0;Failed和Succeeded这两种状态都会停止运行,停止计费。Pending是创建中,Running是 运行中。 */ Status?: string; /** 实例所属子网Id */ SubnetId?: string; /** 容器全部成功退出后的时间 */ SucceededTime?: string; /** 实例所属VPC的Id */ VpcId?: string; } /** EksCi地域信息 */ interface EksCiRegionInfo { /** 地域别名,形如gz */ Alias?: string; /** 地域名,形如ap-guangzhou */ RegionName?: string; /** 地域ID */ RegionId?: number; } /** EKS Instance Volume, 可选包括CbsVolume和NfsVolume */ interface EksCiVolume { /** Cbs Volume */ CbsVolumes?: CbsVolume[] | null; /** Nfs Volume */ NfsVolumes?: NfsVolume[] | null; } /** 弹性集群信息 */ interface EksCluster { /** 集群Id */ ClusterId: string; /** 集群名称 */ ClusterName: string; /** Vpc Id */ VpcId: string; /** 子网列表 */ SubnetIds: string[]; /** k8s 版本号 */ K8SVersion: string; /** 集群状态(running 运行中,initializing 初始化中,Failed 异常,Idling 空闲中,Activating 激活中,Terminating 删除中) */ Status?: string; /** 集群描述信息 */ ClusterDesc?: string; /** 集群创建时间 */ CreatedTime?: string; /** Service 子网Id */ ServiceSubnetId?: string; /** 集群的自定义dns 服务器信息 */ DnsServers?: DnsServerConf[]; /** 将来删除集群时是否要删除cbs。默认为 FALSE */ NeedDeleteCbs?: boolean; /** 是否在用户集群内开启Dns。默认为TRUE */ EnableVpcCoreDNS?: boolean; /** 标签描述列表。 */ TagSpecification?: TagSpecification[] | null; } /** 描述了实例的增强服务启用情况与其设置,如云安全,云监控等实例 Agent */ interface EnhancedService { /** 开启云安全服务。若不指定该参数,则默认开启云安全服务。 */ SecurityService?: RunSecurityServiceEnabled; /** 开启云监控服务。若不指定该参数,则默认开启云监控服务。 */ MonitorService?: RunMonitorServiceEnabled; /** 开启云自动化助手服务(TencentCloud Automation Tools,TAT)。若不指定该参数,则公共镜像默认开启云自动化助手服务,其他镜像默认不开启云自动化助手服务。 */ AutomationService?: RunAutomationServiceEnabled; } /** EnvironmentVariable */ interface EnvironmentVariable { /** key */ Name?: string; /** val */ Value?: string; } /** 元数据拆分存储Etcd配置 */ interface EtcdOverrideConfig { /** k8s资源,支持核心资源,控制类资源,配置及敏感资源 */ Resources: string[]; } /** 服务事件 */ interface Event { /** pod名称 */ PodName?: string; /** 事件原因内容 */ Reason?: string; /** 事件类型 */ Type?: string; /** 事件出现次数 */ Count?: number; /** 事件第一次出现时间 */ FirstTimestamp?: string; /** 事件最后一次出现时间 */ LastTimestamp?: string; /** 事件内容 */ Message?: string; } /** 探针在容器内执行检测命令参数类型 */ interface Exec { /** 容器内检测的命令 */ Commands?: string[] | null; } /** 已经存在的实例信息 */ interface ExistedInstance { /** 实例是否支持加入集群(TRUE 可以加入 FALSE 不能加入)。 */ Usable?: boolean; /** 实例不支持加入的原因。 */ UnusableReason?: string; /** 实例已经所在的集群ID。 */ AlreadyInCluster?: string; /** 实例ID形如:ins-e55paxnt。 */ InstanceId?: string; /** 实例名称。 */ InstanceName?: string; /** 实例主网卡的内网IP列表。 */ PrivateIpAddresses?: string[] | null; /** 实例主网卡的公网IP列表。 */ PublicIpAddresses?: string[] | null; /** 创建时间。按照ISO8601标准表示,并且使用UTC时间。格式为:YYYY-MM-DDThh:mm:ssZ。 */ CreatedTime?: string; /** 实例的CPU核数,单位:核。 */ CPU?: number; /** 实例内存容量,单位:GB。 */ Memory?: number; /** 操作系统名称。 */ OsName?: string; /** 实例机型。 */ InstanceType?: string; /** 伸缩组ID */ AutoscalingGroupId?: string; /** 实例计费模式。取值范围: PREPAID:表示预付费,即包年包月 POSTPAID_BY_HOUR:表示后付费,即按量计费 CDHPAID:CDH付费,即只对CDH计费,不对CDH上的实例计费。 */ InstanceChargeType?: string; /** 实例的IPv6地址。 */ IPv6Addresses?: string[] | null; } /** 不同角色的已存在节点配置参数 */ interface ExistedInstancesForNode { /** 节点角色,取值:MASTER_ETCD, WORKER。MASTER_ETCD只有在创建 INDEPENDENT_CLUSTER 独立集群时需要指定。MASTER_ETCD节点数量为3~7,建议为奇数。MASTER_ETCD最小配置为4C8G。 */ NodeRole: string; /** 已存在实例的重装参数 */ ExistedInstancesPara: ExistedInstancesPara; /** 节点高级设置,会覆盖集群级别设置的InstanceAdvancedSettings(当前只对节点自定义参数ExtraArgs生效) */ InstanceAdvancedSettingsOverride?: InstanceAdvancedSettings; /** 自定义模式集群,可指定每个节点的pod数量 */ DesiredPodNumbers?: number[]; } /** 已存在实例的重装参数 */ interface ExistedInstancesPara { /** 集群ID */ InstanceIds: string[]; /** 实例额外需要设置参数信息(目前后端暂不支持此字段,我们将在未来的版本中实现) */ InstanceAdvancedSettings?: InstanceAdvancedSettings; /** 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。 */ EnhancedService?: EnhancedService; /** 节点登录信息(目前仅支持使用Password或者单个KeyIds) */ LoginSettings?: LoginSettings; /** 实例所属安全组。该参数可以通过调用 DescribeSecurityGroups 的返回值中的sgId字段来获取。若不指定该参数,则绑定默认安全组。 */ SecurityGroupIds?: string[]; /** 重装系统时,可以指定修改实例的HostName(集群为HostName模式时,此参数必传,规则名称除不支持大写字符外与[CVM创建实例](https://cloud.tencent.com/document/product/213/15730)接口HostName一致) */ HostName?: string; } /** 创建集群时,选择安装的扩展组件的信息 */ interface ExtensionAddon { /** 扩展组件名称 */ AddonName: string; /** 扩展组件信息(扩展组件资源对象的json字符串描述) */ AddonParam: string; } /** 修改标签失败的资源 */ interface FailedResource { /** 资源六段式 */ Resource?: string; /** 执行失败的原因 */ Error?: string; } /** 过滤器 */ interface Filter { /** 属性名称, 若存在多个Filter时,Filter间的关系为逻辑与(AND)关系。 */ Name: string; /** 属性值, 若同一个Filter存在多个Values,同一Filter下Values间的关系为逻辑或(OR)关系。 */ Values: string[]; } /** GPU相关的参数,包括驱动版本,CUDA版本,cuDNN版本以及是否开启MIG */ interface GPUArgs { /** CUDA版本信息 */ CUDA?: DriverVersion; /** cuDNN版本信息 */ CUDNN?: CUDNN; /** 自定义GPU驱动信息 */ CustomDriver?: CustomDriver; /** GPU驱动版本信息 */ Driver?: DriverVersion; /** 是否启用MIG特性 */ MIGEnable?: boolean; } /** Probe中的HttpGet */ interface HttpGet { /** HttpGet检测的路径 */ Path: string | null; /** HttpGet检测的端口号 */ Port: number | null; /** HTTP or HTTPS */ Scheme: string | null; } /** IP 地址 */ interface IPAddress { /** Ip 地址的类型。可为 advertise, public 等 */ Type: string; /** Ip 地址 */ Ip: string; /** 网络端口 */ Port: number; } /** 镜像