최대 1 분 소요

Gather_facts

ansible-playbook.yml파일들을 보다보면 gather_facts라는 것이 보입니다.

Facts?

ansible에서 node에 동적으로 할당되는 변수들을 의미합니다. 각 노드들의 정보를 취합하는 옵션이라고 보시면 됩니다.

How?

- name: Gethe Facts
  hosts:
    - all
  gather_facts: true
  tasks:
    - include: ./taksks/test.yml

단순히 playbook.ymlgather_facts라는 키워드를 넣기만 하면 노드들의 정보들을 취합합니다. 하지만 주의할 점은 gather_facts 옵션을 키면 노드들의 정보를 가져오는데 시간이 걸리기에 작업이 느려질 수 이 있음을 인지하여야 합니다.

노드들의 정보를 보면 호스트네임, 호스트.. 사용할 수 있는 많은 정보들이 보입니다.

예시를 들면 아래와 같이 /etc/hosts에 전체 노드들의 대한 정보를 넣어줄 수 있습니다.

---
- name: gen etc hosts
  lineinfile:
    path: /etc/hosts
    line: " "
  loop: ""

마치며

Ansible의 관심을 가지고 나서 유데미 강의와 조훈님의 책을 완독했습니다. 사내에 사용하던 장비들의 Role을 구성하는 재미가 있네요🙂

댓글남기기