Ansible এ টাস্ক (Task) এবং হ্যান্ডলার (Handler) দুটোই গুরুত্বপূর্ণ উপাদান, যা Playbook এ ব্যবহৃত হয় বিভিন্ন কাজ সম্পাদন করার জন্য। চলুন একে একে এই দুটি সম্পর্কে বিশদে আলোচনা করা যাক:
টাস্ক হলো Ansible Playbook এর একটি মৌলিক উপাদান, যা নির্দিষ্ট কাজ বা অ্যাকশন সম্পাদন করে। প্রতিটি টাস্ক সাধারণত একটি মডিউল ব্যবহার করে এবং YAML ফরম্যাটে লেখা হয়। টাস্কগুলি ধারাবাহিকভাবে চলে এবং নির্দিষ্ট একটি টাস্ক সম্পন্ন হলে পরবর্তী টাস্কে চলে যায়।
apt
, yum
, file
ইত্যাদি) ব্যবহৃত হয় টাস্কে।- name: Install Apache
apt:
name: apache2
state: present
উপরের টাস্কটি apt
মডিউল ব্যবহার করে apache2
প্যাকেজ ইনস্টল করছে। state: present
দিয়ে নিশ্চিত করা হচ্ছে যে প্যাকেজটি সিস্টেমে ইনস্টল করা আছে কিনা।
হ্যান্ডলার হলো বিশেষ ধরনের টাস্ক যা শুধু তখনই ট্রিগার হয় যখন একটি নির্দিষ্ট কন্ডিশন পূরণ হয়, অর্থাৎ যখন কোনো টাস্ক থেকে "change" ডিটেক্ট করা হয়।
notify
কিওয়ার্ড ব্যবহার করে কল করা হলে রান হয়।---
- name: Install and configure Apache
hosts: webservers
become: yes
tasks:
- name: Install Apache
apt:
name: apache2
state: present
notify: Restart Apache
- name: Copy Apache configuration file
copy:
src: /path/to/httpd.conf
dest: /etc/apache2/apache2.conf
notify: Restart Apache
handlers:
- name: Restart Apache
service:
name: apache2
state: restarted
apache2
ইনস্টল করছে।httpd.conf
ফাইল কপি করছে।notify: Restart Apache
ব্যবহার করছে, অর্থাৎ যখনই এই টাস্কগুলোর মাধ্যমে কোনো পরিবর্তন হবে, তখন Restart Apache হ্যান্ডলারটি ট্রিগার হবে।apache2
সার্ভিস রিস্টার্ট করবে, কিন্তু শুধু তখনই করবে যদি আগে কোনো পরিবর্তন ঘটে।apache2
সার্ভিস রিস্টার্ট করার দরকার না হয়, তাহলে এটি অনর্থক রিস্টার্ট হবে না।বৈশিষ্ট্য | টাস্ক (Task) | হ্যান্ডলার (Handler) |
---|---|---|
কার্যকারিতা | সরাসরি টাস্কগুলো চালায় | নির্দিষ্ট টাস্ক থেকে "change" হলে চালায় |
কনফিগারেশন | সরাসরি মডিউল ও প্যারামিটার দিয়ে নির্ধারিত | notify এর মাধ্যমে কল করা হয় |
কার্যকর হওয়ার সময় | প্লেবুকের টাস্ক সিকোয়েন্স অনুযায়ী | প্লেবুকের শেষে এবং "change" হলে |
এই হলো টাস্ক এবং হ্যান্ডলার এর মূল ধারণা।
আরও দেখুন...