앤서블의 호스트 지정 패턴
플레이북의 host 매개 변수에 보통 단일 호스트 또는 그룹을 지정하는데..
hosts: web
단일 호스트 또는 그룹을 지정하는 대신 패턴을 지정할 수도 있다. 이미 all 패턴을 봤었다. all 패턴은 알려진 모든 호스트들에 대해 플레이를 실행할 것이다.
hosts: all
콜론을 사용해 두 그룹의 합집합을 지정할 수 있다. 다음처럼 모든 dev 머신 및 staging 머신을 지정할 수 있다.
hosts: dev:staging
\콜론과 앰퍼샌드(:&)를 사용하여 교집합을 지정할 수 있다. 예를 들어 staging 환경에서 모든 데이터베이스 서버를 지정하려면 다음처럼 지정할 수 있다.
hosts: staging:&database
표 9-1은 앤서블이 지원하는 패턴을 보여준다. 정규식 패턴은 항상 물결 기호(~)로 시작한다.
액션 | 사용 예시 |
모든 호스트 | all |
모든 호스트 | * |
합집합 | dev:staging |
교집합 | staging:&database |
배제 | dev:!queue |
와일드카드 | *.example.com |
번호로 지정한 서버의 범위 | web[5:10] |
정규식 | ~web\d+\.example\.(com|org) |
앤서블은 여러 패턴 조합을 지원한다. 예를 들면 다음과 같다.
hosts: dev:staging:&database:!queue
또한 호스트의 임의 조합을 예시처럼 지정할 수 있다.
$ ansible-playbook -l 'staging:&database' playbook.yml
'Ansible-Puppet-Chef' 카테고리의 다른 글
vagrant의 multi-VM environment 설정 예시 (0) | 2019.01.27 |
---|---|
ansible에서 태스크 실행 시간과 플레이북의 전체 실행 시간 보기 (0) | 2019.01.26 |
ansible-vault 간단 커맨드 (0) | 2019.01.19 |
[ansible] copy mode 주의사항 (0) | 2019.01.14 |
ansible-galaxy (0) | 2019.01.14 |