본문 바로가기

Automation Tools/Ansible

3.1 ansible | [AWX] 설치

반응형

  • 개요 : ansible-tower의 오픈소스 버전으로 DOCKER 기반의 ansible manager (GUI)
    - 스케줄 기능과 작업 수행에 따른 알림 기능으로 시스템의 auto configure 기능 뿐만 아니라 cron 스케줄에도 유용할것으로 보임.
  • 설치 : Centos7 기준
## 필수 패키지 설치
[root@docker1 ~]# yum -y install epel-release yum-utils git
 
 
## docker 레포 추가
[root@docker1 ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
 
 
## ansible, pip 설치
[root@docker1 ~]# yum -y install ansible python3 python3-pip
[root@docker1 ~]# pip3 install --upgrade pip
 
 
## docker 설치 및 시작
[root@docker1 ~]# yum -y install docker-ce
[root@docker1 ~]# systemctl enable docker
[root@docker1 ~]# systemctl start docker
 
 
## docker-compose 설치
[root@docker1 ~]# pip3 install docker-compose
 
 
## awx 복제
[root@docker1 opt] git clone https://github.com/Ansible/awx.git

## 설치에 사용한 버전은 17.0.1이며 해당 릴리즈를 가져오려면
[root@docker1 ~]# cd /opt/awx
[root@docker1 awx]# git checkout 17.0.1
# 확인
[root@docker1 awx]# cat VERSION
 
 
## inventory 수정
[root@docker1 ~]# cd /opt/awx/installer/
[root@docker1 installer]# cat inventory
...
admin_user=admin
admin_password=password
...
 
## awx 설치
[root@docker1 installer]# ansible-playbook -i inventory install.yml
 
 
[root@docker1 installer]# docker ps
CONTAINER ID   IMAGE                COMMAND                  CREATED         STATUS         PORTS                  NAMES
edffd7273c8a   ansible/awx:17.0.1   "/usr/bin/tini -- /u…"   2 minutes ago   Up 2 minutes   8052/tcp               awx_task
130bfe780e28   ansible/awx:17.0.1   "/usr/bin/tini -- /b…"   2 minutes ago   Up 2 minutes   0.0.0.0:80->8052/tcp   awx_web
eb67893789ad   redis                "docker-entrypoint.s…"   2 minutes ago   Up 2 minutes   6379/tcp               awx_redis
592c50cfdb1b   postgres:12          "docker-entrypoint.s…"   2 minutes ago   Up 2 minutes   5432/tcp               awx_postgres
  • 계정 : awx나 ansible이 사용할 공통 계정을 사용하는 것이 좋으므로 각 운영 시스템에 ansible이라는 계정과 sudo 권한 설정을 함.
반응형