【问题标题】:Kubernetes Rest API call equivalent to kubectl replace -f POD.yaml --forceKubernetes Rest API 调用等效于 kubectl replace -f POD.yaml --force
【发布时间】:2020-11-05 17:10:49
【问题描述】:

我正在部署普通的 pod yaml 文件。附上Pod的快照。

我的要求是我想在需要时更新整个 pod。 这可以通过强制使用 kubectl replace 命令来实现,它会负责删除和重新创建它。

命令是kubectl replace -f pod.yaml --force

用于替换的 RestAPI 是 PUT (https://kubernetes-url/api/v1/namespaces/default/pods/test-pod) 我需要传递什么查询参数才能通过类似于kubectl force replace的rest api实现强制替换。

【问题讨论】:

  • 你能用你的 pod 规范的实际 YAML 替换那个屏幕截图吗? (你不能 kubectl apply -f 一个 PNG 文件。)

标签: kubernetes kubectl kubernetes-pod


【解决方案1】:

当您在内部使用 --force 时,它会删除 pod 并重新创建它。 PUT 在这种情况下不使用动词,并且 REST API 中没有强制参数。您需要进行两次 REST API 调用

  1. 首先用DELETE动词到https://kubernetes-url/api/v1/namespaces/default/pods/test-pod

  2. 第二个是POST动词到https://kubernetes-url/api/v1/namespaces/default/pods/test-pod

您可以通过在详细模式下运行命令来验证正在进行的 REST API 调用。

kubectl replace -f pod.yaml --force --v=8

【讨论】:

    猜你喜欢
    • 2018-02-27
    • 2020-07-18
    • 2021-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-31
    • 2015-08-05
    • 1970-01-01
    相关资源
    最近更新 更多