Kubernetes 部署和复制控制器通过确保存在最少数量的副本来提供自我修复的能力。
此外,自动缩放功能允许在给定特定 cpu 阈值的情况下增加副本。
是否有可用的工具可以提供自动修复和自动缩放功能的灵活性?
示例:在高峰时段或几天内自动调整副本数量。当 pod 因外部问题而死亡时,阻止系统重新创建容器并等待条件成功,即 ping 或 telnet 测试。
Kubernetes 部署和复制控制器通过确保存在最少数量的副本来提供自我修复的能力。
此外,自动缩放功能允许在给定特定 cpu 阈值的情况下增加副本。
是否有可用的工具可以提供自动修复和自动缩放功能的灵活性?
示例:在高峰时段或几天内自动调整副本数量。当 pod 因外部问题而死亡时,阻止系统重新创建容器并等待条件成功,即 ping 或 telnet 测试。
您可以通过在入口点脚本或 init 容器中等待外部服务来阻止 pod 启动。这是当今最接近等待外部条件的方法。
今天没有基于时间的自动缩放器,尽管可以按计划轻松地编写失败脚本。
在 Openshift 中,您可以通过在 cron 作业中运行此命令轻松扩展您的应用程序。
缩放命令
oc scale dc app --replicas=5
当然,缩小它以改变副本的数量。
自动缩放
这是面向开发人员的 Openshift 所写的关于自动缩放的内容。OpenShift 还支持自动缩放,定义 pod 的 CPU 使用上限和下限。
如果您的应用程序正在运行的 pod 持续超过上限阈值,则将启动您的应用程序的一个新实例。当 CPU 使用率回落到下限阈值以下时,因为您的应用程序不再努力工作,实例的数量将再次缩减。
我认为 Kubernetes 现在发布了 1.3 版,它允许自动缩放,但还集成在 Openshift 中。
健康检查
在健康检查方面,Openshift 具有:
就绪检查 在路由器开始向其发送流量之前检查您配置的测试状态。
活跃度探测:一旦流量切换到应用程序的实例,活跃度探测就会定期运行,以确保它仍然正常运行。如果 liveness 探测失败,OpenShift 将自动关闭应用程序的该实例并用新实例替换它。
您可以执行此类测试(HTTP 检查、容器执行检查和 TCP 套接字检查)
因此,我想您可以创建一些准备就绪检查和活动检查以确保您的 pod 的状态正常运行,如果没有,将触发新的部署,直到准备就绪状态正常。