Ansible AWX Install Guide : 기본 설치 및 구성
AWX는 Ansible을위한 사용자 인터페이스, REST API 및 태스크 엔진을 제공하는 오픈 소스 웹 애플리케이션입니다. Ansible Tower의 오픈 소스 버전입니다. AWX를 사용하면 Ansible 플레이 북, 인벤토리를 관리하고 웹 인터페이스를 사용하여 작업을 예약 할 수 있습니다.
이번 블로그 포스팅에는 awx ansible에 대한 설정 자격 증명, 인벤토리, 설정 및 실행 작업 템플릿 등과 같이 알아야 할 Ansible AWX의 일부 기본 구성을 작성하려고 합니다.
전제조건
- Ansible AWX 서버
- Ansible에 대한 기본 이해
- 루트 권한
주요 내용
- 환경 설정 및 구성
- 자격 증명 설정
- 설정 인벤토리
- 설치 프로젝트
- 설정 작업 템플릿
- 작업 실행
1단계 - 환경 설정 및 구성
환경을 구성하기에 앞서 yum 명령어를 통하여 업데이트를 진행하여 줍니다.
- yum update
이제 yum을 이용하여 awx-ansible에서 사용하는 기본 패키지를 설치합니다.
- sudo yum -y install bzip2 device-mapper-persistent-data gcc gcc-c++ git gettext lvm2 yum-utils python3 pip3
편의성을 위해 selinux를 disalble 시켜놓고 작업하였습니다. 이제 pip3와 python3를 기본으로 동작하도록 변경해주세요.
- alias python='/usr/bin/python3'
- alias pip='/usr/bin/pip3'
- source .bashrc
- yum install -y libselinux-python3
이제 python을 이용하여 도커를 설치해주세요.
- pip install docker docker-py docker-compose
다음으로 EPEL repository를 설치하고, Docker repository까지 추가해주세요
- sudo yum -y install epel-release
- sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
레포를 추가하였으면 yum update 작업을 진행하여 주시면 완료되었습니다. 이제 Ansible과 pip를 설치하여 줍니다.
- sudo yum -y install ansible python-pip
위에 설치가 완료 되었으면 Docker-CE버전을 설치하여줍니다.
- sudo yum -y install docker-ce
- sudo systemctl enable docker && systemctl start docker
다 받으셨으면 git을 이용하여 AWX 프로젝트를 Clone으로 받고 설치를 계속 진행하겠습니다.
- git clone --depth 50 https://github.com/ansible/awx.git
- cd awx/installer
- ansible-playbook -i inventory install.yml
해당 명령을 통해 설치 진행을 완료해주시면 됩니다.
이제 awx 내의 설정파일인 inventory 설정을 변경하여줍니다.
- cd awx/installer
- vi inventory
설치가 완료되었습니다. 이제 방화벽 정책을 열어 주시면 됩니다.
- firewall-cmd --add-service=http --permanent;firewall-cmd --add-service=https --permanent
- firewall-cmd --reload
이제 awx 타워를 올려 보도록 하겠습니다.
저는 파이썬 이슈가 조금 있어서 해당 내용을 추가하여 알려드리겠습니다.
- pip uninstall docker docker-py docker-compose
- pip install docker-compose
해당 내용은 python3로 셋업했는데 무엇인가 잘못 설정했는지 충돌이 되었던 것 같습니다.
해당 명령어를 이용하여 재설치를 진행하고 증상은 해소가 되었습니다.
이제 다시 awx 타워를 올려보겠습니다.
- docker logs -f awx_task
해당 명령어를 쳤을 때 아래와 같이 나온다면 타워가 현재 올라가는 중으로 설치는 완료되 었습니다.
엄청나게 오래 걸리니 그냥 두시면 됩니다. 최초셋업 때만 그러니 신경 안쓰셔도 됩니다.
참고문헌
https://devdocs.io/ansible~2.9/installation_guide/intro_installation
https://stackoverflow.com/questions/50151210/unable-to-run-docker-compose-in-an-ansible-playbook
댓글
댓글 쓰기