Ssoon
[ Part-2 ] 앤서블 기본 사용법 - 변수 본문
CloudNet@ 가시다님이 진행하는 Ansible 101 Study
"앤서블로 시작하는 인프라 자동화" (한빛미디어) 로 진행
✅ 변수의 종류와 사용법
- 시스템 작업 시 사용되는 다양한 값을 변수를 사용하여 저장 ▶ 플레이북 재사용
💠 그룹 변수
- 인벤토리에 정의된 호스트 그룹에 적용하는 변수
- 인벤토리에 선언
- 선언하고자 하는 그룹명과 함께 :vard 문자열을 추가
- all 이라는 그룹에서 user라는 변수 사용
[all:vars]
user=ansible
- create-user.yml 생성
- 시스템 사용자 생성 ▶ ansible.builtin.user 모듈 사용
---
- hosts: all
tasks:
- name: create user {{ user }}
ansible.builtin.user:
name: "{{ user }}"
state: present
- tnode1-centos 에 접속 ▶ /home 디렉터리 아래에 ansible 생성 확인
💠 호스트 변수
- 변수를 해당 호스트에서만 사용
- db그룹에 user=ansible1 변수 선언
[db]
tnode3-rocky.exp.com user=ansible1
- cp create-user.yml create-user1.yml ▶ hosts: db로 수정
---
- hosts: db
tasks:
- name: create user {{ user }}
ansible.builtin.user:
name: "{{ user }}"
state: present
- ansible-playbook 실행
- tnode3-rocky 접속 ▶ /home 디렉터리 아래에 ansible1 생성 확인
💠 플레이 변수
- 풀레이북 내에서 선언되는 변수
- cp create-user1.yml create-user3.yml ▶ hosts 아래에 var 추가
---
- hosts: db
vars:
user: ansible2
tasks:
- name: create user {{ user }}
ansible.builtin.user:
name: "{{ user }}"
state: present
- ansible-playbook 실행
- tnode3-rocky 접속 ▶ /home 디렉터리 아래에 ansible2 생성 확인
- 플레이 변수를 별도의 파일로 분리
users: ansible4
- cp create-user3.yml create-user4.yml
- hosts: all
vars_files:
- vars/users.yml
tasks:
- name: create user {{ user }}
ansible.builtin.user:
name: "{{ user }}"
state: present
- ansible-playbook 실행
💠 추가 변수
- 외부에서 ansible-playbook 실행 할 때 함께 파라미터로 넘겨주는 변수
💠 작업 변수
- 플레이북의 태스크 수행 결좌를 저장
- 특정 작업 수행 후 그 결과를 후속 작업에서 사용
- cp create-user1.yml create-user6.yml
- register 선언 ▶ 태스크에서 실행한 결과를 register 다음에 나오는 result 변수에 저장
- hosts: db
tasks:
- name: create user {{ user }}
ansible.builtin.user:
name: "{{ user }}"
state: present
register: result
- ansible.builtin.debug:
var: result
- result 변수에 저장한 결과를 debig 모듈로 출력
'Ansible 101 Study' 카테고리의 다른 글
[ Part-2 ] 앤서블 기본 사용법 - 팩트 (0) | 2024.01.14 |
---|---|
[ Part-2 ] 앤서블 기본 사용법 - Ansible Vault (0) | 2024.01.13 |
[ Part-2 ] 앤서블 기본 사용법 - 첫 번째 플레이북 작성하기 (0) | 2024.01.08 |
[ Part-2 ] 앤서블 기본 사용법 - 자동화 대상 호스트 선정하기 (0) | 2024.01.08 |
[ Part-1 ] 앤서블 시작하기 - 앤서블 실습 환경 준비하기 (0) | 2024.01.08 |
Comments