首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我们可以使用Ansible来监视配置吗?

我们可以使用Ansible来监视配置吗?
EN

DevOps用户
提问于 2020-09-02 18:16:55
回答 2查看 403关注 0票数 3

我理解Ansible是如何工作的,它是用来做什么的。

但是,我想知道在Ansible中是否有一种方法或特性(在开源或企业版中),我们可以确保VM实例或服务器的配置总是与Ansible同步吗?

例如:

我用Ansible安装了一些东西(比如MySQL服务器,旋转一些码头容器等等)。在谷歌计算实例上。现在,过了一段时间,我手动将SSH放入这个VM中,并停止Ansible创建的docker容器。是否可以通知Ansible,以便再次创建容器?

因此,如果Ansible将状态A中的VM的配置设置为状态A,而另一个用户手动将状态更改为状态B,那么是否有一种方法可以将Ansible通知此更改并再次运行播放簿将配置设置为状态A?

EN

回答 2

DevOps用户

回答已采纳

发布于 2020-09-03 05:46:35

简单的答案是“是”,您可以使用Ansible来监视配置,但是您需要做一些额外的工作。正如Vasily在他们的回答中所指出的,Ansible没有内置的触发机制,所以您需要一些东西来触发状态的收敛。这可以通过几种方式完成,最简单的可能是ansible-pull。作为docs状态,ansible-pull

..。将ansible的默认推送体系结构转换为具有几乎无限缩放潜力的拉式架构。可以调优设置剧本,以将cron频率、日志记录位置和参数更改为“ansible-拉”。这对于极端规模化和定期补救都是有用的。

重点补充。

Ansible是幂等的,所以它知道目标机器的状态,与Vasily的答案状态相反-它只是不像Terraform那样坚持它。

您真正的问题听起来不像您提出的问题(“可以使用Ansible来确保机器的状态吗?”),而是“我如何检测配置漂移并触发补救?”

如果你认为这是一个监察问题,你可以将问题重新界定为“我应如何监察生产中的服务?”。监视意味着对状态变化发出警报,这会触发补救措施。在您的情况下,您将在服务的健康检查上定义一个警报,当触发时,执行收敛到所需状态的剧本。

既然你已经把时间花在写“Ansible剧本”上了,那么重复使用它就有意义了。最简单的方法是使用相同的剧本来调用cron,它每5分钟左右运行一次ansible-pull,这取决于您的具体情况。

票数 2
EN

DevOps用户

发布于 2020-09-03 05:01:39

Ansible不是像Terraform那样的状态管理器,而是一个自动化工具。我认为保持状态A配置的唯一方法是在cron中运行ansible。我用厨师自动化工具看到了这样的用例。

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

https://devops.stackexchange.com/questions/12331

复制
相关文章

相似问题

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