지난 주에 공부 했던 [인프라 구성관리 및 프로비저닝을 위한 Ansible 활용과정] 중에
AWX(Ansible Works)라는 오픈소스 (Ansible 환경에 Django 웹프레임워크로 개발)
- 주) AWX의 대시보드로 RESTful API를 사용해서 CLI모드가 아닌 GUI모드로 Ansible과 상호작용해서 프로비저닝을 할 수 있습니다.
위 AWX를 설치 하지 못하고 있다고, 오늘 드디어 설치해서 로그인 해 보았습니다.(아래)
설치 내역 정리
- 버추얼박스 기반의 베어그란트(vagrant) 로 박스 생성
------ 윈도우 파워쉘 에서 ------
버추얼박스설치: https://download.virtualbox.org/virtualbox/6.0.4/VirtualBox-6.0.4-128413-Win.exe
베어그랜트설치: https://releases.hashicorp.com/vagrant/2.2.4/vagrant_2.2.4_x86_64.msi
D: (저는 D드라이브에 ansible 폴더를 생성 했습니다.)
mkdir ansible
cd \ansible (Vagrantfile 파일 복사)
(이전 포스트의 Vagrant 파일은 3개의 노드를 사용했으나, 속도 때문에 현재는 2개의 노드 controller, host1 만 사용했음).
(controller 노드: Cpu1, Mem4096, IP: 192.168.56.100 / host1 노드: Cpu1, Mem:1024, IP:192.168.56.101)
vagrant plugin install vagrant-hostmanager (베어그랜트 호스트네임 플러그인 설치)
vagrant plugin list (확인)
vagrant box add centos/7 (삭제: vagrant box remove centos/7 --all)
vagrant up
vagrant status (확인)
vagrant ssh controller (SSH접속암호: vagrant)
------ 버추얼박스 ssh 접속 이후 접속키파일 생성(필수는 아님, 건너띄고 나중에해도 됨)------
ls ~/.ssh (이미 1개 authorized_keys 파일 있는데, 암호 없이 ssh 접속이 가능하게 한다.)
ssh-keygen (새로 생성하는 이유는 Ansible AWX에서 파일 인증에 사용하려고...암호 없이 생성)
ls ~/.ssh ( id_rsa id_rsa.pub 추가로 2개 파일 생성됨)
ssh-copy-id vagrant@host1 (id_rsa.pub파일의 공개키를 원격노드 authorized_keys에 내용추가)
ssh-copy-id vagrant@controller (id_rsa.pub파일의 공개키를 원격노드 authorized_keys에 내용추가)
------ 버추얼박스 ssh 접속 이후 접속키파일 생성(필수는 아님, 건너띄고 나중에해도 됨)------
- 도커기반 AWX설치시 필수 SW설치
sudo yum -y update
sudo reboot
sudo yum -y install bzip2 device-mapper-persistent-data gcc gcc-c++ gettext lvm2 yum-utils
sudo yum -y install epel-release
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum -y update
sudo yum -y install ansible python-pip (앤서블 설치)
sudo yum -y install docker-ce (도커설치)
sudo systemctl enable docker
sudo systemctl start docker
sudo pip install -U docker-py
sudo pip install --upgrade pip
sudo pip install docker-compose==1.9.0
- 앤시블 플레이북 으로 AWX설치
sudo yum -y install git
git clone --depth 50 https://github.com/ansible/awx.git
cd awx/installer
vi inventory
postgres_data_dir=/var/lib/pgdocker (경로변경-재부팅시 수정값을 저장하기 위해서)
#project_data_dir=/var/lib/awx/projects (주석해제)
ansible-playbook -i inventory install.yml -b
- 리눅스 방화벽 제거
sudo systemctl disable firewalld
sudo systemctl stop firewalld
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
sudo setenforce 0
curl http://controller/ 또는 http://192.168.56.100/ (리눅스 로컬에서 작동확인)
- 웹브라우저 접속 (버추얼박스 밖 윈도브라우저에서...)
http://controller/ 또는 http://192.168.56.100/
- 작업완료 후
exit
D:/ansible/vagrant halt (버추얼박스 파워끄기- 이 후에 재 기동시 vagrant up 하면, 도커는 실행 중인 상태로 있기 때문에
http://192.168.56.100 또는 http://controller/ 로 바로 접근 가능함.)
이후 AWX를 사용해 보아야 합니다. 작업 순서는 아래와 같습니다.
02_awx_인증서생성.JPG
03_awx_인벤터생성.JPG
04_awx_템플릿생성.JPG
05_awx_프로젝트생성
Ps. 참고자료
- Vagrant 박스를 삭제 할때
D:/ansible/vagrant destroy -f
- 도커 컨테이너를 초기화 시킬때
sudo docker stop $(sudo docker ps -a -q)
sudo docker rm $(sudo docker ps -a -q)
Ps2. 포스트그레스 PostgreSQL DB 설치 및 ERD만들기
- 설치 기술 참조: nittaku.tistory.com/415
- ERD 만들기 기술 참조 blog.daum.net/geoscience/1102
워드프레스 웹사이트 도커기반 쿠버네티스로 프로비저닝 하기_1 (0) | 2019.06.06 |
---|---|
노드js express를 마이크로서비스로 변환하기 (0) | 2019.06.04 |
클라우드 앤서블_기타 (0) | 2019.05.16 |
클라우드 앤서블_3 (0) | 2019.05.16 |
클라우드 앤서블_2 (0) | 2019.05.14 |
댓글 영역