আনসিবল (Ansible)

নেটওয়ার্ক ডিভাইস কনফিগার করা

Latest Technologies - আনসিবল (Ansible) - নেটওয়ার্ক অটোমেশন | NCTB BOOK

Ansible ব্যবহার করে নেটওয়ার্ক ডিভাইস কনফিগার করা একটি সাধারণ কার্যপ্রণালী, যা আপনার নেটওয়ার্ক ইনফ্রাস্ট্রাকচারে অটোমেশন এবং কনফিগারেশন ব্যবস্থাপনায় সাহায্য করে। Ansible নেটওয়ার্ক ডিভাইস কনফিগারেশনের জন্য বিশেষ মডিউল এবং প্লেবুক ব্যবহারের সুবিধা দেয়।

নেটওয়ার্ক ডিভাইস কনফিগার করার জন্য প্রয়োজনীয় জিনিস

  1. নেটওয়ার্ক ডিভাইস: যেমন রাউটার, সোইচ, ফায়ারওয়াল, ইত্যাদি।
  2. SSH অ্যাক্সেস: ডিভাইসে SSH এর মাধ্যমে লগইন করার জন্য ব্যবহারকারী নাম এবং পাসওয়ার্ড।
  3. Ansible ইনস্টলেশন: Ansible আপনার মেশিনে ইনস্টল করা থাকতে হবে।
  4. নেটওয়ার্ক মডিউল: Ansible কিছু নেটওয়ার্ক মডিউল (যেমন ios_config, nxos_config, juniper_junos, ইত্যাদি) দেয় যা বিভিন্ন ভেন্ডরের ডিভাইসে কনফিগারেশন পরিচালনা করতে ব্যবহৃত হয়।

নেটওয়ার্ক ডিভাইসে কনফিগারেশন করার জন্য Ansible প্লেবুকের উদাহরণ

১. Cisco IOS ডিভাইস কনফিগার করা

এখানে একটি উদাহরণ দেয়া হলো যেখানে Cisco IOS ডিভাইসে কিছু বেসিক কনফিগারেশন করা হয়েছে।

---
- name: Configure Cisco IOS device
  hosts: cisco_routers
  gather_facts: no
  tasks:
    - name: Configure hostname
      ios_config:
        authorize: yes
        config:
          - hostname Router1

    - name: Set interface description
      ios_config:
        authorize: yes
        config:
          - interface GigabitEthernet0/1
          - description Uplink to Core Switch

    - name: Configure IP address on interface
      ios_config:
        authorize: yes
        config:
          - interface GigabitEthernet0/1
          - ip address 192.168.1.1 255.255.255.0
          - no shutdown

২. Juniper JUNOS ডিভাইসে কনফিগারেশন

Juniper ডিভাইসে কনফিগার করার জন্য juniper_junos_config মডিউল ব্যবহার করা হয়:

---
- name: Configure Juniper JUNOS device
  hosts: juniper_routers
  gather_facts: no
  tasks:
    - name: Configure hostname
      juniper_junos_config:
        lines:
          - set system host-name Router1

    - name: Configure interface
      juniper_junos_config:
        lines:
          - set interfaces ge-0/0/0 description "Uplink to Core Switch"
          - set interfaces ge-0/0/0 unit 0 family inet address 192.168.1.1/24

Ansible Inventory ফাইল

নেটওয়ার্ক ডিভাইসগুলোর জন্য একটি ইনভেন্টরি ফাইল তৈরি করতে হবে যেখানে ডিভাইসের তথ্য থাকবে। উদাহরণস্বরূপ:

[cisco_routers]
192.168.1.2 ansible_user=admin ansible_password=your_password ansible_network_os=ios

[juniper_routers]
192.168.1.3 ansible_user=admin ansible_password=your_password ansible_network_os=junos

প্লেবুক রান করা

এখন আপনি নেটওয়ার্ক ডিভাইসে কনফিগারেশন করার জন্য তৈরি করা প্লেবুক রান করতে পারেন:

ansible-playbook -i inventory.ini configure_network.yml

গুরুত্বপূর্ণ পয়েন্টসমূহ

  • ডিভাইসের নিরাপত্তা: নিশ্চিত করুন যে ডিভাইসে SSH এর মাধ্যমে নিরাপদে লগইন করা যায়।
  • ভেন্ডর নির্ভর মডিউল: বিভিন্ন নেটওয়ার্ক ভেন্ডরের জন্য ভিন্ন মডিউল ব্যবহার করতে হবে।
  • ডেটা ব্যাকআপ: কনফিগারেশন পরিবর্তনের আগে ডিভাইসের বর্তমান কনফিগারেশন ব্যাকআপ রাখা একটি ভাল অভ্যাস।

সংক্ষেপে

Ansible ব্যবহার করে নেটওয়ার্ক ডিভাইস কনফিগার করা একটি কার্যকর পদ্ধতি, যা অটোমেশন এবং মেইনটেনেন্সকে সহজ করে। বিভিন্ন ভেন্ডরের জন্য Ansible এ মডিউল এবং টুলস রয়েছে, যা বিভিন্ন কনফিগারেশন সম্পাদন করতে সহায়ক। Ansible প্লেবুক এবং ইনভেন্টরি ব্যবহার করে আপনি সহজেই নেটওয়ার্ক ডিভাইস কনফিগারেশন এবং পরিচালনা করতে পারেন।

Promotion