【发布时间】:2015-02-12 10:25:36
【问题描述】:
我正在使用 Ansible playbook 配置服务器。我的剧本在第一次执行时工作正常,但是当我再次运行相同的剧本时,它会在服务器上的配置文件中创建重复行。
我正在使用lineinfile 模块。每次运行 playbook 时,以下示例任务都会添加该行。
- lineinfile: dest=/etc/pam_ldap.conf line="ssl off"
有没有办法避免这种情况,并保持幂等性。
【问题讨论】:
-
你的任务应该已经是幂等的了。这是确切的任务吗?你是否也在其他地方修改了剧本中的这个文件? line 属性是否包含
\n?您的剧本是否会在第二次运行时重新安装或重新配置 ldap? -
你用的是什么版本的ansible?
-
我使用的是 ansible 1.8.2。
-
有一个单独的 playbook 用于安装,我正在运行一次,并且有一个单独的 playbook 用于配置服务器。并且在多次运行中会多次添加内容。我正在使用 ansible 1.8.2。请给我一些建议,我该如何实现这一目标。
-
我想在配置文件中添加多行。为此,我没有使用 '\n' 为每一行创建单独的任务。这实质上意味着我在剧本中不止一次地修改文件。我不知道这是个好主意还是有更好的方法。
标签: ansible ansible-playbook idempotent