IT kompaniya va autsorsing · 2026-yil 14-oktabr · 2 daqiqa o‘qish
Tarmoq muhandislari uchun Python: uskunalarni sozlashni avtomatlashtirish
Bu sahifa rus tilida: /blog/python-dlya-setevyh-inzhenerov
Tarmoq muhandisining kundalik ishi ko‘pincha takroriy: har bir qurilmaga ulanish, bir xil buyruqlarni kiritish, natijani nusxalash. Qurilmalar o‘nlab bo‘lganda bu soatlab vaqt oladi va bitta xato buyruq filial tarmog‘ini to‘xtatishi mumkin. Python ushbu ishni avtomatlashtirish uchun keng ishlatiladigan tillardan biriga aylangan.
Python nima uchun
- O‘rganish nisbatan oson, kodi o‘qiladi
- Tarmoq uskunalari bilan ishlash uchun tayyor kutubxonalar ko‘p
- Ko‘p ishlab chiqaruvchilar API va Python misollarini taqdim etadi
- Avtomatlashtirish vositalari, masalan Ansible, ham Python asosida qurilgan
Kutubxonalar
- Netmiko — SSH orqali turli ishlab chiqaruvchilar qurilmalariga ulanish va buyruq yuborish
- NAPALM — turli ishlab chiqaruvchilar uchun yagona interfeys: ma’lumot olish, konfiguratsiyani almashtirish va farqini ko‘rish
- Nornir — ko‘p qurilmada parallel vazifalarni bajarish uchun freymvork
- Jinja2 — konfiguratsiya shablonlari
- TextFSM, TTP — buyruq natijalarini tuzilgan ma’lumotga aylantirish
- Ishlab chiqaruvchilarning REST API va NETCONF bilan ishlash kutubxonalari
Birinchi foydali vazifalar
1. Konfiguratsiya zaxirasi. Skript har kuni barcha qurilmalarga ulanadi, joriy konfiguratsiyani oladi va Git’ga saqlaydi. Natija: har bir o‘zgarish tarixi va nosozlikdan keyin tez tiklash.
2. Inventarizatsiya. Model, dasturiy versiya, seriya raqami, interfeyslar holati — barcha qurilmalar bo‘yicha jadval. Yangilanish kerak bo‘lgan qurilmalar darhol ko‘rinadi.
3. Holatni tekshirish. Qaysi portlar o‘chiq, xatolar ko‘pmi, qaysi VLAN qayerda. O‘zgarishdan oldin va keyin bir xil tekshiruvni ishga tushirib, farqni solishtirish.
4. Ommaviy o‘zgarishlar. Yangi VLAN, NTP yoki syslog serveri, administrator paroli — barcha qurilmalarda bir xil, shablondan.
5. Shablon asosida yangi qurilma. Filial uchun yangi kommutator konfiguratsiyasi parametrlar jadvalidan avtomatik yaratiladi.
Xavfsiz ishlash qoidalari
- Avval faqat o‘qiydigan skriptlar: ma’lumot yig‘ish, zaxira
- O‘zgarishlarni avval laboratoriya yoki bitta sinov qurilmasida
- «Quruq ishga tushirish» rejimi: nima o‘zgarishini ko‘rsatsin, lekin qo‘llamasin
- Bosqichma-bosqich qo‘llash: avval bitta qurilma, keyin guruh
- Har bir o‘zgarish oldidan konfiguratsiya zaxirasi
- Qaytarish rejasi
Parollar va kirishlar
- Skript kodida parol yozilmaydi
- Muhit o‘zgaruvchilari yoki maxfiy saqlovchi
- Avtomatlashtirish uchun alohida hisob, cheklangan huquqlar bilan
- Skriptlar ishlaydigan server himoyalangan — u butun tarmoqqa kalit
O‘rganish yo‘li
- Python asoslari: o‘zgaruvchilar, ro‘yxatlar, lug‘atlar, tsikllar, funksiyalar, fayllar
- Netmiko bilan bitta qurilmaga ulanish va buyruq natijasini olish
- Qurilmalar ro‘yxati faylidan barcha qurilmalarni aylanib chiqish
- Natijani tahlil qilib, jadvalga yozish
- Jinja2 shablonlari
- Git va kodni hamkasblar bilan ko‘rib chiqish
Keyingi daraja
Skriptlar ko‘paygach, ular tarmoqning «haqiqat manbai» bilan bog‘lanadi: qurilmalar, manzillar, VLAN’lar bitta tizimda yuritiladi, konfiguratsiyalar esa undan avtomatik yaratiladi va tekshiriladi. Bu yondashuv tarmoqni hujjatlashtirilgan va takrorlanadigan qiladi.
Vazifani muhokama qilamiz
Ism va telefon raqamingizni qoldiring — qo‘ng‘iroq qilib, jarayon haqida so‘raymiz va nimadan boshlashni taklif qilamiz.
Loyihani muhokama qilish