给定了一堆服务器A..z,确保这些服务器上的所有/dir/path
目录(存在这些目录存在)的最佳方法是将某个所有者,组和组设置为模式?
我可以看到如何执行特定角色,例如
- name: Add apache vhosts configuration.
template:
src: "vhosts.conf.j2"
dest: "{{ apache_conf_path }}/{{ apache_vhosts_filename }}"
owner: root
group: root
mode: 0644
notify: restart apache
when: apache_create_vhosts
但是您如何在整个服务器上进行操作?
http://docs.ansible.com/ansible/latest/file_module.html
- name: Change ownership of the folder
file:
state : directory
recurse : yes
path : "{{ folder }}"
mode : "{{ desired_mode }}"
在要更改的所有系统上执行任务。显然,将其作为必要的用户运行;如果是根源,请确保您在需要时指定所有者和组。
如果这似乎有点基础,请原谅我,但是有时候重申的明显重申-http://docs.ansible.com/ansible/latest/intro_inventory.html
要违反服务器列表,将它们放入库存文件中的组中,并将该组上的任务称为主机。
主机文件示例:
[targetServers]
host1
host2
# etc
然后在您的Main.yml
- name: do the thing
hosts: targetServers
# etc
然后 ansible-playbook -i hosts -v main.yml
oe一些这样的。