Cisco logó Cisco NX-OS hálózati automatizálás Python használatávalCisco NX-OS hálózati automatizálás Python-0 termék használatával

Hálózati automatizálás

  • Szoftverhasználati folyamat a hálózat kiépítésének, tesztelésének, telepítésének és hálózatkezelésének automatizálására
  • A hálózat hatékonyságának és funkcionalitásának maximalizálása érdekében
  • A hálózatok összetettek és terjedelmesek
  • Kézi műveletek – több késés
  • Az automatizálás agilisabbá és a változásokra érzékenyebbé teszi a hálózatokat
  • Előnyök:
  • Javított működési hatékonyság
  • Csökkentett hibák

Hálózati automatizálási architektúraCisco NX-OS hálózati automatizálás Python-1 használatával

Hálózati programozhatóságCisco NX-OS hálózati automatizálás Python-2 használatával

  • Eszközkészlet a hálózati eszközök üzembe helyezéséhez, kezeléséhez és hibaelhárításához
  • Hálózatmérnöki perspektíva – interakció egy eszközzel vagy eszközcsoporttal
  • Szoftverfejlesztői perspektíva – a hálózat absztrahálása. Az egész hálózat egyetlen eszköznek látása és szoftveres manipulálása

A hálózati programozhatóság előnyei

  • Csökkentett OPEX
  • Testreszabás
  • Csökkentett emberi hiba
  • Működési rugalmasság
  • Megnövekedett innovációs lehetőség

Alkalmazásprogramozási felület (API)Cisco NX-OS hálózati automatizálás Python-3 használatával

  • Az API-k olyan mechanizmusok, amelyeket az alkalmazásokkal és más szoftverekkel való kommunikációra használnak.
  • Egy API különböző funkciókat hajthat végre attól függően, hogy hol helyezkednek el a folyamatban
  • A hálózat különböző összetevőivel való kommunikációra szolgál szoftveren keresztül
  • Az API-k általában RESTful API-k

Representational State Transfer (REST) ​​API-k

  • A REST-et használó API-t gyakran RESTful API-nak nevezik
  • A RESTful API-k Hypertext Transfer Protocol (HTTP) módszereket használnak az adatok összegyűjtésére és kezelésére.
HTTP funkció Akció
KAP Olvas
POST Teremt
TAPASZ Frissítés/Módosítás
PUT Frissítés / Csere
TÖRÖL Töröl

HTTP állapotkódok

HTTP ÁLLAPOT

KÓD

EREDMÉNY KÖZÖS OK
200 Ok GET vagy POST használata az adatcseréhez

egy API

201 Létrehozva Erőforrások létrehozása REST API-hívás használatával
400 Rossz kérés A kérés ügyféloldali probléma miatt meghiúsult
401 Jogosulatlan Az ügyfél nem hitelesítette a webhely elérését vagy

API hívás

403 Tiltott Hozzáférés nem biztosított a szolgáltatott adatok alapján

hitelesítő adatok

404 Nem található Oldal a HTTP-n URL hely nem létezik

vagy el van rejtve

Netmiko végeview

  • Netmiko – Python-könyvtár, amelyet széles körben használnak a hálózati eszközökkel való interakcióhoz
  • Többszállítós könyvtár
  • Cisco IOS/IOS-XE, NX-OS, tűzfalak stb.
  • A Paramiko könyvtár SSH funkcióinak kiterjesztett támogatása
  • Konfigurációs módokba lépés
  • Parancsok küldése
  • Kimenetek lekérése
  • Ügyeljen az igen/nem felszólításokra

NAPALM Végeview

  • NAPALM – Hálózati automatizálási és programozhatósági absztrakciós réteg több gyártó támogatásával
  • Olyan funkciókat biztosít, amelyek lehetővé teszik:
  • Konfigurációs műveletek (commit vagy rollback)
  • Állapotadatok lekérése a hálózati eszközökről
  • Tartalmazza a hálózati eszközökkel való kapcsolat létrehozásának módszereit
  • Működhet automatizálási eszközökkel – Ansible
  • Támogatja a különböző hálózati operációs rendszereket:
  • IOS, IOS-XR, NX-OS, JunOS, EOS stb.
