Ansible Playbook

salgu·2022년 12월 14일
0

ansible

목록 보기
2/4
post-thumbnail

Ansible Playbook 이란


Ansible Playbook은 자동화 작업의 청사진이며, 이 자동화 작업은 사람의 개입 없이 실행되는 작업입니다

개발자는 미리 작성된 이 코드를 임시로 또는 시작 템플릿으로 사용할 수 있습니다. Ansible Playbook은 IT 인프라(예: 운영 체제 및 쿠버네티스 플랫폼), 네트워크, 보안 시스템, 개발자 역할(예: Git)을 자동화하기 위해 정기적으로 사용됩니다.

Ansible Playbook을 통해 IT 직원은 모든 것을 처음부터 생성하는 수작업 오버헤드 없이 애플리케이션, 서비스, 서버 노드 또는 기타 기기를 프로그래밍할 수 있습니다. 또한 Ansible Playbook은 그 안에 포함된 조건, 변수, 태스크와 함께 무기한 저장, 공유 또는 재사용할 수 있습니다.

Ansible 모듈이 태스크를 실행합니다. 한 개 이상의 Ansible 태스크를 결합하여 플레이를 만들 수 있습니다. 두 개 이상의 플레이를 결합하여 Ansible Playbook을 생성할 수 있습니다.

Redhat - what is an ansible playbook




기본적인 사용


yml 작성

다음과 같이 yml 파일을 정의 해줍니다.
hosts의 인스턴스에 tasks를 진행하는 구성이고
name : tasks의 이름
blockinfile : 파일에 특정한 block을 만들어 작업
path : 대상 파일의 경로
block : 작업내용, "|" 파이프를 적어주어야 합니다.

Ansible Playbook yml 적용

ansible-playbook {yml}

명령어를 이용하여 ansible playbook을 실행해줍니다.
yml에 작성해두었던 task가 실행되고 있는 상황을 볼 수 있습니다.

결과 확인





Ansible Playbook으로 프로그램 설치하기


Ansible을 적용할 인스턴스 지정

/etc/ansible/hosts 파일을 만들어 다음과 같이 작성해주면
playbook yml 작성할때 hosts에 devops라고 지정해주시면 해당하는 인스턴스에 playbook이 적용이 됩니다.

Playbook yml 작성

폴더를 생성하는 task는 file을 사용하고
프로그램을 다운받는 task는 get_url을 사용해서 설치하도록 하겠습니다.

Playbook yml 적용

Playbook을 적용시키면 성공적으로 완료가 됐다고 표시가 됩니다.

확인

devops에 지정해둔 두개의 인스턴스 모두 tomcat파일이 정상적으로 다운로드 된것을 확인하실 수 있습니다.





reference : 이도원 - Jenkins를 이용한 CI/CD Pipeline 구축

profile
https://github.com/leeeesanggyu, leeeesanggyu@gmail.com

0개의 댓글