我已经为Kubernetes设置了一个管理员和两个工人,但是我面临一个问题。
我创建了apache pod;它将由调度程序自动部署在worker1上。工作正常。当我停止工作人员的一台机器时,理想情况下,将在worker2上生成pod。问题在于,在worker2上线大约需要7分钟。
有没有办法在没有停机的情况下对pod进行故障转移?
答案 0 :(得分:2)
除非您有多个副本(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分钟。您可以尝试以下操作:
--node-status-update-frequency=4s
(从10秒开始)--node-monitor-period=2s
(5s起)--node-monitor-grace-period=16s
(从40多岁开始)--pod-eviction-timeout=30s
(5m起)