NAPALM műveletek
  • Csere – Lehetővé teszi a felhasználók számára, hogy lecseréljék a meglévő futó konfigurációt egy teljesen új konfigurációra.
  • Egyesítés – Lehetővé teszi a felhasználók számára a konfigurációs módosítások egyesítését a file az eszközön futó konfigurációhoz.
  • Összehasonlítás – Hasonlítsa össze az újonnan javasolt konfigurációt a meglévővel. Csak a csereműveletre vonatkozik, az összevonási műveletre nem.
  • Elvetés – Visszaállítja az egyesítés konfigurációját file egy üreshez file. Így nem engedi az új konfiguráció alkalmazását az eszközön.
  • Végrehajtás – Véglegesíti a javasolt konfigurációt a hálózati eszközön. Más szóval, mint telepítésre használjáktaged konfiguráció.
  • Visszaállítás – A futó konfiguráció visszaállítása az utolsó véglegesítés előtt konfigurált állapotra.

Sablonkészítés Jinja2-vel

  • A Jinja egy modern sablonnyelv a Python számára – Django sablonok mintájára
  • Lehetővé teszi a felhasználó számára, hogy könnyen kommunikáljon a Python programmal
  • Az adatok segítségével gyorsan generálhat dinamikus tartalmat
  • Előnyök:
  • Sablon öröklődés
  • Optimális just-in-time összeállítás
  • Könnyű hibakeresés
  • Konfigurálható szintaxis
  • Általánosan használt web keretek, mint például a Flask
  • Konfigurációkezelő eszközök – Ansible, Nornir stb.

HatárolókCisco NX-OS hálózati automatizálás Python használatávalNornir végeview

  • Python alapú automatizálási keretrendszer
  • Hálózati és gazdagép-leltár kezelése, valamint közös keretrendszer biztosítása az íráshoz plugins a hálózati eszközök és gazdagépek számára
  • Minimális Python 3.6.2-es verzió szükséges
  • Többszálú – Alapértelmezés szerint 20 dolgozó szál
  • A config segítségével inicializálva file – hivatkozások pár más files
  • Gazda leltár file
  • Csoport file
  • Mindezek files YAML formátumban vannak írva

Nornir Advantages

  • Python vagy Golang (Gornir)
  • Használja újra a meglévő könyvtárakat – napalm, netmiko
  • Gyors gazdagépszűrés bármilyen attribútum vagy attribútumok kombinációja alapján
  • Nagyon gyors a szálhasználat miatt
  • Használható rendkívül rugalmas és bővíthető automatizálási eszközök készítésére Flask, Django stb.
  • Automatikusan gyorsítótárat hajt végre, és bezárja a nyitott kapcsolatokat

Extra források és referenciák

Cisco Press News

Hálózati programozhatóság és automatizálás alapjai [További információ] CCNP és CCIE Security Core SCOR 350-701 hivatalos tanúsítási útmutató
https://www.ciscopress.com/store/ccnp-and-ccie-security-core-scor-350-701-official-cert-9780135971970

Cisco DevNet Professional DEVCOR 350-901 tanulmányi útmutató
https://www.ciscopress.com/store/cisco-devnet-professional-devcor-350-901-study-guide-9780137500048

Egyéb hasznos források:
Interview Vinit Jainnel, a Cisco legfontosabb események közreműködőjével
https://community.cisco.com/t5/networking-documents/interview-with-vinit-jain-cisco-s-top-events-contributor/ta-p/3156059
Vinit kiadványai
http://www.ciscopress.com/authors/bio/255ee209-1418-4938-9a42-d3bece2b46c6

Dokumentumok / Források

Cisco NX-OS hálózati automatizálás Python használatával [pdf] Felhasználói kézikönyv
NX-OS hálózati automatizálás Python használatával, hálózati automatizálás Python használatával, Python használatával

Hivatkozások

Hagyj megjegyzést

E-mail címét nem tesszük közzé. A kötelező mezők meg vannak jelölve *