我找不到太多关于 Amazon EC2 实例的 leader_only 属性的文档。
当自动缩放组缩小时,领导者会发生什么?默认的自动缩放模板终止最旧的实例(在大多数情况下它可能是领导者)。终止最旧的实例后,EC2 会自动选举新的领导者吗?还是应用程序只终止非领导者实例?
另外,如果领导失败了怎么办。它是创建一个新实例并将其命名为领导者,还是将领导者属性切换到不同的现有实例?
谢谢!
我找不到太多关于 Amazon EC2 实例的 leader_only 属性的文档。
当自动缩放组缩小时,领导者会发生什么?默认的自动缩放模板终止最旧的实例(在大多数情况下它可能是领导者)。终止最旧的实例后,EC2 会自动选举新的领导者吗?还是应用程序只终止非领导者实例?
另外,如果领导失败了怎么办。它是创建一个新实例并将其命名为领导者,还是将领导者属性切换到不同的现有实例?
谢谢!
领导者的想法只存在于执行环境更新中的部署期间。执行部署后,不再有领导者的概念
来自:https ://forums.aws.amazon.com/thread.jspa?messageID=411720䡈
该链接还包含一些用于滚动您自己的领导者实现的代码,尽管根据您的需要,可能更容易找出其他东西。
它不是 AWS EC2 Auto Scaling 组的功能。
leader_only
在 AWS Elastic Beanstalk 上运行容器命令时,该属性是一个可选参数。
可选的。将 Auto Scaling 组中的实例设置为领导者。如果 leader_only 值设置为 true,则该命令仅在标记为领导者的实例上运行。领队先跑。
从理论上讲,您有两种类型的领导者:
要建立 Deploy-time 领导者,请使用 leader_only。
要建立运行时领导者,您需要靠自己。
因为在部署期间作为领导者的实例
可能由于各种原因而不存在,例如缩减。
尽管有一些尝试分散在各处,但没有好的解决方案。
为了我自己的需要,我创建了一个解决方案,它列出了所有实例 ID,按字母顺序排序并首先选择作为领导者。