当副本集中的三个主机中有两个离线时,Kubernetes集群会发生以下情况:
- 调度器(Scheduler)会检测到两个主机离线,并将它们标记为不可用状态。
- 控制器管理器(Controller Manager)会监测到副本集的副本数不满足要求,因为只剩下一个可用的主机。
- 控制器管理器会触发副本集的自动伸缩机制,尝试创建新的副本来替代离线的主机。
- 如果有足够的资源(例如CPU、内存等),控制器管理器会在其他可用的主机上创建新的副本。
- 新的副本会被调度到可用的主机上,并开始运行容器。
- 当离线的主机重新上线时,Kubernetes会自动将其标记为可用状态,并将其纳入调度范围。
- 如果离线的主机上有运行的容器,Kubernetes会尝试将这些容器重新调度到其他可用的主机上,以确保应用的高可用性。
总结:当副本集中的两个主机离线时,Kubernetes会自动触发副本集的自动伸缩机制,尝试创建新的副本来替代离线的主机,以确保应用的高可用性。