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ả:
Bài viết cùng danh mục
Danh mục bài viết
- Juniper
- Tài Nguyên LAB
- Wireshark
- FeedBack
- Multicast lab
- Security Infa
- Checkpoint
- Lab OSPF
- Router Logging
- LAB CCNA CCNP CÓ GIẢI
- DMVPN
- Mikrotik
- MPLS
- PFSENSE
- DUMP CCNA
- Điều khoản
- F5 LTM
- MONITOR NETWORK
- TOOL HỌC CCNA
- TƯ VẤN KHÓA HỌC
- PYTHON SCRIPT HỮU ÍCH
- IPv6
- Quality of Service
- QoS
- VXLAN
- SDWAN
- ISE
- Fortigate
- BGP
- MINH HỌA KHÁI NIỆM TRONG CCNA
- Bài tập CCNA CCNP (support Học viên)
- Phỏng vấn IT chứng khoán
- Layer2 CCNA
- Bài tập thiết kế mạng CCNA
- Linux
- EEM SCRIPT
- ASA LAB
- DHCP
- NEXUS
- Giao thức IS IS
- ANSIBLE
- PALO ALTO
- ARUBA SWITCH
- CÂU HỎI TỪ ĐỀ THI THẬT