通过REST API,我可以通过以下方式获取Node的详细信息:
http://127.0.0.1:8001/api/v1/nodes/{Node Name}
但是,我想添加一个新标签并删除一个旧标签。说添加标签app=service
,并删除backend=database
,我应该调用什么类型的请求以及我需要发送什么样的JSON格式?
答案 0 :(得分:1)
您可以使用唯一的一个请求设置新标签。
JSON是:
==
您应该将{
"metadata": {
"labels": {
"app": "service"
}
}
}
请求发送到:
PATCH
所以,最后我们有:
http://127.0.0.1:8001/api/v1/nodes/<node_name>
答案 1 :(得分:0)
curl -X PATCH \ <cluster end point>/api/v1/nodes/<node name> \ -H 'Authorization: Bearer <your token>' \ -H 'Content-Type: application/merge-patch+json' \ -H 'cache-control: no-cache' \ -d '{
"metadata": {
"labels": {
"name": "vaibhav"
}
}
}
'
这在eks上对我有用,如果您的最终群集端点不安全,只需在curl命令中添加“ --insecure”。
bearer令牌是您的kube系统名称空间中的eks-admin-token(k8s秘密),或者您可以创建一个具有受限访问权限的令牌。
要注意的重要事项:内容类型:application / merge-patch + json