আনসিবল (Ansible)

Playbook এর সিনট্যাক্স এবং গঠন

Latest Technologies - আনসিবল (Ansible) - Playbook এর বেসিক ধারণা | NCTB BOOK

Playbook হলো একটি YAML ফাইল যা Ansible-এ বিভিন্ন কাজ করার জন্য ব্যবহার করা হয়। এটি Ansible এর মূল উপাদানগুলোর একটি, যা বিভিন্ন টাস্ক, রোল এবং মডিউল এর সমন্বয়ে তৈরি করা হয়। একটি Playbook এর গঠন বেশ সরল এবং এটি YAML সিনট্যাক্স অনুসরণ করে। নিচে একটি Playbook এর সাধারণ গঠন এবং সিনট্যাক্স নিয়ে আলোচনা করা হলো:

Playbook এর সাধারণ গঠন

---
- name: Play এর নাম (ঐচ্ছিক)
  hosts: target_hosts
  become: yes (root privilege প্রয়োজন হলে)
  tasks:
    - name: Task এর নাম (ঐচ্ছিক)
      module_name:
        parameter1: value1
        parameter2: value2

Playbook এর উপাদানসমূহ

---:

  • প্রতিটি YAML ফাইলের শুরুতে থাকে, যা নির্দেশ করে এটি একটি YAML ফাইল।

- name (ঐচ্ছিক):

  • প্লে (Play) এর একটি নাম উল্লেখ করতে হয়, যা প্লে সম্পর্কে ধারণা দেয়। এটি ঐচ্ছিক, তবে এটি প্লে কে আরও বোধগম্য করে তোলে।

hosts:

  • টার্গেট হোস্ট বা হোস্ট গ্রুপের নাম উল্লেখ করা হয় যেগুলোর উপর এই প্লে প্রয়োগ করা হবে।

become (ঐচ্ছিক):

  • yes বা no দিয়ে উল্লেখ করা হয় প্লে রুট বা সুপার ইউজার হিসেবে চালানো হবে কি না।

tasks:

  • এই অংশে টাস্কগুলো একে একে উল্লেখ করা হয়, যা প্লে চলাকালে এক্সিকিউট করা হবে।

module_name:

  • টাস্কে কোন মডিউল ব্যবহার করা হবে তা উল্লেখ করা হয়, যেমন: copy, yum, service, ইত্যাদি।

parameters:

  • মডিউলের জন্য প্রয়োজনীয় প্যারামিটার ও মান দেয়া হয়।

উদাহরণ Playbook

নিচে একটি সাধারণ Playbook এর উদাহরণ দেয়া হলো, যা একটি অ্যাপাচি সার্ভার ইনস্টল এবং চালু করবে:

---
- name: Install and start Apache
  hosts: webservers
  become: yes
  tasks:
    - name: Install Apache
      yum:
        name: httpd
        state: present

    - name: Start Apache
      service:
        name: httpd
        state: started
        enabled: yes

উদাহরণটি বিশ্লেষণ:

hosts: webservers:

  • প্লেটি webservers গ্রুপের হোস্টগুলোতে প্রয়োগ হবে।

become: yes:

  • রুট প্রিভিলেজ নিয়ে টাস্কগুলো এক্সিকিউট করা হবে।

tasks:

  • দুটি টাস্ক আছে:
    • প্রথম টাস্কটি yum মডিউল ব্যবহার করে Apache ইনস্টল করবে।
    • দ্বিতীয় টাস্কটি service মডিউল ব্যবহার করে Apache সার্ভিস চালু করবে এবং এটি চালু অবস্থায় রাখবে।

এইভাবে, Playbook ব্যবহার করে বিভিন্ন ধরণের টাস্ক বা অপারেশন অটোমেশন করা যায়। Playbook এর সিনট্যাক্স সহজ এবং এটি YAML ফরম্যাট হওয়ায় পড়া এবং লেখা সহজ।

Promotion