Seminarinhalt
Dieses Training ist eine Voraussetzung für die Teilnahme an DevNet Kursen und -prüfungen auf Professional Ebene, da er wichtige Grundkenntnisse vermittelt, die für das Verständnis des Trainings unerlässlich sind:
- Implementing Automation for Cisco Enterprise Solutions (ENAUI)
- Implementing Automation for Cisco Data Center Solutions (DCAUI)
- Implementing Automation for Cisco Security Solutions (SAUI)
- Implementing Automation for Cisco Service Provider Solutions (SPAUI)
- Implementing Automation for Cisco Collaboration Solutions (CLAUI)
Nach Abschluss des Kurses haben die Teilnehmer Kenntnisse zu folgenden Themen:
- Die Rolle der Netzwerkautomatisierung und -programmierbarkeit im Zusammenhang mit End-to-End-Netzwerkmanagement und -betrieb erläutern
- Definieren und Unterscheiden zwischen Wasserfall- und agilen Software-Entwicklungsmethoden
- Python-Skripte mit grundlegenden Programmierkonstrukten, die für Anwendungsfälle der Netzwerkautomatisierung erstellt wurden, zu interpretieren und Fehler zu beheben
- Anwendung von Prinzipien, Werkzeugen und Pipelines von DevOps auf den Netzwerkbetrieb
- Verstehen der Rolle von Entwicklungsumgebungen für die Netzwerkautomatisierung und damit verbundenen Technologien wie virtuelle Python-Umgebungen, Vagrant und Docker
- Verstehen und Konstruieren von HTTP-basierten API-Aufrufen an Netzwerkgeräte
- Unterschiede zwischen und gemeinsame Anwendungsfälle für XML, JSON, YAML und protobuf
- Konstruieren und interpretieren von Python-Skripten mit dem Python-Anforderungsmodul, um Geräte mit HTTP-basierten APIs zu automatisieren
- Verstehen, welche Rolle YANG bei der Netzwerkautomatisierung spielt
- Verstehen, dass es eine Reihe von Werkzeugen gibt, die die Arbeit mit YANG-Modellen vereinfachen
- Funktionsweise von RESTCONF und NETCONF und die Unterschiede zwischen ihnen
- Konstruieren von Ansible Playbooks, um Netzwerkgeräte zu konfigurieren und Betriebszustandsdaten von ihnen abzurufen
- Erstellen von Jinja2-Vorlagen und YAML-Datenstrukturen zur Erzeugung der gewünschten Zustandskonfigurationen
Programm
- Examining Network Management and Operations
- Exploring Software Development Methodologies
- Using Python for Network Automation
- Describing NetDevOps: DevOps for Networking
- Managing Automation Development Environments
- Introducing HTTP Network APIs
- Reviewing Data Formats and Data Encoding
- Using Python Requests to Automate HTTP-Based APIs
- Exploring YANG
- Using YANG Tools
- Automating Model-Driven APIs with Python
- Introducing Ansible for Network Automation
- Templating Configurations with Jinja2
Lab Outline
- Use Network Automation Scripts
- Enforce Python Fundamentals on the Interactive Interpreter
- Automate Networks with Netmiko
- Troubleshoot Python Scripts
- Use the Git Version-Control System and Collaborate on an Internal Project
- Manage Merge Conflicts
- Build Reproduceable Automation Environments
- Use HTTP-Based APIs with Postman
- Explore YAML and JSON Data
- Consume HTTP-Based APIs with Python Requests
- Explore YANG Tools
- Explore NETCONF with Python
- Explore RESTCONF with Python
- Configure Network Devices with Ansible
- Collect Network Data with Ansible
- Build and Deploy Configurations with Ansible
Zielgruppen
- Architekt*innen für Automatisierungstechnik
- Automatisierungstechniker*innen
- Beratender Systemingenieur
- DevOps-Ingenieur
- Netzwerk-Administrator*innen
- Netzwerk-Architekt*innen
- Netzwerk-Beratungsingenieur
- Netzwerk-Design-Ingenieur
- Netzwerk-Ingenieur
- Netzwerkbetreiber
- Ingenieur für Netzwerkzuverlässigkeit
- Vertriebsingenieur
- Ingenieur für Standortzuverlässigkeit
- Systemtechniker*innen
- Architekt für technische Lösungen
- Anwendungsentwickler*innen
- Entwickler*innen von Kollaborationslösungen
- Architekt*innen für Kollaborationslösungen
- IT-Direktor*innen
- Entwickler*innen für mobile Geräte
- Leiter*innen eines Netzwerkbetriebszentrums (NOC)
- Software-Architekt*innen
- Web-Entwickler*innen
Vorkenntnisse
- Routing und Switching einschließlich Open Shortest Path First (OSPF), Border Gateway Protocol (BGP) und grundlegende Konfigurationsmerkmale wie Schnittstellen, Simple Network Management Protocol (SNMP) und statische Routen
- Grundlagen von Python-Datenstrukturen und Programmierkonstrukten wie Schleifen, Bedingungen und Klassen oder das Äquivalent von 3-6 Monaten Erfahrung im Schreiben von Python-Skripten
- Grundlegende Linux-Befehle zum Navigieren im Dateisystem und zum Ausführen von Skripten
- Kenntnisse im Umgang mit Texteditoren