Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Bài 1: Từ CLI đến Automation

    🚀 Tự Động Hóa Mạng Cisco – Hành Trình Từ CLI Đến API Thế Hệ Mới

    Bạn là kỹ sư mạng vận hành hàng trăm thiết bị, trải khắp các chi nhánh toàn cầu? Việc login thủ công vào từng router/switch để “gõ lệnh” là nỗi ám ảnh quen thuộc? Bạn không cô đơn – và câu trả lời nằm ở Network Automation.

    Chào mừng bạn đến với hành trình khám phá tự động hóa thiết bị mạng Cisco – nơi CLI script, SNMP, NETCONF, RESTCONF, và API cùng bắt tay để biến việc quản lý mạng từ cực hình thành nghệ thuật.

    🔍 CLI Script – Khởi nguồn của automation

    Ngày xưa, việc viết script bằng Python/Expect để SSH vào router, gửi lệnh, phân tích output là cách phổ biến. Dễ hiểu nhưng dễ vỡ – mỗi lần nâng cấp IOS, script thường… "toang"! Ví dụ script sau đây minh họa cách login và lấy phiên bản IOS XR qua pexpect:

    ssh_command = "ssh user@iosxr_device_ip" child = pexpect.spawn(ssh_command) ... child.sendline("show version")



    👉 Kịch bản CLI vẫn hữu dụng nếu bạn cần tự động hóa nhanh, ít thiết bị. Nhưng ở quy mô lớn, nó bắt đầu thấm đòn: lỗi phát sinh, output thay đổi, khó debug…

    📡 SNMP – Kỷ nguyên giám sát nhưng không đủ để cấu hình

    SNMP giúp bạn giám sát trạng thái thiết bị, đọc IP, CPU, RAM… nhưng không phù hợp để thay đổi cấu hình. Dùng SNMP walk để đọc IP các interface rất đơn giản:

    snmpwalk -v2c -c public 192.0.2.1 .1.3.6.1.2.1.4.20.1.1



    Tuy nhiên, SNMP SET thì thường bị tắt vì rủi ro bảo mật – và không ai muốn “configure router bằng SNMP” cả 😅

    🔗 NETCONF và RESTCONF – chuẩn hóa cấu hình thiết bị

    Cisco trang bị hầu hết các thiết bị hiện đại (IOS XE, XR, NX-OS) với NETCONFRESTCONF để chuẩn hóa việc cấu hình. Đây là nền tảng cho:
    • ✅ Tự động hóa cấu hình bằng các công cụ như Ansible, Terraform
    • ✅ Quản lý dạng transactional (rollback được)
    • ✅ Hướng đến mô hình Infrastructure as Code


    📡 RESTCONF – dùng HTTP làm việc với cấu hình thiết bị

    RESTCONF là cánh cửa để bạn tương tác với thiết bị Cisco bằng cú pháp RESTful, dễ tích hợp vào CI/CD, pipeline, hoặc dashboard web.

    🔌 API – thời đại của Automation hiện đại

    API là cốt lõi để kết nối thiết bị với hệ thống giám sát, công cụ orchestrator như NSO, Ansible Tower, hoặc GitOps. Bạn có thể:
    • ✅ Tạo VLAN, bridge-domain, route BGP bằng một request JSON
    • ✅ Gửi config, xem trạng thái interface qua HTTPS
    • ✅ Tự động hóa provisioning trên quy mô hàng nghìn thiết bị


    🎯 3 nền tảng Cisco và khả năng API
    • IOS XE: hỗ trợ RESTCONF, API JSON, dùng trong Catalyst 9000, ISR/ASR.
    • NX-OS: hỗ trợ NX-API và NX-API REST, dùng trong Nexus.
    • IOS XR: hỗ trợ XML API và gRPC/gNMI, dùng trong ASR9K, NCS.


    🔥 Trong các bài tiếp theo, chúng ta sẽ “đập hộp” từng API của Cisco IOS XE / NX-OS / IOS XR, cách cấu hình, gọi thử và tích hợp thật. Anh em trong cộng đồng VnPro sẽ học được:
    • 💡 Làm sao enable API trên switch/router?
    • 💡 Cách login, lấy token, gửi config mới bằng Python
    • 💡 Viết Playbook Ansible tương tác với thiết bị


    💬 Anh em thấy chủ đề này có “chạm đúng đau” không? Comment ngay thiết bị Cisco bạn đang vận hành, để mình viết bài demo tương ứng nhé!

    vnpro #NetworkAutomation #CiscoIOSXE #NXOS #IOSXR devnet #IaC ansible restconf netconf

    Attached Files
    Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X