使用 kubectl 代理转出重启 statefulset
Rollout restart statefulset using kubectl proxy
我已经从 pods 中启动了 kubectl proxy,并且能够访问 kubernetes API。我需要重新启动我的 statefulset。
使用 kubectl,我会这样做:
kubectl rollout restart statefulset my-statefulset
但是,我想使用 REST API 来执行此操作。例如,我可以删除我的 pods,使用这个:
curl -XDELETE localhost:8080/api/v1/namespaces/default/pods
是否有任何等效的 REST 端点可用于推出重启有状态集?
我 运行 你的命令 kubectl rollout restart statefulset my-statefulset --v 10
并注意输出日志。
我发现 kubectl
在我应用上述命令时提出了补丁请求。而且我可以使用 curl 来完成该补丁请求,如下所示
curl -k --data '{"spec":{"template":{"metadata":{"annotations":{"kubectl.kubrnetes.io/restartedAt":"'"$(date +%Y-%m-%dT%T%z)"'"}}}}}'\
-XPATCH -H "Accept: application/json, */*" -H "Content-Type: application/strategic-merge-patch+json"\
localhost:8080/apis/apps/v1/namespaces/default/statefulsets/my-statefulset
我已经从 pods 中启动了 kubectl proxy,并且能够访问 kubernetes API。我需要重新启动我的 statefulset。
使用 kubectl,我会这样做:
kubectl rollout restart statefulset my-statefulset
但是,我想使用 REST API 来执行此操作。例如,我可以删除我的 pods,使用这个:
curl -XDELETE localhost:8080/api/v1/namespaces/default/pods
是否有任何等效的 REST 端点可用于推出重启有状态集?
我 运行 你的命令 kubectl rollout restart statefulset my-statefulset --v 10
并注意输出日志。
我发现 kubectl
在我应用上述命令时提出了补丁请求。而且我可以使用 curl 来完成该补丁请求,如下所示
curl -k --data '{"spec":{"template":{"metadata":{"annotations":{"kubectl.kubrnetes.io/restartedAt":"'"$(date +%Y-%m-%dT%T%z)"'"}}}}}'\
-XPATCH -H "Accept: application/json, */*" -H "Content-Type: application/strategic-merge-patch+json"\
localhost:8080/apis/apps/v1/namespaces/default/statefulsets/my-statefulset