首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于目标群体健康状况的动态库存变更

基于目标群体健康状况的动态库存变更
EN

Stack Overflow用户
提问于 2020-03-12 10:18:31
回答 2查看 149关注 0票数 0

我正在尝试通过Ansible在ALB后面的AWS EC2 2节点集群上设置滚动部署。对于序列中的每个节点来说,这个粗略的过程是这样的-

代码语言:javascript
复制
+----------+   +----------+   +----------+
|Remove app|   |Redeploy  |   |Add back  |
|from load |-->|new app   |-->|to load   |
|balancer  |   |          |   |balancer  |
+----------+   +----------+   +----------+

我使用来选择我的节点,它们在默认情况下是按IP地址排序的。现在,在部署之前考虑以下4种情况-

  1. 两个节点都是健康的。
  2. 节点#1是不健康的,节点#2是健康的。
  3. 节点#1是健康的,节点2是不健康的。

现在,在场景#3下,我将删除唯一健康的节点。我怎么才能避免这种情况?

EN

回答 2

Stack Overflow用户

发布于 2020-03-12 10:39:18

在剧本中添加一个步骤,如果剩余的健康节点数少于一个,则执行不允许从负载平衡器移除节点的正常检查。

首先解决如何优先从负载均衡器中删除不健康的节点。您能否根据节点的健康检查状态将其分成几组,然后先处理不健康的节点?或者交替地更改排序顺序,使其根据健康检查状态而不是ip地址?

作为一种替代方法--在删除旧节点之前不能添加新节点吗?

票数 0
EN

Stack Overflow用户

发布于 2020-03-13 13:38:13

好的,既然您有一个healthy标志,那么使用它来嵌入一个update角色:

代码语言:javascript
复制
- hosts: all
  gather_facts: yes
  tasks:
  - include_role:
      role: update
    when: not healthy
  - include_role:
      role: update
    when: healthy

这样,不健康的就先做。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60651946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档