공유할 서비스 선택

TECH


TECH

OS [Linux] ansible 플레이북 작성 및 실행

페이지 정보

작성자 LeeHyongDong 아이디로 검색 전체게시물 댓글 0건 조회 2,581회 좋아요 0회 작성일 21-09-28 14:09

본문

 

 

목차

1. 플레이북 작성 

2. 다중 플레이북 작성

3. 모듈 찾기

4. yml문서 구문확인

 

1. 플레이북 작성

    플레이북을 작성할때 주의해야하는것은 들여쓰기를 신경 써야한다.

    하위 항목은 상위 항목보다 들여써야 하며 계층 구조상 동일한 수준의 항목은 들여쓰기가 동일해야한다.

 

    - 간단한 플레이북 

    3536544db6926c4f1b4e6d6c91660469_1632803230_9457.png
    간단한 플레이북 문서를 예시로 플레이북의 시작은 대시 세개로 시작하며 자주 생략되지만 문서 종료는 점 세개로 표시할수 있다.

    하나의 항목은 대시 하나로 시작한다, 

    해당 예시는 간단한 사용자를 생성하는 플레이북이다. 

 

    - 웹 설치 및 실행 플레이북 

    3536544db6926c4f1b4e6d6c91660469_1632803691_8497.png
    다른 문서로 웹을 설치하고 ansible서버의 web.txt 파일을 host1서버의 /var/www/html/index.html 파일에 복사하여 아파치를 실행하는 플레이북이다. 

    두개의 예시를 볼때 동일한 키를 확인할수 있다. name. hosts, tasks 

    name에 밑의 작업의 용도를 적어 작업이 무엇인지 설명할수 있다. 

    hosts는 적용할 서버로 ansible 호스트 파일에 명시된 서버를 호출하여 사용한다. 

    tasks는 플레이를 위해 실행할 작업을 지정할 수 있다. 

    tasks 하위 항목으로 모듈을 추가하여 사용한다. 

 

    - 플레이북 실행 

    3536544db6926c4f1b4e6d6c91660469_1632804301_9357.png

    웹 설치 플레이북을 실행해본 결과 정상적으로 설치가 되고 서비스가 실행된것이 확인된다.

     

2. 다중 플레이북 작성

    다중 플레이북은 3개의 키를 추가해 새로운 항목을 한개 더 생성하는 방법이다. 

    동일한 host에서 실행한다면 모듈만 여러개를 실행하면 되지만 다른 host에서 실행해야하는 경우 많이 사용하는 방법이다. 

 

    - 다중 플레이북 

    3536544db6926c4f1b4e6d6c91660469_1632808223_2956.png 

    해당 예시는 웹 설치 플레이북을 수정하여 host1에서 httpd를 설치 및 실행 host2에서 mariadb를 설치하는 플레이북이다.

    플레이를 나눠도 두개의 플레이가 같이 실행되지 않으며 위에서 순차적으로 플레이된다. 

 

3. 모듈 찾기 

    ansible에서 패키지화된 수많은 모듈은 관리자에게 다양한 작업툴을 제공하지만 자주 사용하는 모듈이 아닌경우 사용하는 방법을 찾아서 사용해야 한다. 

    ansible 웹페이지 혹은 ansible-doc 명령어를 통해 모듈 설명서를 참조할수 있다. 

 

    - ansible-doc list 

    3536544db6926c4f1b4e6d6c91660469_1632808829_0288.png
    ansible-doc -l 을 사용하면 vi편집기처럼 리스트를 검색할수 있으며 /<모듈명>을 사용해 키워드 검색이 가능하다. 

 

    - yum 모듈 설명서

    3536544db6926c4f1b4e6d6c91660469_1632808946_1638.png
    ansible-doc <모듈명> 을 통해 해당 모듈에 대한 자세한 설명서를 확인할수 있으며 옵션의 상세 설명을 볼수 있다.

 

    - yum 플레이북 작성 예시

    3536544db6926c4f1b4e6d6c91660469_1632809059_6438.png
    ansible-doc -s <모듈명>을 사용하면 해당 모듈을 플레이북 작성시 문구 예시를 확인할수 있다. 해당 예시는 다 추가할 필요 없이 필수 옵션만 추가하면 정상 작동 된다.
 

