Bỏ để qua phần nội dung
TRẠNG THÁI HTTP MÃKẾT QUẢ
LÝ DO PHỔ BIẾN
200
Ok
Sử dụng GET hoặc POST để trao đổi dữ liệu với một API201
Tạo
Tạo tài nguyên bằng cách sử dụng lệnh gọi REST API
400
Yêu cầu xấu
Yêu cầu không thành công do sự cố phía máy khách
401
Không được phép
Khách hàng không được xác thực để truy cập trang web hoặc Lệnh gọi API403
cấm
Quyền truy cập không được cấp dựa trên được cung cấpTự động hóa mạng
Kiến trúc tự
động hóa
mạng
Khả năng lập trình
mạng
Lợi
ích của khả năng lập trình mạng
Giao diện lập trình ứng dụng
(API)
API chuyển trạng thái đại diện (REST)
Hàm HTTP
Hoạt động
GET
Đọc
POST
Tạo
VÁ
Cập nhật / Sửa đổi
PUT
Cập nhật / Thay thế
DELETE
Xóa bỏ
Mã trạng thái HTTP
Credentials404 Không tìm thấy Trang tại HTTP URL vị trí không tồn tại
hoặc bị ẩn
Netmiko Hếtview
- Netmiko - Thư viện Python được sử dụng rộng rãi để tương tác với các thiết bị mạng
- Thư viện nhiều nhà cung cấp
- Cisco IOS / IOS-XE, NX-OS, tường lửa, v.v.
- Hỗ trợ mở rộng chức năng SSH của thư viện Paramiko
- Đi vào chế độ cấu hình
- Gửi lệnh
- Truy xuất đầu ra
- Quan tâm đến lời nhắc có / không
NAPALM Hếtview
- NAPALM - Tự động hóa mạng và lớp trừu tượng khả năng lập trình với sự hỗ trợ của nhiều nhà cung cấp
- Cung cấp các chức năng cho phép:
- Hoạt động cấu hình (cam kết hoặc khôi phục)
- Truy xuất dữ liệu trạng thái từ các thiết bị mạng
- Chứa các phương pháp để thiết lập kết nối với các thiết bị mạng
- Có thể hoạt động kết hợp với các công cụ tự động hóa - Ansible
- Có hỗ trợ cho các hệ điều hành mạng khác nhau:
- IOS, IOS-XR, NX-OS, JunOS, EOS, v.v.
- Thay thế - Cho phép người dùng thay thế cấu hình đang chạy hiện có bằng một cấu hình hoàn toàn mới.
- Hợp nhất - Cho phép người dùng hợp nhất các thay đổi cấu hình từ một file vào cấu hình đang chạy trên thiết bị.
- So sánh - So sánh cấu hình mới được đề xuất với cấu hình hiện có. Chỉ áp dụng cho hoạt động thay thế và không áp dụng cho hoạt động hợp nhất.
- Hủy bỏ - Đặt lại cấu hình hợp nhất file trống rỗng file. Do đó, không cho phép cấu hình mới được áp dụng trên thiết bị.
- Cam kết - Cam kết cấu hình được đề xuất cho thiết bị mạng. Nói cách khác, được sử dụng để triển khai nhưtagcấu hình ed.
- Rollback - Khôi phục (hoàn nguyên trở lại) cấu hình đang chạy về cấu hình đã lưu được cấu hình trước lần cam kết cuối cùng.
Templating với Jinja2
- Jinja là một ngôn ngữ tạo khuôn mẫu hiện đại cho Python - Được mô phỏng theo các mẫu Django
- Cho phép người dùng dễ dàng tương tác với chương trình Python
- Sử dụng dữ liệu để nhanh chóng tạo nội dung động
- Lợi ích:
- Kế thừa mẫu
- Biên dịch đúng lúc tối ưu
- Khả năng gỡ lỗi dễ dàng
- Cú pháp có thể định cấu hình
- Thường được sử dụng với web các khuôn khổ như Flask
- Công cụ quản lý cấu hình - Ansible, Nornir, v.v.
Dấu phân cách Nornir hơnview
- Khung tự động hóa dựa trên Python
- Quản lý khoảng không quảng cáo mạng và máy chủ lưu trữ và cung cấp khuôn khổ chung để viết plugins cho các thiết bị mạng và máy chủ
- Yêu cầu phiên bản Python tối thiểu 3.6.2
- Đa luồng - Mặc định là 20 luồng công nhân
- Khởi tạo bằng cách sử dụng cấu hình file - vài tài liệu tham khảo khác files
- Lưu trữ khoảng không quảng cáo file
- Nhóm file
- Tất cả những files được viết ở định dạng YAML
Nornir Advantages
- Python hoặc Golang (Gornir)
- Sử dụng lại các thư viện hiện có - napalm, netmiko
- Lọc máy chủ nhanh dựa trên bất kỳ thuộc tính nào hoặc kết hợp các thuộc tính
- Rất nhanh do sử dụng các chủ đề
- Có thể được sử dụng để xây dựng các công cụ tự động hóa có độ linh hoạt cao và có thể mở rộng bằng cách sử dụng Flask, Django, v.v.
- Tự động thực hiện bộ nhớ đệm và đóng các kết nối đang mở
Tài nguyên bổ sung và tài liệu tham khảo
Tin tức Báo chí của CiscoCác nguyên tắc cơ bản về tự động hóa và lập trình mạng [Tìm hiểu thêm] Hướng dẫn chính thức về CCNP và CCIE Security Core SCOR
350-701
//www.ciscopress.com/store/ccnp-and-ccie-security-core-scor-350-701-official-cert-9780135971970
Hướng dẫn Nghiên cứu về Cisco DevNet Professional DEVCOR
350-901
//www.ciscopress.com/store/cisco-devnet-professional-devcor-350-901-study-guide-9780137500048
Các nguồn hữu ích khác:
Liênview với Vinit Jain, Nhà đóng góp sự kiện hàng đầu của
Cisco
//community.cisco.com/t5/networking-documents/interview-with-vinit-jain-cisco-s-top-events-contributor/ta-p/3156059
Các ấn phẩm của
Vinit
//www.ciscopress.com/authors/bio/255ee209-1418-4938-9a42-d3bece2b46c6