2016-03-31 52 views
0

Dört farklı ana makinem var. host1, host2, host3, host4Anlık dosyaları kullanarak birden çok dosyayı ana bilgisayara kopyalama

Bu ana bilgisayarlarda aşağıdaki dosyaları güncelleştirmeye çalışıyorum.

host1 
/var/www/foo1 

host2 
/var/www/foo1 
/var/tmp/foo1 

host3 
/var/www/foo1 

host4 
/var/tmp/foo1 

Bu görevi gerçekleştirmek için farklı envanter dosyaları ve grup varlıkları olan iki farklı kitap yazabilirim.

Envanter dosya 1

[group_foo1] 
host1 
host2 
host3 

Grup değişken

Dosya ismi: group_foo1

path:/var/www 

Envanter dosya 2

[group_foo2] 
host2 
host4 

Grup değişken

Dosya ismi: group_foo2

path:/var/tmp 

Görev

name: copy the file 
copy: src=foo1 dest={{path}} 

Bekarım taktik kitabı kullanarak bu görevi yapmak istiyorum.

Bu nasıl yapılabilir?

+0

Ayarını bir vars dosyayı sizin oyun kitabında dahil etmek. http://docs.ansible.com/ansible/index.html harika bir kaynaktır – Jared

cevap

1

Sen synchronize module kullanmalıdır:

# Synchronize two directories on one remote host. 
synchronize: 
    src: /first/absolute/path 
    dest: /second/absolute/path 
delegate_to: "{{ inventory_hostname }}" 

ALso Tüm ana üzerinde görevlerde yineleme deneyebilirsiniz:

with_items: groups['all']