kubernetes - Kubernetes 应用程序停机时间
问题描述
我已经用一个 master 和两个 Worker 设置了 kubernetes,但是我面临一个问题。
我已经创建了 apache pod;它将由调度程序自动部署在 worker1 上。它工作正常。当我停止工人一台机器时,理想情况下将在worker2上生成pod。问题是在worker2上上线大约需要7分钟。
有什么方法可以在不停机的情况下使 pod 失效?
解决方案
除非您有多个副本(apache 副本)并且在您的系统上有一个 Kubernetes 服务转发给它们,否则将会有一个小的停机时间。这通常是推荐用于 HTTP/TCP 类型服务的架构。
但是,如果您需要更快的响应,您可以调整:
--node-status-update-frequency
在 kubelet 上。(默认 10 秒)--kubelet-timeout
在 kube-apiserver 上。默认为低 5 秒。–-node-monitor-period
在 kube-controller-manager 上。默认为 5 秒。-–node-monitor-grace-period
在 kube-controller-manager 上。默认为 40 秒。-–pod-eviction-timeout
在 kube-controller-manager 上。默认为 5 分钟。
你可以尝试这样的事情:
- kubelet:(
--node-status-update-frequency=4s
从 10 秒开始) - kube-controller-manager:(
--node-monitor-period=2s
从 5s 开始) - kube-controller-manager:(
--node-monitor-grace-period=16s
从 40 年代开始) - kube-controller-manager:(
--pod-eviction-timeout=30s
从 5m 开始)
推荐阅读
- javascript - d3js/Angular 8 应用程序问题
- angular - 为什么 CanActivate 一键不跳转?
- eclipse - 在 Eclipse 中设置多个源文件夹
- javascript - 为什么函数中的简单提示不起作用?
- python - Keras回归模型输出不正确
- javascript - 用户创建新游戏猫鼬时无法更新用户游戏属性
- java - 从并行流收集时的 NPE
- microsoft-custom-vision - 如何从 Microsoft Custom Vision API 获取原始图像名称?
- typescript - 有没有办法将元组的键作为数字?
- ballerina - 如何将字符串转换为int?