3가지 유형의 파일
구성파일: Ansible의 동작방법을 설정하는 파일
기본위치 /etc/ansible/ansible.cfg
기본적으로 구성 파일은 /etc/ansible/ansible.cfg에 위치하지만, 일반적으로 프로젝트별 작업 디렉토리를 생성해 해당 디렉토리에서 구성 파일을 관리합니다.
기본 인벤토리 파일
[defaults]
inventory = ./inventory
remote_user = user
ask_pass = false
[privilege_escalation]
become = true
become_method = sudo
become_user = root
become_ask_pass = false #기본값
다음은 각 행에 대한 설명입니다. (중요!!!!)
(=ansible user)
vi ansible.cfg
ansible config list #목록
ansible_user ALL=(ALL) NOPASSWD:ALL
Ansible 구성 파일의[privilege_escalation] 섹션에 설정
구성 파일에 become = true 매개 변수를 설정
vi inventory
호스트 명 혹은 IP주소를 한줄에 입력
호스트 그룹을 지정
그룹에 포함하지 않는 것은 맨 위에 지정
맨 아래에 지정하면 마지막 그룹에 편성
serverd # 그룹 지정 X
[seoul]
servera
[busan]
serverb
serverc
[dev]
serverc
[prod]
servera
serverb
serverd #prod 그룹
- all : 모든 호스트 목록을 포함하는 그룹
- ungrouped : 인벤토리에서 그룹에 속하지 않는 모든 호스트 목록
[dev]
web1.test.com
web2.test.com
[prod]
web3.test.com
web4.test.com
[web-servers:children]
dev
prod
호스트 그룹 이름 생성 시:children 접미사를 추가, 그룹을 멤버로(상속)
: web1,web2,web3,web4 다 실행
[처음값:마지막값]
모든 호스트 한 줄로 표현 가능
ansible 명령어의 -i 인자는 인벤토리 파일의 기본위치가 아닌 사용자가 원하는 파일로 대체하는 옵션
ansible -i ./inventory
사용자는 앤서블 구성파일의 defaults 섹션에서 인벤토리 파일의 위치를 정의
[defaults]
inventory = ./inventory
실행 가능한 스크립트 파일들