ansible 3

Ansible - Playbook Tutorial(3/3)

Ansible Roles Ansible은 사용자가 만든 Module의 재사용성을 높이고 커뮤니티 내에서 공유하기 Role 이라는 개념을 제공한다. 보통 Role은 아래와 같은 파일 계층으로 구성된다. 예를 들어, webserver 라는 Role이 있다고 가정하자. 하지만 사용자가 Role 디렉토리와 파일을 처음부터 직접 만드는 대신, 아래 명령어를 통해 간단하게 생성 가능하다. ansible-galaxy init webserver 참고로 다른 사용자가 이미 만들어놓은 Role을 import 하는 명령어는 아래와 같다. ansible-galaxy import webserver 저번 실습에선 include 키워드를 통해 다른 파일에 위치한 task들을 가져왔다. 이번엔 flask-web, mysql-db r..

IaC 2021.03.07

Ansible - Playbook Tutorial(2/3)

지난번에 이어 Playbook을 개선할 시간이다. Ansible - Playbook Tutorial(1/3) 설치 Ubuntu 환경에서 다음 명령어로 Ansible을 손쉽게 설치할 수 있다. Ansible Controller로 사용할 Machine에서 실행한다. sudo apt update sudo apt install software-properties-common sudo apt-add-reposit.. cwal.tistory.com vars 필드에 Playbook에서 사용할 변수들을 정의한 적이 있었다. 하지만 모든 Host가 동일한 DB 정보를 가지고 있지 않을 수 있다. 예를 들어 dev와 staging의 DB Name이나 사용자가 다를 수 있다. 이러한 케이스를 위해 개별 host마다 별도의 ..

IaC 2021.03.06

Ansible - Playbook Tutorial(1/3)

설치 Ubuntu 환경에서 다음 명령어로 Ansible을 손쉽게 설치할 수 있다. Ansible Controller로 사용할 Machine에서 실행한다. sudo apt update sudo apt install software-properties-common sudo apt-add-repository --yes --update ppa:ansible/ansible sudo apt install ansible 테스트 제대로 설치되었는지 확인해보기 위해 아래와 같은 테스트 코드를 작성해보자. 우선 inventory.txt에 관리할 서버에 대한 정보를 추가한다. 각 Host는 SSH 서버가 실행중인 상태로, Ansible Controller와 연결이 가능해야 한다. [test-servers] test-serv..

IaC 2021.03.06