Skip to content

YAHM Netzwerk

Leonid Kogan edited this page May 14, 2016 · 10 revisions

Komponente zur Verwaltung von Netzwerkkonfiguration im Host/Gast

Nach der erfolgreichen Installation eines LXC Containers besitzt dieser keine Netzwerkkonfiguration. Diese kann durch diesen Skript aktiviert werden. Hierzu wird sofern nicht vorhanden eine neue Bridge angelegt und anschließend kann diese einem Container zugeordnet werden.

Mit den nachfolgenden Flags können die Standardeinstellungen beeinflusst werden:

  • -b - Name der Bridge
  • -i - Name des Interfaces, welches der Bridge zugeordnet wird

Es besteht die Möglichkeit die Netzwerkeinstellungen einer Bridge im Vorfeld zu testen, bevor diese endgültig geschrieben werden. Hierzu kann das Skript mit dem Flag -d aufgerufen werden. Diese Option ist sehr sinnvoll, da man unter Umständen nach der Aktivierung der Einstellung nicht länger auf das System kommt. Auf diese Weise können Fehler früh entdeckt werden.

Die Anwendung ist so ausgelegt, dass keine Änderungen auf dem System vorgenommen werde, sofern nicht explizit -w Flag angegeben wurde. Bevor die Konfiguration geschrieben wurde, wird diese zur Review angezeigt und muss durch -w Flag explizit freigegeben werden

Die original Netzwerk Konfigurationsdatei wird im gleichen Ordner mit einem Timestamp versehen gesichert.

YAHM Network management script

Usage Example: 

./yahm-network [FLAG] COMMAND
./yahm-network -n mycccu -b mybridge attach_bridge

Flags:
-n          - LXC container name.
-f          - Force operation (no halt on errors).
-v          - Verbose output 
-b          - Bridge name       (default=yahmbr0)
-i          - Interface name    (default=eth0)
-d          - Dry run (test configuration, without writing changes)
-w          - Write network changes 

Commands:
create_bridge   -  Creating new bridge for LXC Container
delete_bridge   -  Delete bridge and restore configuration
attach_bridge   -  Attach existing bridge to LXC container
dettach_bridge  -  Remove a bridge form LXC container
show_bridge     -  Show system bridges

show_bridge

Möglichen Parameter:
yahm-network show_bridge

Zeigt eine Liste aller aktiven Bridges auf dem System. Die Ausgabe entspricht dem Output von brctl show Bridges welche in der /etc/network/interfaces bereits definiert, aber noch nicht geladen wurden, werden NICHT angezeigt

create_bridge

Möglichen Parameter:
yahm-network   -b BRIDGE_NAME   -i INTERFACE_NAME   -f   -v   -d   -w  create_bridge

Es wird eine neue Netzwerk-Bridge angelegt. Es wird dabei geprüft ob das angegebene Interface physisch ist, oder ob es sich hierbei um ein VLAN handelt. Beides wird akzeptiert.

Wird eine statische IP auf dem gewählten Interface verwendet, wird versucht eine Bridge mit der statischen IP des Interfaces zu konfigurieren, alternativ wird eine Bridge mit der Option für DHCP aktiviert.

delete_bridge

Möglichen Parameter:
yahm-network   -f   -v   -b BRIDGE_NAME   -w   -d   delete_bridge

Die angegebene Bridge wird von dem System entfernt, sofern bei der Bridge eine statische IP gefunden wurde, wird diese bei dem dazugehörigen Interface konfiguriert.

attach_bridge

Möglichen Parameter:
yahm-network   -f   -v   -b   BRIDGE_NAME   -n   KONTAINER_NAME   attach_bridge

Es wird eine Netzwerkkonfiguration bestehend aus der erstellten Bridge dem LXC Container hinzugefügt

dettach_bridge

Möglichen Parameter:
yahm-network   -f   -v   -b   BRIDGE_NAME   -n   KONTAINER_NAME   dettach_bridge

Die gewählte Bridge wird aus der Netzwerkkonfiguration des LXC Containers entfernt