我有一个6个webserver一个负载均衡器配置。我希望在更新网站内容时在负载均衡器上禁用Web服务器。我希望在所有的奴才中以滚动的方式完成这项工作。例如:维持Minion1,在LB上禁用minion1,一旦完成维护,再次启用minion1,而saltstack移动到minion2并重复该过程。我想使用像这样的回声“禁用服务器后端/服务器名称| socat stdio / etc / haproxy / haproxysock” 其中servername是正在维护的minion,但每次都必须在haproxy LB上运行此命令。在维护发生之前,禁用Web服务器,并在维护之后再次启用Web服务器。任何帮助将非常感激。
答案 0 :(得分:0)
您可以使用像dahrens提到的反应堆系统来构建您的解决方案。
您可以查看使用此处找到的orchestrate runner:https://docs.saltstack.com/en/latest/topics/tutorials/states_pt5.html#orchestrate-runner
这将允许您像想要的那样精心编排滚动更新。
如果要从常规Salt状态执行此操作,可以使用cli上的batch
选项一次更新一个服务器,并使用prereq
从负载中删除当前服务器更新期间的平衡器。