면책 조항 : 나는 이것을 OSX에서만 테스트했습니다. 다양한 문서를 기반으로 다른 플랫폼에서 작동 할 것으로 기대합니다.
"프로젝트 디렉토리"는 Vagrant 프로젝트의 기본 디렉토리를 포함하는 디렉토리를 나타냅니다 Vagrantfile
.
Vagrant가 자동 생성 한 Ansible Inventory 파일 :
Vagrant 는 기본 Ansible 연결 변수를 사용하여 인벤토리 파일 을 만듭니다 . 에서 찾아보십시오 <project directory>/.vagrant/provisioners/ansible/inventory/vagrant_ansible_inventory
.
이 파일은 필요에 따라 Vagrant에 의해 재생성되므로 수동 편집 내용을 덮어 씁니다. 그러나 Vagrant 문서에 따르면 여러 시스템, 그룹 변수 등을 지정할 수 있으며이 Vagrantfile
인벤토리 파일에 추가됩니다.
이 인벤토리 파일을 기본값으로 설정하십시오.
이 파일을 ansible
프로젝트 디렉토리 (호스트의)에있을 때 명령에서 사용하는 기본값으로 만들려면 ansible.cfg
다음과 같은 내용으로 프로젝트 디렉토리에 파일을 추가하고 필요에 따라 경로를 변경하십시오.
[defaults]
inventory = ./path/to/inventory
이 인벤토리 파일이 사용 중인지 확인하려면 해당 인벤토리 파일을 ansible에서보고 한 기본값으로 찾으십시오.
(프로젝트 디렉토리 내에서)
$ 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
호스트를 확인하려면
$ ansible all --list-hosts
hosts (2):
master
slave
다음 호스트에서 Ansible 사용 :
그런 다음 프로젝트 디렉토리에서에 ansible
정의한 호스트에서 정상적으로 사용할 수 있어야합니다 Vagrantfile
.
예를 들면 다음과 같습니다.
ansible slave -a 'hostname'
~/.ssh/config