본문 바로가기
Hello World/IaC

[Ansible/AWX] Ubuntu에 AWX 설치 따라하기

by Run DaramG 2021. 3. 17.

Ansible 을 GUI 로 관리하고, api로 제어할수 있도록 해주는 시스템이다. Playbook 을 관리하고 운영하는데 필요한 여러 기능을 제공한다. 서버에 AWX를 설치해보고 사용법 익히자.

 

설치 서버 사양

- Ubuntun 14.04

- Python 2.7

 

 

1. 사전에 설치가 필요한 package 

##ansible, docker, docker-compose

sudo apt update && sudo apt -y upgrade

apt-get install ansible

apt-get install sshpass

pip install docker-py

pip install docker-compose

##pip

pip install --upgrade pip

pip install docker-compose --ignore-installed

##pip module : python module version 이 낮은경우 발생하는 문제를 회피하기위해 설치

pip install requests urllib3 pyOpenSSL --force --upgrade

 

2. AWX git clone

-b 옵션으로 특정버전을 다운로드 받는다. (최신 버전은 python 3에서만 동작하여 Ver10으로 설치함)

github.com/ansible/awx/releases

git clone -b 10.0.0 https://github.com/ansible/awx.git

 

 

3. Config 설정 (installer/inventory)

변경이 필요한 부분이 있으면 변경한다. 나는 80port가 사용중이어서 host port 만 99로 변경하였다.

$vi installer/inventory

#host port 설정
host_port=99

#admin_password설정
admin_user=admin
admin_password=password

#awx docker 관련 설정들이 저장되는 위치
postgres_data_dir="~/.awx/pgdocker"
docker_compose_dir="~/.awx/awxcompose"

 

4. AWX install

cd installer
ansible-playbook -i inventory install.yml

 

아래와 같이 필요한 task들이 진행되며 설치가 진행된다.

 

$docker ps 명령어를 통해 정상적으로 awx container가 생성된것을 볼수 있다.

 

5. AWX 접속

IP(localhost):port 로 접속 후 로그인하자 (admin, password)

 

test하는 서버의 python version 이 낮아서 그런지 awx 최신버전이 설치할때 다양한 에러들이 발생했다. study 용이어서 속편하게 AWX ver10으로 설치하고 진행했음.

아래와 같은 에러 혹은 아예 모든 task가 skip 되는 경우 등..... 

TASK [local_docker : Start the containers] ************************************************************************************************************************************************
fatal: [localhost]: FAILED! => {"changed": false, "msg": "Failed to import the required Python library (Docker SDK for Python: docker (Python >= 2.7) or docker-py (Python 2.6)) on LGEABMS01P's Python /usr/local/bin/python3. Please read module documentation and install in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter, for example via `pip install docker` or `pip install docker-py` (Python 2.6). The error was: No module named 'docker'"}

 

댓글