该接口用于添加已有EPC实例到k8s集群中
参数名称 | 类型 | 必填 | 描述 |
---|
Action | String | 是 | 公共参数,本接口取值:AddClusterEpcInstances。 |
Version | String | 是 | 公共参数,本接口取值:2019-08-06。 |
ClusterId | String | 是 | 集群id |
InstanceId.N | String | 否 | 移入集群的裸金属服务器实例id,即HostId 注:参数InstanceId.N和EpcPara.N必须填写一个,不能同时填写,也不能同时为空 |
EpcPara.N | String | 否 | 裸金属服务器产品重新安装操作系统的透传参数,json化字符串格式,详见重装租赁裸金属服务器。 示例值:{"HostId":"2ba57721-d15a-4174-b0b5-00468a76af42","ImageId":"5fb883d8-78ba-4ab6-a116-06be20403f3b","KeyId":"991e1884-3980-4db8-9cdf-098f8c236bb0","Password":"Root123456"} |
AdvancedSetting | Object | 否 | 节点高级设置 |
ContainerRuntime | String | 否 | 容器运行时,根据集群版本和需求选择
Kubernetes版本≥1.24时,有效值:
|
ContainerPath | String | 否 | 容器的存储路径,不填写的话默认为/data/container |
UserScript | String | 否 | base64 编码的用户脚本, 此脚本会在 节点上k8s 组件运行后执行, 需要用户保证脚本的可重入及重试逻辑,脚本和生成的日志的文件可在录/usr/local/ksyun/kce/userscript路径查看 |
PreUserScript | String | 否 | base64 编码的用户脚本, 此脚本会在节点上 k8s 组件运行前执行, 需要用户保证脚本的可重入及重试逻辑,脚本和生成的日志的文件可在录/usr/local/ksyun/kce/pre_userscript路径查看 |
Schedulable | Boolean | 否 | 节点加入集群后是否可以正常调度,默认值:true |
Label.N | Object | 否 | 节点加入集群时预置的标签 |
Key | String | 否 | 标签键,校验规则:不超过63个字符,只能包含字母、数字及分隔符("-"、"_"、"."、"/"),且必须以字母、数字开头和结尾 |
Value | String | 否 | 标签值,校验规则:不超过63个字符,只能包含字母、数字及分隔符("-"、"_"、"."),且必须以字母、数字开头和结尾 |
ExtraArg | Object | 否 | 自定义节点上k8s组件的参数 |
Kubelet.N | Object | 否 | 用户自定义kubelet的参数 |
CustomArg | String | 否 | 用户自定义kubelet的参数,格式k1=v1,如: --feature-gates=EphemeralContainers=true |
ContainerLogMaxSize | Int | 否 | 自定义容器日志采集文件大小,超出此大小日志将滚动写入下一文件,默认值为100m |
ContainerLogMaxFiles | Int | 否 | 自定义容器日志采集文件最大数量,默认值为10个 |
Taints.N | Object | 否 | 节点加入集群时预置污点,匹配污点容忍进行调度 |
Key | String | 否 | 污点名称,校验规则:不超过253个字符,只能包含字母、数字及分隔符("-"、"_"、"."、"/"),且必须以字母、数字开头和结尾 |
Value | String | 否 | 污点值,校验规则:不超过63个字符,只能包含字母、数字及分隔符("-"、"_"、"."、"/"),且必须以字母、数字开头和结尾 |
Effect | String | 否 | 污点效果,有效值为NoSchedule、PreferNoSchedule、NoExecute |
参数名称 | 类型 | 描述 |
---|
RequestId | String | 请求id 示例值:25953a30-3807-4b55-b872-813a4d37b950 |
InstanceSet | Object[] | |
Return | Boolean | 执行结果 示例值:true |
InstanceId | String | 裸金属服务器实例id 示例值:9c362d96-ad25-491d-8f7d-xxxxxxx |
JSON格式
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见公共错误码
错误码 | 错误信息 | Http状态码 | 描述 |
---|
ClusterIdRequired | ClusterId is required | 400 | 集群ID必须填写 |
ClusterIdInvalid | ClusterId must match `^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$` | 400 | 集群ID必须满足 `^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$` |
ParamInvalid | InstanceId and EpcPara can't be empty at the same time | 400 | InstanceId与EpcPara不能同时为空 |
InstanceIdSizeExceed | the number of InstanceId can't exceed 50 | 400 | 实例ID数量不能超过50 |
InstanceIdInvalid | InstanceId contains repeat value | 400 | InstanceId不能包含重复值 |
EpcParaSizeExceed | the number of EpcPara can't exceed 50 | 400 | EpcPara数量不能超过50 |
EpcParaInvalid | EpcPara is invalid, it must be json string | 400 | EpcPara参数必须是正确的json字符串 |
UserScriptLengthExceed | the length of UserScript can't exceed 16*1024 | 400 | 用户脚本长度不能超过16*1024个字符 |
PreUserScriptLengthExceed | the length of PreUserScript can't exceed 16*1024 | 400 | 用户前置脚本字符长度不能超过16*1024 |
ContainerRuntimeInvalid | docker is unsupported when k8s version > 1.24 | 400 | 集群版本大于1.24时不支持docker运行时 |
FileSystemInvalid | FileSystem is invalid | 400 | 文件系统无效,仅支持ext3、ext4、xfs |
LabelKeyInvalid | label key must match (^[a-z0-9A-Z]([-_./a-zA-Z0-9]){0,61}[a-z0-9A-Z]$)|(^[a-zA-Z0-9]$) | 400 | 标签key格式必须满足 (^[a-z0-9A-Z]([-_./a-zA-Z0-9]){0,61}[a-z0-9A-Z]$)|(^[a-zA-Z0-9]$) |
LabelValueInvalid | label value must match(^[a-z0-9A-Z]([-_.a-zA-Z0-9]){0,61}[a-z0-9A-Z]$)|([a-zA-Z0-9])? | 400 | 标签值格式必须满足 (^[a-z0-9A-Z]([-_.a-zA-Z0-9]){0,61}[a-z0-9A-Z]$)|([a-zA-Z0-9])? |
TaintInvalid | taint key must match ((^[A-Za-z0-9]([-_./A-Za-z0-9]){0,251}[A-Za-z0-9]$)|^[A-Za-z0-9]$) | 400 | 污点key格式必须满足 ((^[A-Za-z0-9]([-_./A-Za-z0-9]){0,251}[A-Za-z0-9]$)|^[A-Za-z0-9]$) |
ClusterNodeExceedProductLimit | cluster node num has exceed product limit | 400 | 集群节点数量超过了售卖套餐最高上限 |
ClusterNotFound | cluster xx is not found | 400 | 集群不存在 |
GetClusterError | failed to get cluster | 400 | 获取集群信息失败 |
HostNameInvalid | the hostname xx of epc xx is invalid | 400 | EPC实例hostname无效,无法注册为k8s节点名称 |
ParseEpcParaError | EpcPara is invalid | 400 | 解析EpcPara发生错误 |
ContainerAgentValueInvalid | ContainerAgent value must be 'supported' | 400 | 重装EPC时容器Agent必须支持 |
ReinstallEpcFailed | epc xx reinstall failed | 400 | epc重装失败 |
纯净模式