【问题标题】:How to restart Kubernetes-Engine Pods in a Python script如何在 Python 脚本中重启 Kubernetes-Engine Pod
【发布时间】:2019-06-03 16:31:34
【问题描述】:

我正在寻找一种方法来重新启动我的服务的所有 pod。他们应该一一重新启动,以便服务始终可用。当来自不同服务的 Python 脚本完成时,应该会重新启动。

我这样做是因为在我想重新启动的 pod 上,有一个 Gunicorn-server 正在运行,它需要重新加载一些数据。这仅在服务器重新启动时有效。

gunicorn 服务在 Dockerfile 中启动:

CMD gunicorn -c gunicorn.conf.py -b :$PORT --preload app:app

但我猜这不太相关。

我认为解决方案是某种我可以在 Python 脚本中运行的 kubectl 命令,或者是我找不到的 kubectl 端点提示。

【问题讨论】:

  • 您能否添加更多有关如何创建 pod 的详细信息?即,它们是通过 Pod 规范还是通过 Deployment(或 ReplicaSet)规范创建的?
  • 另外,答案可能是kubectl 命令

标签: kubernetes google-kubernetes-engine gunicorn


【解决方案1】:

kubectl rollout restart 已登陆 Kubernetes v1.15 [1]。此功能专为您想要做的事情而设计 - 滚动重启 pod。

[1]https://github.com/kubernetes/kubernetes/issues/13488

【讨论】:

  • 有没有办法从同一个集群的不同 pod 运行它?或者这超出了 pod 的范围。
  • 这是可能的 - 只要调用该命令的服务帐户有权这样做
猜你喜欢
  • 2022-01-15
  • 2016-08-22
  • 1970-01-01
  • 2023-02-02
  • 2021-02-19
  • 1970-01-01
  • 1970-01-01
  • 2021-05-07
  • 1970-01-01
相关资源
最近更新 更多