[Linux] 앤서블 플레이북 사용

 플레이 북


하기 링크를 참조하여 엔서블 설치 및 테스트를 진행합니다 . 



엔서블이 시행할 정책과 행동을 자세히 정의하고, 현재의 환경 설정 프로파일을 쉽게 공유하게 해줍니다 . 플레이북은 다음 두가지 방법으로 사용합니다 .

  • 간단한 독립형 스크립트 
  • 특별한 구조의 디렉터리 트리에 분산된 리소스들을 가리키는 참조 ( 복잡한 환경에서 사용) 
이번 포스팅에서는 간단한 독립형 스크립트를 이용한 플레이북을 사용해 보겠습니다.


간단한 플레이북 작성 


copy 모듈과 같은 모듈 , 리눅스 시스템 작업을 실행하는 태스크 , 시스템 이벤트에 동적으로 반응하는 처리기를 사용합니다 . 
우선 /etc/ansible에 있는 hosts 파일이 최신인지 확인 합니다 . 


YAML 생성


/etc/ansible/에 site.yml이라는 YAML 형식의 파일을 생성 합니다 .


해설

파일 첫줄에 연속된 ---가 나오고 , hostm tasks,handlers 라는 총 세개의 항목이 있습니다 . 


여기서 hosts 항목은 파일에 정의된 webservers 그룹에 플레이북을 적용하라고 합니다 .


task 항목은 세게의 테스크를 정의 합니다 . 


yum 데스크는 아파치 웹서버를 설치, copy 테스크는 로컬 파일을 웹 문서 루트에 복사 하며 , service 테스크는 systemctl  과 비슷하게 실행 여부를 확인합니다 . 



테스트 파일 생성 

스크립트에 따라 index.html을 /home/usera에 생성했습니다.
















플레이북 실행

# ansible-playbook site.yml 


모든 작업이 성공적으로 이루어졌습니다 . 호스트 컴퓨터에 웹 도큐먼트를 확인합니다


결과 







기존에 생성했던  index.html이 정상적으로 호스트에 index2.html로 복사 되었습니다 .

서비스도 정상적으로 작동합니다.

다음에는 좀더 복잡한 환경에서 플레이 북 서비스를 실행 시켜보겠습니다.