Abgabe der Scripts für das Modul Cloud Infrastructure von Jerome Gygax und Luca Gubler.
Bevor ein Script ausgeführt werden kann, muss die Datei "devices_list.txt" im Unterordner data mit den gewünschten Geräten ausgefüllt werden. Jeweils ein Gerät pro Zeile, wenn möglich mit FQDN damit sicher auf das Gerät verbunden werden kann. Die Scripts lesen jedes Gerät in dieser Datei aus und führen ihre Aktionen für alle Geräte aus.
So kann das Script ausgeführt werden:
python list_vrf.py
Der Output kann dann wie folgt aussehen:
jerome@Jerome-NB:/mnt/CldInf/Praktikum14_Yang/yang/python$ python list_vrf.py
Reading configuration for sw03-pod-9.lab.ins.hsr.ch
API call status: OK!
================ Print VRF Config ================
# VRF RD Route-Target
----------------------------------------------------------
1 Green 10.3.3.3:20 I: 200:1 E: 200:1
2 Mgmt-vrf
3 Yellow 10.3.3.3:10 I: 100:1 E: 100:1
Reading configuration for sw04-pod-9.lab.ins.hsr.ch
API call status: OK!
================ Print VRF Config ================
# VRF RD Route-Target
----------------------------------------------------------
1 Green 10.4.4.4:20 I: 200:1 E: 200:1
2 Mgmt-vrf
3 Yellow 10.4.4.4:10 I: 100:1 E: 100:1
So kann das Script ausgeführt werden:
python deploy_service.py -r <rd> -a <asn-ip> -d <description>
Beispiel:
python deploy_service.py -r 10.9.9.9:123 -a 456:1 -d "my awesome vrf"
- -r: route distinguisher
- -a: route-target to import/export the routes from the vrf
- -d: description of the vrf
So kann das Script ausgeführt werden:
python delete_service.py -n <name>
- -n: name of the service to remove
So kann das Script ausgeführt werden:
deploy_bgp_neighbor.py -i <router_id> -l <loopback_interface-#> -r <remote_as>
- -i: router-id of the bgp neighbor
- -l: # of the loopback interface
- -r: remote as
Die Scripts geben bei einem Fehler einen Exit-Code zurück. Hier eine Auflistung um den Fehler zu identifizieren:
- 3 Nicht ausreichende Zahl an Argumenten
- 5 Falsche Argumente verwendet
- 7 Fehler beim Lesen oder Schreiben von Daten übers REST API
- Jerome Gygax - Initial work - gyjch
- Luca Gubler - Helped Jerome - lucagubler