What is ansible facts concept


  • قبلا به ماژول setup و جمع آوری اطلاعات از خادم‌های تحت مدیریت توسط این ماژول پرداخته شد.
  • به اطلاعات جمع آوری شده از خادم‌های تحت مدیریت اصطلاحا Ansible Facts گفته می‌شود.
  • این اطلاعات به صورت منظم و دسته بندی شده داخل متغییرهایی ریخته می‌شوند تا بتوان از آن‌ها در دیگر ماژول‌ها استفاده نمود.
  • به عنوان مثال کد زیر باعث می‌شود تا :
    • ابتدا ماژول setup برای تمام خادم‌های تحت مدیریت گروه debian-servers اجرا شود.
    • سپس محتویات ماژول بر روی متغیری با نام var ریخته شود.
    • در نهایت محتویات متغیر خوانده و چاپ شود.
---
- name: PlayBook
  hosts: debian-servers
  gather_facts: no
  tasks:
  - name: run setup module
    setup:
    register: var
  - debug: var=var
...
  • نکته: لازم به ذکر است که کلیه اطلاعات جمع‌آوری شده درون متغیری با نام ansible_facts ریخته می‌شود. لذا انتظار می‌رود بدون فراخوانی ماژول setup بتوان به این اطلاعات و محتویات این متغیر دسترسی داشت.
  • به عنوان مثال کد زیر باعث می‌شود تا :
    • ابتدا gather_facts در این PlayBook فعال باشد.
    • سپس محتویات متغیر ansible_facts توسط ماژول debug نمایش داده شود.
---
- name: PlayBook
  hosts: debian-servers
  gather_facts: yes
  tasks:
  - name: print ansible_facts variable
    debug: msg='{{ansible_facts}}'
...

  • به منظور مطالعه‌ی بیشتر لینک‌ زیر پیشنهاد می‌شود :
https://docs.ansible.com/ansible/latest/modules/setup_module.html

  • آزمایش شده بر روی Ansible نسخه‌ی 2.5.1
  • آزمایش شده بر روی سیستم عامل Ubuntu 18.04

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *