Kubernetes API 中"创建节点"是什么意思



i fount the API in Kubernetes doc:

写入操作

HTTP请求POST/api/v1/nodes

查询参数参数说明pretty 如果为"true",则输出非常打印。车身参数参数说明身体节点
响应代码说明200节点正常

此 API 的详细信息在此处

我测试了这个 api。 使用此请求正文发送帖子请求:

{"kind": "Node",
 "apiVersion": "v1",
 "metadata": {
 "name": "10.110.17.48"
 }}

响应是

{
"kind": "Node",
"apiVersion": "v1",
"metadata": {
    "name": "10.110.17.48",
    "selfLink": "/api/v1/nodes10.110.17.48",
    "uid": "61bfa1e6-af14-11e7-8194-005056b6695e",
    "resourceVersion": "3684908",
    "creationTimestamp": "2017-10-12T06:12:53Z"
},
"spec": {
    "externalID": "10.110.17.48"
},
"status": {
    "daemonEndpoints": {
        "kubeletEndpoint": {
            "Port": 0
        }
    },
    "nodeInfo": {
        "machineID": "",
        "systemUUID": "",
        "bootID": "",
        "kernelVersion": "",
        "osImage": "",
        "containerRuntimeVersion": "",
        "kubeletVersion": "",
        "kubeProxyVersion": "",
        "operatingSystem": "",
        "architecture": ""
    }
}
}

然后我检查 kubectl get 节点

[root@master3 yum.repos.d]# kubectl get nodes
NAME           STATUS     AGE       VERSION
10.110.17.48   NotReady   18m       
master1        Ready      20d       v1.6.4+coreos.0
master2        Ready      20d       v1.6.4+coreos.0
master3        Ready      20d       v1.6.4+coreos.0
slave1         Ready      20d       v1.6.4+coreos.0
slave2         Ready      20d       v1.6.4+coreos.0
slave3         Ready      44m       v1.6.4+coreos.0

此节点尚未就绪。

这个节点只是一个 centOS 操作系统,没有安装 kubelet、kube-proxy、clico-node。

如果我使用此节点?我应该在此节点上安装 kubelet、kube-proxy、clico-node 吗?

那么,这个 API 是什么意思? 只是通知 API 服务器将此节点信息存储在 etcd 中?

那么,这个 API 是什么意思? 只是通知 API 服务器将此节点信息存储在 etcd 中?

是的,就是这样。发布到 API 端点不会导致 kubernetes 尝试在您的机器上执行任何操作——这就是在这样的机器上运行 kubelet 的全部目的:授予 kubernetes "权限"和在节点上实施更改的方法

kubelet 启动之前 POST-ing 到该 API 的一个假设用途可能是 - 我强调可能是 - 声明你打算在不久的将来启动一个节点,所以如果(假设)你只想要集群中的 10 个节点,那么 POST-ing 到 API 允许通知你的同事你正在启动节点, 他们不必这样做。

相关内容

最新更新