Đếm VPN site FTD đang hoạt động: bạn muốn nói đến con số nào?
Peer đã cấu hình, phiên IKE, liên kết bảo mật và đường hầm được giám sát là bốn phép đếm khác nhau. Chọn đơn vị và mặt phẳng quản lý trước khi viết mã.
Trước khi viết nhiệm vụ Ansible, hãy trả lời một câu hỏi nhỏ hơn: đang đếm cái gì? Một peer đã cấu hình, một phiên IKE, một liên kết bảo mật IPsec và một bản ghi trạng thái đường hầm được giám sát là bốn đơn vị khác nhau, và việc tạo lại khóa hoặc nhiều mạng được bảo vệ khiến tổng của chúng lệch nhau. Nếu bảng điều khiển và playbook không khớp, thường là họ đang đếm những thứ khác nhau chứ không phải một trong hai sai.
Bốn thứ mà người ta gọi là đang hoạt động
Một peer đã cấu hình là một đối tượng topo: nó tồn tại vì ai đó đã định nghĩa nó. Một phiên IKE là quan hệ ở mặt phẳng điều khiển có thể ở trạng thái lên trong khi không có lưu lượng chạy qua. Một SA IPsec là liên kết ở mặt phẳng dữ liệu cho một cặp bộ chọn cụ thể, và một đường hầm có thể mang nhiều liên kết. Trạng thái đường hầm được giám sát là phán quyết vận hành của chính nền tảng, thường gần nhất với điều mà người vận hành muốn nói khi nói đường hầm đang lên.
Chỉ cái cuối cùng là cơ sở hợp lý cho một phép đếm vận hành. Cái đầu tiên là bản kiểm kê cấu hình, và báo cáo nó là đang hoạt động chính là cách bảng điều khiển hiển thị màu xanh cho một peer đã ngừng từ thứ Ba. Hãy quyết định đơn vị nào mà người dùng con số cần, rồi gắn nhãn chỉ số bằng đơn vị đó ngay trong tên của nó.
Quyết định một: mặt phẳng quản lý nào?
Nếu thiết bị được quản lý bởi FDM, bề mặt liên quan là FTD REST API. Nếu nó được quản lý bởi FMC, API đó không phải là thứ thay thế tương đương, và các đối tượng nằm sau API riêng của FMC. Hãy xác nhận điều này trước khi viết dù chỉ một yêu cầu, vì mặt phẳng sai trả về một lỗi trông có lý và giống như vấn đề quyền.
Với một đội thiết bị, câu trả lời cũng quyết định phép đếm thuộc về đâu: theo thiết bị qua FDM, hay theo miền qua FMC. Đây là những phạm vi khác nhau và chúng cho ra những con số khác nhau với cùng một đội.
Quyết định hai: tài nguyên nào trả lời?
Với một ví dụ giới hạn theo phiên bản, tài liệu tham chiếu đối tượng của FMC 7.3 API ghi lại các tài nguyên GET dưới đường dẫn health:
/api/fmc_config/v1/domain/{domainUUID}/health/tunnelstatuses
/api/fmc_config/v1/domain/{domainUUID}/health/tunnelsummariesTài nguyên trạng thái đường hầm hỗ trợ bộ lọc thiết bị và trạng thái, bao gồm TUNNEL_UP. Điều đó cho bạn một tài nguyên vận hành thực sự để kiểm tra cho phiên bản đó, thay vì phỏng đoán về tên trường.
Hãy xác nhận tính sẵn có, quyền, tham số yêu cầu và lược đồ phản hồi trong API Explorer của FMC đã triển khai trước khi viết trình phân tích cú pháp. Tài liệu của một phiên bản là điểm khởi đầu, không phải hợp đồng cho phiên bản bạn đang chạy.
Viết hợp đồng của phép đếm
Phát biểu chỉ số trong một câu: các bản ghi đường hầm vận hành duy nhất cho một thiết bị và miền dự định có trạng thái được báo cáo là TUNNEL_UP. Sau đó ghi lại cách biểu diễn thiết bị dự phòng và nhiều bản ghi cho một site logic, vì hai trường hợp đó quyết định con số của bạn có khớp với con số trong cuộc họp hay không.
Đừng âm thầm đổi đơn vị từ bản ghi đường hầm sang site từ xa. Nếu doanh nghiệp muốn site, hãy ánh xạ rõ ràng bản ghi sang site và công bố ánh xạ đó. Một phép đếm âm thầm định nghĩa lại chính nó còn tệ hơn không có phép đếm, vì không ai có thể biết nó đã thay đổi khi nào.
Hãy coi tài nguyên tóm tắt là tiện ích chỉ sau khi bạn xác nhận nó tóm tắt cái gì. Nó có thể tổng hợp đúng thứ bạn cần, hoặc trả lời một câu hỏi hơi khác. Đọc lược đồ của nó một lần, ghi lại khác biệt, và dùng tài nguyên trạng thái nếu không thể giải thích bản tóm tắt. Một bản tóm tắt bạn không hiểu là con số bạn không thể bảo vệ trong một buổi đánh giá.
Hãy để luồng công việc giữ lại sự không chắc chắn
Dùng HTTPS API đã được phê duyệt, xác thực chứng chỉ, giữ mã thông báo ngoài đầu ra của nhiệm vụ, và lấy phạm vi bằng bộ lọc và phân trang mà phiên bản hỗ trợ. Sau đó xác thực lược đồ trước khi tính toán bất cứ điều gì.
fetch intended domain/device runtime records
validate response, completeness and freshness
deduplicate by the documented tunnel identity
count records matching the approved up-state definition
report count with scope, timestamp and metric unitĐây là mã giả của quy trình làm việc, không phải playbook đã kiểm thử. Lấy tên trường thực tế từ API đã cài đặt thay vì bịa ra một khóa JSON tên là active.
Quy tắc quan trọng là hành vi khi thất bại: lỗi phân quyền, tài nguyên không được hỗ trợ, mẫu cũ hoặc tập trang không đầy đủ phải tạo ra unknown hoặc error, không bao giờ là số không thành công. Số không có nghĩa là tôi không thể hỏi là kiểu sai đắt nhất.
Xác thực dựa trên góc nhìn của chính nền tảng
So sánh kết quả đầu tiên với chế độ xem giám sát VPN của phiên bản cho cùng thiết bị và thời điểm. Khi chúng khác nhau, hãy tìm ra cái nào dùng đơn vị nào trước khi thay đổi playbook.
Giữ ngữ cảnh không bí mật cho mỗi lần chạy: phạm vi, dấu thời gian, đơn vị của chỉ số và số bản ghi. tài liệu tham chiếu đối tượng của FMC 7.3 API là nguồn của các đường dẫn tài nguyên ở trên, và API Explorer trên bản triển khai của chính bạn là nguồn cho mọi thứ khác.