添加 Machine
请求信息
请求行
POST /apis/platform.tkestack.io/v1/machines
添加一个 Machine。
请求参数
| 名称 | 类型 | 是否必填项 | 描述 | 
|---|---|---|---|
| dryRun | string | 否 | 当该参数出现时,表示不应该持久化修改。一个无效的或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:All,将处理所有的试运行阶段。 | 
| fieldManager | string | 否 | fieldManager 是与正在进行这些更改的参与者或实体相关联的名称。值必须少于 128 字符,且仅包含可打印字符,参见 https://golang.org/pkg/unicode/#IsPrint。 | 
| pretty | string | 否 | 如果为 true,则会将返回结果输出成适合打印的格式。 | 
请求体
Content-Type 
                */*
请求体示例
在 Kubernetes 集群中的节点实例。
{
   "apiVersion": "platform.tkestack.io/v1",
   "kind": "Machine",
   "metadata": {
     "annotations": {
       "cpaas.io/display-name": "192.168.0.105"
     },
     "name": "mc-192-168-0-105"
   },
   "spec": {
     "clusterName": "global",
     "displayName": "",
     "ip": "192.168.0.105",
     "ipv6": "",
     "networkDevice": "",
     "password": "cGFzc3dvcmQ=",
     "port": 22,
     "proxy": {},
     "publicIP": "",
     "role": "",
     "type": "Baremetal",
     "username": "root"
   }
 }请求体说明
| 名称 | 类型 | 是否必填项 | 描述 | 
|---|---|---|---|
| apiVersion | string | 是 | 查看公共参数 | 
| kind | string | 是 | 查看公共参数 | 
| metadata | object | 是 | 查看公共参数 | 
| spec | object | 是 | 节点的描述信息。 字段路径:spec | 
| spec.clusterName | string | 是 | 集群的名称。 字段路径:spec.clusterName | 
| spec.displayName | string | 是 | 节点的显示名称。 字段路径:spec.displayName | 
| spec.ip | string | 是 | 节点 IP。 字段路径:spec.ip | 
| spec.ipv6 | string | 是 | IPV6 地址。 字段路径:spec.ipv6 | 
| spec.networkDevice | string | 是 | 网络设备(网卡)名称。 字段路径:spec.networkDevice | 
| spec.password | string (byte) | 是 | 密码。 字段路径:spec.password | 
| spec.port | integer (int32) | 是 | 端口号。 字段路径:spec.port | 
| spec.proxy | object | 是 | 通过 SSH 服务访问节点的代理。 字段路径:spec.proxy | 
| spec.publicIP | string | 是 | 节点的公网 IP。 字段路径:spec.publicIP | 
| spec.role | string | 是 | 节点的类型,控制节点(master)/计算节点(node)。 字段路径:spec.role | 
| spec.type | string | 是 | 节点的类型。 字段路径:spec.type | 
| spec.username | string | 是 | 用户名。 字段路径:spec.username | 
返回信息
Content-Type 
                application/json,
                application/yaml,
                application/vnd.kubernetes.protobuf
状态码: 201
Created
返回体示例
在 Kubernetes 集群中的节点实例。
{
   "apiVersion": "platform.tkestack.io/v1",
   "kind": "Machine",
   "metadata": {
     "annotations": {
       "cpaas.io/display-name": "192.168.0.105"
     },
     "creationTimestamp": "2021-06-25T02:25:45Z",
     "name": "mc-192-168-0-105",
     "resourceVersion": "100232",
     "selfLink": "/apis/platform.tkestack.io/v1/machines/mc-192-168-0-105",
     "uid": "719f0a5b-a730-41e3-8c15-1572625b3f23"
   },
   "spec": {
     "clusterName": "global",
     "displayName": "",
     "finalizers": [
       "machine"
     ],
     "ip": "192.168.0.105",
     "ipv6": "",
     "networkDevice": "",
     "password": "cGFzc3dvcmQ=",
     "port": 22,
     "proxy": {},
     "publicIP": "",
     "role": "",
     "type": "Baremetal",
     "username": "root"
   },
   "status": {
     "phase": "Initializing"
   }
 }返回体说明
| 名称 | 类型 | 描述 | 
|---|---|---|
| apiVersion | string | 查看公共参数 | 
| kind | string | 查看公共参数 | 
| metadata | object | 查看公共参数 | 
| spec | object | 节点的描述信息。 字段路径:spec | 
| spec.clusterName | string | 集群的名称。 字段路径:spec.clusterName | 
| spec.displayName | string | 节点的显示名称。 字段路径:spec.displayName | 
| spec.finalizers | array | 终结器是一个内部的值列表,必须为空才能从存储中永久删除对象。 字段路径:spec.finalizers | 
| spec.finalizers[] | string | 字段路径:spec.finalizers[] | 
| spec.ip | string | 节点 IP。 字段路径:spec.ip | 
| spec.ipv6 | string | IPV6 地址。 字段路径:spec.ipv6 | 
| spec.labels | object | 标签。 字段路径:spec.labels | 
| spec.networkDevice | string | 网络设备(网卡)名称。 字段路径:spec.networkDevice | 
| spec.passPhrase | string (byte) | 私钥的保护口令。 字段路径:spec.passPhrase | 
| spec.password | string (byte) | 密码。 字段路径:spec.password | 
| spec.port | integer (int32) | 端口号。 字段路径:spec.port | 
| spec.privateKey | string (byte) | 私钥。 字段路径:spec.privateKey | 
| spec.proxy | object | 通过 SSH 服务访问节点的代理。 字段路径:spec.proxy | 
| proxy.address | string | 代理服务器的地址,例如:192.168.1.1:1080。 字段路径:spec.proxy.address | 
| proxy.password | string (byte) | 访问代理服务器的密码。 字段路径:spec.proxy.password | 
| proxy.type | string | 代理的类型。 字段路径:spec.proxy.type | 
| proxy.username | string | 访问代理服务器的用户名。 字段路径:spec.proxy.username | 
| spec.publicIP | string | 节点的公网 IP。 字段路径:spec.publicIP | 
| spec.role | string | 节点的类型,控制节点(master)/计算节点(node)。 字段路径:spec.role | 
| spec.taints | array | 可选,节点的污点。 字段路径:spec.taints | 
| spec.taints[] | object | 污点是节点的一个属性,如果节点设置了污点后,底层的 Kubernetes 是不会将 Pod 调度到这个节点上的。 字段路径:spec.taints[] | 
| taints[].effect | string | 必须。Pod 上污点的 effect,可选如下三种:
NoSchedule:表示不允许调度,已调度的资源不受影响。
PreferNoSchedule:表示尽量不调度。
NoExecute:表示不允许调度,已调度的资源将在 tolerationSeconds 后删除。 字段路径:spec.taints[].effect | 
| taints[].key | string | 必须。应用到节点的污点的键。 字段路径:spec.taints[].key | 
| taints[].timeAdded | string (date-time) | Time 是时间的包装。Time 支持正确的封送到 YAML 和 JSON。时间包提供方的许多工厂方法都提供了包装器。 字段路径:spec.taints[].timeAdded | 
| taints[].value | string | 与污点的键对应的污点的值。 字段路径:spec.taints[].value | 
| spec.tenantID | string | 租户 ID。 字段路径:spec.tenantID | 
| spec.type | string | 节点的类型。 字段路径:spec.type | 
| spec.username | string | 用户名。 字段路径:spec.username | 
| status | object | MachineStatus 表示关于节点状态的信息。 字段路径:status | 
| status.addresses | array | 可到达节点的地址列表。 字段路径:status.addresses | 
| status.addresses[] | object | MachineAddress 包含了节点地址的信息。 字段路径:status.addresses[] | 
| addresses[].address | string | 节点地址。 字段路径:status.addresses[].address | 
| addresses[].type | string | 节点地址类型,包括  Public、ExternalIP、InternalIP。 字段路径:status.addresses[].type | 
| status.conditions | array | 节点的执行进度。 字段路径:status.conditions | 
| status.conditions[] | object | MachineCondition 包含了该节点当前条件的详细信息。 字段路径:status.conditions[] | 
| conditions[].lastProbeTime | string (date-time) | Time 是时间的包装。Time 支持正确的封送到 YAML 和 JSON。时间包提供方的许多工厂方法都提供了包装器。 字段路径:status.conditions[].lastProbeTime | 
| conditions[].lastTransitionTime | string (date-time) | Time 是时间的包装。Time 支持正确的封送到 YAML 和 JSON。时间包提供方的许多工厂方法都提供了包装器。 字段路径:status.conditions[].lastTransitionTime | 
| conditions[].message | string | 状态转换的详细可读信息。 字段路径:status.conditions[].message | 
| conditions[].reason | string | 最后一次状态转换的原因。 字段路径:status.conditions[].reason | 
| conditions[].status | string | 条件的状态,可以是 True、False、Unknown。 字段路径:status.conditions[].status | 
| conditions[].type | string | 条件的类型。 字段路径:status.conditions[].type | 
| status.locked | boolean | 节点的锁定状态。 字段路径:status.locked | 
| status.machineInfo | object | MachineSystemInfo 是唯一标识节点的一组 id 或 uuid。 字段路径:status.machineInfo | 
| machineInfo.architecture | string | 节点记录的架构。 字段路径:status.machineInfo.architecture | 
| machineInfo.bootID | string | 节点记录的 Boot id。 字段路径:status.machineInfo.bootID | 
| machineInfo.containerRuntimeVersion | string | 节点记录的 ContainerRuntime 版本。 字段路径:status.machineInfo.containerRuntimeVersion | 
| machineInfo.kernelVersion | string | 节点记录的 Kernel 版本。 字段路径:status.machineInfo.kernelVersion | 
| machineInfo.kubeProxyVersion | string | 节点记录的 KubeProxy 版本。 字段路径:status.machineInfo.kubeProxyVersion | 
| machineInfo.kubeletVersion | string | 节点记录的 Kubelet 版本。 字段路径:status.machineInfo.kubeletVersion | 
| machineInfo.machineID | string | 节点记录的 MachineID。作为集群中唯一的节点识别,此字段是首选的。更多信息:http://man7.org/linux/man-pages/man5/machine-id.5.html 字段路径:status.machineInfo.machineID | 
| machineInfo.operatingSystem | string | 节点记录的操作系统。 字段路径:status.machineInfo.operatingSystem | 
| machineInfo.osImage | string | 节点记录的 OS 镜像。 字段路径:status.machineInfo.osImage | 
| machineInfo.systemUUID | string | 节点记录的 SystemUUID。作为唯一的节点识别,此字段是首选的。更多信息:https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html 字段路径:status.machineInfo.systemUUID | 
| status.message | string | 指示为什么节点处于当前状态的详细信息的一个可读消息。 字段路径:status.message | 
| status.phase | string | 节点的执行进度阶段。 字段路径:status.phase | 
| status.reason | string | 指示为什么节点处于当前状态的详细信息的一个简短的 CamelCase 消息。 字段路径:status.reason |