Uyarı: Bunu yalnızca OSX'te test ettim. Çeşitli dokümanlara dayanarak, diğer platformlarda da çalışmasını bekliyorum.
"proje dizini", Vagrant projesinin temel dizinini (içeren dizini) belirtir Vagrantfile
.
Vagrant tarafından otomatik olarak oluşturulan Ansible Envanter dosyası:
Vagrant , varsayılan Ansible bağlantısı değişkenleriyle bir envanter dosyası oluşturur . İçinde ara <project directory>/.vagrant/provisioners/ansible/inventory/vagrant_ansible_inventory
.
Bu dosya gerektiğinde Vagrant tarafından rejenere edilecek, böylece el ile yapılan düzenlemelerin üzerine yazılacak. Ancak, Vagrant belgelerine göre, birden fazla makine, grup varyasyonu, vs. belirtebilirsiniz Vagrantfile
ve bunlar bu envanter dosyasına eklenecektir.
Ansible'ı varsayılan olarak bu envanter dosyasına yapılandır:
Bu dosyayı ansible
proje dizinindeyken (ana bilgisayarda) komut tarafından kullanılan varsayılan yapmak için ansible.cfg
, yolu gerektiği gibi değiştirerek proje dizininize bu içeriklerle bir dosya ekleyin :
[defaults]
inventory = ./path/to/inventory
Bu envanter dosyasının kullanıldığını onaylamak için, bunu ansible tarafından bildirilen varsayılan olarak arayın:
(proje dizini içinden)
$ ansible | grep inventory
ERROR! Missing target hosts
-i INVENTORY, --inventory-file=INVENTORY
specify inventory host path (default=./.vagrant/provis
ioners/ansible/inventory/vagrant_ansible_inventory) or
Ana bilgisayarlarınızı onaylamak için:
$ ansible all --list-hosts
hosts (2):
master
slave
Bu ana bilgisayarlarla Ansible'ı kullanma:
Proje dizini içinden ansible
tanımladığınız ana bilgisayarlarla normal şekilde kullanabilmelisiniz Vagrantfile
.
Örneğin:
ansible slave -a 'hostname'
~/.ssh/config