본문 바로가기

클라우드/앤서블(Ansible)

앤서블 Ansible AWX

https://github.com/ansible/awx

 

GitHub - ansible/awx: AWX Project

AWX Project. Contribute to ansible/awx development by creating an account on GitHub.

github.com

 

 

 

 

# AWX

 

웹 기반 사용자 인터페이스를 (web base user interface) 제공하는 Ansible

앤서블은 레드햇이 소유권을 가지고 있다. CLI Command는 별도로 유료 버전은 없는데 기본적으로 레드햇에서 Ansible Tower라는 제품의 오픈소스가 AWX 이다. 

플레이북을 실행하고 모니링하는데에 웹 인터페이스를 사용한다.

 

# AWX의 특징

- 실시간 작업 모니터링

- 역할 기반 접근 제어 (RBAC)

- RESTful API

- 원격 명령 실행

- 통합 알림 : 플레이북 실패시에 알림을 받을 수 있다 (이메일, Grafana, IRC, Mattermost, PagerDuty, Rocket.Chat, Slack, Twilio, Webhook)

- 향상된 인증 : LDAP, SMAL, OAuth2

- 인벤토리 플러그인 :  Amazon EC2, GCE, Azure RM, VMware, Foreman, OpenStack, oVirt, AWX

 

# AWX 설치

현재 최신버전 19 버전이다. 18버전 부터는 설치 방법을 쿠버네티스에서만 설치 가능하도록 바꾸었다.

17.1 버전을 사용하여 doker-compose로 설치하여 실습

 

# docker 설치

# docker-compose 설치

# AWX 설치 - AWX Git 저장소 클론

# 인벤토리 변수 설정

# AWX 플레이북 설치 실행

# 설치된 컨테이너 확인

# 프로젝트의 플레이북 디렉토리 생성 / 플레이북 생성

 

# AWX 대시보드 접근

# 프로젝트 리소스 생성

# 자격증명 리소스 생성

 

 

# 인벤토리 리소스 생성

ldhinventory (인벤토리 리소스)

       ㄴ ldhgroup (그룹)

             ㄴ 192.168.200.101 (호스트)

             ㄴ 192.168.200.102 (호스트)

# 인벤토리 그룹 생성

 

# 인벤토리 호스트 생성

 

# 템플릿 리소스 생성

 

# 템플릿 실행 및 출력