আনসিবল (Ansible)

Cisco, Juniper এর মতো ডিভাইসে Ansible এর ব্যবহার

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

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

Cisco ডিভাইসে Ansible ব্যবহার

১. ইনভেন্টরি ফাইল তৈরি করা

Cisco ডিভাইসগুলোর জন্য একটি ইনভেন্টরি ফাইল তৈরি করুন, যেখানে ডিভাইসের IP ঠিকানা, ব্যবহারকারী নাম, এবং পাসওয়ার্ড থাকবে।

# inventory_cisco.yml
all:
  children:
    cisco_ios:
      hosts:
        ios_device_1:
          ansible_host: 192.168.1.1
          ansible_user: admin
          ansible_password: your_password
          ansible_network_os: ios

২. Cisco ডিভাইসে কনফিগারেশন প্লেবুক

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

# ios_config_playbook.yml
---
- name: Configure Cisco IOS device
  hosts: cisco_ios
  gather_facts: no
  tasks:
    - name: Configure hostname
      ios_config:
        lines:
          - hostname Ansible_Router

    - name: Create VLAN 10
      ios_config:
        lines:
          - vlan 10
          - name VLAN10

    - name: Configure interface
      ios_config:
        lines:
          - interface GigabitEthernet0/1
          - description Connected to Internet
          - no shutdown

৩. প্লেবুক চালানো

এখন আপনি এই প্লেবুকটি চালাতে পারেন নিচের কমান্ডের মাধ্যমে:

ansible-playbook -i inventory_cisco.yml ios_config_playbook.yml --ask-vault-pass

Juniper ডিভাইসে Ansible ব্যবহার

১. ইনভেন্টরি ফাইল তৈরি করা

Juniper ডিভাইসগুলোর জন্যও একইভাবে ইনভেন্টরি ফাইল তৈরি করতে হবে।

# inventory_juniper.yml
all:
  children:
    juniper:
      hosts:
        juniper_device_1:
          ansible_host: 192.168.2.1
          ansible_user: admin
          ansible_password: your_password
          ansible_network_os: junos

২. Juniper ডিভাইসে কনফিগারেশন প্লেবুক

নিচে একটি প্লেবুকের উদাহরণ দেয়া হলো যা Juniper ডিভাইসে কিছু কনফিগারেশন সেট আপ করবে।

# junos_config_playbook.yml
---
- name: Configure Juniper device
  hosts: juniper
  gather_facts: no
  tasks:
    - name: Configure hostname
      junos_config:
        lines:
          - set system host-name Ansible_Router

    - name: Create VLAN 10
      junos_config:
        lines:
          - set vlans VLAN10 vlan-id 10

    - name: Configure interface
      junos_config:
        lines:
          - set interfaces ge-0/0/0 description "Connected to Internet"
          - set interfaces ge-0/0/0 enable

৩. প্লেবুক চালানো

এখন আপনি এই প্লেবুকটি চালাতে পারেন নিচের কমান্ডের মাধ্যমে:

ansible-playbook -i inventory_juniper.yml junos_config_playbook.yml --ask-vault-pass

Ansible এর সুবিধা Cisco ও Juniper ডিভাইসে

  1. এজেন্টলেস: Ansible এজেন্ট ছাড়াই কাজ করে, যা কনফিগারেশন সহজ করে।
  2. সহজ YAML ফরম্যাট: প্লেবুক এবং টাস্কগুলি YAML ফরম্যাটে লেখা হয়, যা পড়া এবং বুঝতে সহজ।
  3. একাধিক ডিভাইসের পরিচালনা: একাধিক ডিভাইসে একই সময়ে কনফিগারেশন এবং ব্যবস্থাপনা করা যায়।
  4. কাস্টমাইজেশন: প্লেবুক ও টাস্কগুলিকে আপনার প্রয়োজন অনুযায়ী কাস্টমাইজ করা যায়।
  5. ট্র্যাকিং এবং লগিং: সমস্ত পরিবর্তন লগ করা যায়, যা ডিবাগিং এবং অডিটিংকে সহজ করে।

চ্যালেঞ্জসমূহ

  1. ডিভাইসের বিভিন্ন কনফিগারেশন পদ্ধতি: বিভিন্ন ব্র্যান্ডের ডিভাইসের জন্য আলাদা কনফিগারেশন প্রয়োজন।
  2. নেটওয়ার্ক নিরাপত্তা: অটোমেশন করার সময় নিরাপত্তা নিশ্চিত করা গুরুত্বপূর্ণ।
  3. লগিং এবং মনিটরিং: অটোমেশন ব্যবস্থাপনায় লগিং এবং পর্যবেক্ষণ ব্যবস্থা গড়ে তোলা জরুরি।

উপসংহার

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

Promotion