AWX
AWX 실습 #06_Yaml 파일 생성
거나미스
2019. 1. 2. 11:05
반응형
- yaml이란
- YAML Ain't Markup Language의 약어
- 구조화된 데이터나 오브젝트를 문자열로 변환 및 관리하기 위한 데이터 형식의 한 종류
- 사람이 쉽게 읽을 수 있는 데이터 직렬화 양식
- JSON이나 XML과 유사하나 가독성이 뛰어남
- JSON과 상위 호환
- 확장자는 대부분 .yml로 표기 (8.3 포맷의 경우)
- 공백문자의 갯수로 상위와 구분 (탭문자는 사용할 경우 디버깅의 문제가 발생함)
- 특수문자는 \(역슬래쉬)키와 함께 사용 됨 (c 코딩 패턴과 유사)
- yaml 방식 비교
- 구분소스 (단순 비교를 위한 코드임)
XML <keys>
<key1> <value>value1</value>
</key1> <key2> <value>1</value> <value>2</value> <value>3</value>
</key2>
<key3> <keys> <keys3-1> <value>1</value> </keys3-1> <keys3-2> <value>4</value> <value>5</value> <value>6</value> </keys3-2> </keys>
</key2> </keys>JSON {"key1":"value1","key2":[1,2,3]","key3":{"key3-1":"value3-1","key3-2":"value":[4,5,6]}}
YAML --- key1: value1 key2: [1,2,3] key3: key3-1: value3-1 key3-2: [4,5,6]
- 샘플 코드 작성
- 하기 샘플 코드는 다른 명령어로도 가능하나 기본적인 테스트를 위해 작성 됨
- HOST VM에 접속하여 샘플 코드를 /var/lib/awx/projects/awxtest에 각각 작성하여 저장
- vi 명령어는 VI명령어 를 참조
- 주의 : 모든 소스의 들여쓰기는 맞추어야 함(우측 이미지 참고, 탭 사용 금지)
- helloworld.yml 작성
---
- name: Hello World!
hosts: alltasks:
- name: Hello World!
shell: echo "Hi! It is working"- firewall 서비스 시작 (startFirewall.yml)
---
- name: Turn on the FireWall in system
hosts: alltasks:
- name: execute command for firewall
shell: systemctl start firewalldfirewall 서비스 중지 (stopFirewall.yml)
---
- name: Turn on the FireWall in system
hosts: alltasks:
- name: execute command for firewall
shell: systemctl stop firewalld- 작성 후 최종 화면 (read 권한 확인)
- -
- 목표
- yaml 파일 생성