TẠO PLAYBOOK ĐỂ GỬI MAIL KHI PING ĐƯỜNG TRUYỀN FAIL

TẠO PLAYBOOK ĐỂ GỬI MAIL KHI PING ĐƯỜNG TRUYỀN FAIL

[ANSIBLE FOR NETWORK]

 

Để chạy ansible ping đối tác thì ta tạo 2 file:

- File hosts trong thư mục /etc/ansible có nội dung:

[routers]

R1 ansible_host=192.168.200.11 ansible_connection=network_cli ansible_network_os=ios partner_ip=10.1.2.2

R2 ansible_host=192.168.200.12 ansible_connection=network_cli ansible_network_os=ios partner_ip=10.4.5.5

- Sau đó ta viết playbook với tên tùy ý, đuôi là .yml , ví dụ check_ping.yml

---

- name: Ping Each Partner from Router

  hosts: routers

  gather_facts: no

  tasks:

    - name: Ping Partner from {{ inventory_hostname }}

      ios_command: ##Đây là module ios_command cho cisco device

        commands:

          - ping {{ hostvars[inventory_hostname]['partner_ip'] }} repeat 5

      register: ping_result

    - name: Show Ping Result

      debug:

        var: ping_result.stdout_lines

    - name: Send notification email if host is unreachable

      mail:

        host: smtp-mail.outlook.com

        port: 587

        username: "your_mail@outlook.com"

        password: "your_pass"

        from: " your_mail@outlook.com "

        to: "receiver@gmail.com"

        subject: "[Alert] Host Unreachable - {{ inventory_hostname }}"

        body: "Ping to {{ hostvars[inventory_hostname]['partner_ip'] }} from {{ inventory_hostname }} has failed.\n\nPing Output:\n{{ ping_result.stdout_lines }}"

        secure: starttls

      when: "'Success rate is 0 percent' in ping_result.stdout[0]"

      delegate_to: localhost

      run_once: true

 

Thử shutdown port R1 nối sang R2

Rồi chạy playbook này, trên màn hình SSH của ubuntu, ta gõ:

ansible-playbook -i ./hosts check_ping.yml -u admin -k

Rồi nhập pass

Kết quả:

 

======================================================================

 

Khi mình đọc lí thuyết xong thì rất nhanh quên. Đó là lý do mình đã xây dựng Platform Lab Mô Phỏng CCNA CCNP trên web độc quyền. Thay vì chỉ đọc, bạn sẽ được tự tay thực hành trên một giao diện trực quan và sinh động, từ đó nhớ lâu; hiểu rõ luồng gói tin. Đây là 1 nền tảng giúp bổ trợ rất mạnh cho các khoá CCNA CCNP truyền thống

 

Vẫn còn thắc mắc? Đừng ngần ngại, hãy hỏi ngay trong Cộng đồng Network chuyên sâu nhất Việt Nam, nơi luôn có người sẵn sàng giúp đỡ bạn.

Xem thêm các clip mô phỏng mạng vui nhộn hứng thú tại TIKTOK CỦA MÌNH

Bài viết cùng danh mục