4. 플레이북 구문 확인

    플레이북을 사용하다 보면 들여쓰기 혹은 오타로 인해 정상적으로 실행되지 않는 경험을 많이 한다. 

    플레이북을 하나하나 다 확인하기 힘들기 때문에 ansible-playbook에 --syntax-check 옵션을 추가하면 해당 문서에 구문 에러가 없는지 확인할수 있다. 

 

    - 실패 예시 

    3536544db6926c4f1b4e6d6c91660469_1632809558_5118.png
    출력된 결과는 어떤 항목인지 확인하여 해당 항목을 확인하여 구문 에러를 수정할수 있다. 

 

    - 정상 예시 

    3536544db6926c4f1b4e6d6c91660469_1632809727_9695.png
    해당 명령어는 구문 에러만 확인하는것으로 모듈 사용법이 잘못된 경우는 해당 옵션으로 확인이 불가능 하다. 

 

댓글목록

등록된 댓글이 없습니다.

TECH 목록
번호 제목 작성자 작성일 조회수
104 Middleware 미들웨어 아이디로 검색 전체게시물 11-19 2545
(JBoss & Wildfly) CJMX란? 사용방법 가이드 (Code Cache 불러오기)

카테고리 : Middleware

2,545 0
작성자 : 미들웨어 21/11/19
103 ETC Leesangwoo 아이디로 검색 전체게시물 11-12 8889
[ MariaDB ] MariaDB 상태확인 및 점검

카테고리 : ETC

8,889 0
작성자 : Leesangwoo 21/11/12
102 Middleware 미들웨어 아이디로 검색 전체게시물 11-08 4577
(Tomcat) tomcat 9 스크립트 공유 (setenv.sh / kill.sh / memory_dump.sh / tail.sh / startup.sh / shutdown.sh)

카테고리 : Middleware

4,577 1
작성자 : 미들웨어 21/11/08
101 OS LeeHyongDong 아이디로 검색 전체게시물 10-20 6818
[Linux] NFS 동작 아키텍쳐 및 포트 변경

카테고리 : OS

6,818 0
작성자 : LeeHyongDong 21/10/20
100 Middleware 미들웨어 아이디로 검색 전체게시물 10-20 2376
(Kubernetes-5) 신규VM 생성, kubectl 설치 후 접속 방법

카테고리 : Middleware

2,376 0
작성자 : 미들웨어 21/10/20
99 Middleware 미들웨어 아이디로 검색 전체게시물 10-05 2272
(Kubernetes-4) docker 설치 & 삭제하기

카테고리 : Middleware

2,272 0
작성자 : 미들웨어 21/10/05
열람중 OS LeeHyongDong 아이디로 검색 전체게시물 09-28 2582
열람중
[Linux] ansible 플레이북 작성 및 실행

카테고리 : OS

2,582 0
작성자 : LeeHyongDong 21/09/28
97 Middleware 미들웨어 아이디로 검색 전체게시물 09-23 2909
(Kubernetes-3) prometheus & Grafana 활용하여 모니터링 구성하기

카테고리 : Middleware

2,909 0
작성자 : 미들웨어 21/09/23
96 Middleware 미들웨어 아이디로 검색 전체게시물 09-06 3586
(Kubernetes-2) 오라클 클라우드로(무료 VM) 쿠버네티스 (OKE) 생성 및 Nginx 기동

카테고리 : Middleware

3,586 0
작성자 : 미들웨어 21/09/06
95 Middleware 미들웨어 아이디로 검색 전체게시물 08-26 3063
(Kubernetes-1) Kubernetes 아키텍처 흐름도 와 개념 정리

카테고리 : Middleware

3,063 0
작성자 : 미들웨어 21/08/26
Total 234건
게시물 검색

주식회사 클럭스| 대표 : 이찬호| 사업자등록번호 : 107-87-27655
주소 : 서울특별시 영등포구 국회대로 800, 여의도파라곤
E-mail : sales@chlux.co.kr
Copyright © 클럭스 chlux.co.kr All rights reserved.
상단으로Top