Sebelum menulis tugas Ansible, jawab soalan yang lebih kecil: apakah yang sedang dikira? Rakan sebaya yang dikonfigurasikan, sesi IKE, persatuan keselamatan IPsec dan rekod status terowong yang dipantau ialah empat unit berbeza, dan penjanaan semula kunci atau beberapa rangkaian terlindung menyebabkan jumlahnya menyimpang. Jika papan pemuka dan playbook tidak bersetuju, biasanya mereka mengira perkara yang berbeza, bukan salah satu daripada mereka salah.

Empat perkara yang orang panggil aktif

Rakan sebaya yang dikonfigurasikan ialah objek topologi: ia wujud kerana seseorang menetapkannya. Sesi IKE ialah hubungan satah kawalan yang boleh berada dalam keadaan naik walaupun tiada trafik mengalir. SA IPsec ialah persatuan satah data untuk pasangan pemilih tertentu, dan satu terowong boleh membawa beberapa. Status terowong yang dipantau ialah keputusan operasi platform itu sendiri, yang biasanya paling hampir dengan apa yang dimaksudkan oleh pengendali apabila mengatakan terowong itu naik.

Hanya yang terakhir ialah asas yang wajar untuk kiraan operasi. Yang pertama ialah inventori konfigurasi, dan melaporkannya sebagai aktif ialah cara papan pemuka menunjukkan hijau untuk rakan sebaya yang tidak berfungsi sejak Selasa. Tentukan unit mana yang diperlukan oleh pengguna nombor itu, kemudian label metrik dengan unit tersebut dalam namanya sendiri.

Keputusan satu: satah pengurusan yang mana?

Jika peranti diuruskan oleh FDM, permukaan yang berkaitan ialah FTD REST API. Jika ia diuruskan oleh FMC, API itu bukan pengganti yang setara, dan objek berada di belakang API FMC sendiri. Sahkan perkara ini sebelum menulis satu permintaan pun, kerana satah yang salah memulangkan ralat munasabah yang kelihatan seperti masalah kebenaran.

Untuk armada, jawapannya juga menentukan di mana kiraan itu tergolong: bagi setiap peranti melalui FDM, atau bagi setiap domain melalui FMC. Ini skop yang berbeza dan ia menghasilkan nombor berbeza untuk armada yang sama.

Keputusan dua: sumber yang mana menjawabnya?

Untuk contoh terikat versi, rujukan objek FMC 7.3 API mendokumenkan sumber GET di bawah laluan health:

/api/fmc_config/v1/domain/{domainUUID}/health/tunnelstatuses
/api/fmc_config/v1/domain/{domainUUID}/health/tunnelsummaries

Sumber status terowong menyokong penapis peranti dan status, termasuk TUNNEL_UP. Itu memberi anda sumber operasi sebenar untuk diperiksa bagi versi tersebut, bukan tekaan tentang nama medan.

Sahkan ketersediaan, kebenaran, parameter permintaan dan skema respons dalam API Explorer FMC yang digunakan sebelum melaksanakan penghurai. Dokumentasi untuk satu versi ialah titik permulaan, bukan kontrak untuk versi yang anda jalankan.

Tulis kontrak kiraan

Nyatakan metrik dalam satu ayat: rekod terowong operasi unik untuk satu peranti dan domain yang dimaksudkan yang statusnya dilaporkan TUNNEL_UP. Kemudian dokumenkan bagaimana peranti berlebihan dan berbilang rekod untuk satu tapak logik diwakili, kerana kedua-dua kes itu menentukan sama ada nombor anda sepadan dengan yang dalam mesyuarat.

Jangan ubah unit secara senyap daripada rekod terowong kepada tapak jauh. Jika perniagaan mahu tapak, petakan rekod ke tapak secara eksplisit dan terbitkan pemetaan itu. Kiraan yang mentakrifkan semula dirinya secara senyap lebih buruk daripada tiada kiraan, kerana tiada siapa boleh memberitahu bila ia berubah.

Layan sumber ringkasan sebagai kemudahan hanya selepas anda mengesahkan apa yang diringkaskannya. Ia mungkin mengagregat tepat apa yang anda perlukan, atau menjawab soalan yang sedikit berbeza. Baca skemanya sekali, catat perbezaannya, dan gunakan sumber status jika ringkasan itu tidak dapat dijelaskan. Ringkasan yang anda tidak fahami ialah nombor yang anda tidak boleh pertahankan dalam semakan.

Biarkan aliran kerja mengekalkan ketidakpastian

Gunakan HTTPS API yang diluluskan, sahkan sijil, jauhkan token daripada output tugas, dan ambil skop dengan penapis dan penomboran halaman yang disokong versi. Kemudian sahkan skema sebelum mengira apa-apa.

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

Ini pseudokod aliran kerja, bukan playbook yang diuji. Ambil nama medan sebenar daripada API yang dipasang dan bukannya mencipta kunci JSON bernama active.

Peraturan penting ialah tingkah laku semasa gagal: ralat kebenaran, sumber tidak disokong, sampel lapuk atau set halaman yang tidak lengkap mesti menghasilkan unknown atau error, tidak pernah sifar yang berjaya. Sifar yang bermaksud saya tidak dapat bertanya ialah jenis kesilapan yang paling mahal.

Sahkan terhadap pandangan platform itu sendiri

Bandingkan hasil pertama dengan paparan pemantauan VPN versi itu untuk peranti dan saat yang sama. Apabila ia berbeza, ketahui unit mana yang digunakan oleh setiap satu sebelum mengubah playbook.

Kekalkan konteks bukan rahsia untuk setiap larian: skop, cap masa, unit metrik dan bilangan rekod. rujukan objek FMC 7.3 API ialah sumber laluan sumber di atas, dan API Explorer pada penggunaan anda sendiri ialah sumber untuk segala-galanya.

Artikel berkaitan