我们正在 AWS EC2 实例上通过 ansible 部署 mongodb 集群。配置数据库实例后,我们为其提供相应的主要/次要标签。我们有 3 个节点 - 1 个用于主节点,2 个用于辅助节点。
第一次运行 ansible 脚本时,我们按标签类型选择主实例,启动它并向其添加辅助节点
rs.initiate()
rs.add(secodnaryHost1)
rs.add(secondaryHost2)
这工作正常。
然而有时,当一个从属节点成为主节点时,我们的实例标签类型——主节点和 mongoDB——主节点并不相同。在这种情况下,如果我们运行我们的 ansible 脚本,它们会失败,因为主要标签类型(现在是次要标签类型)无法在命令之上运行。
处理这种不匹配的最佳方法是什么?