Síťová rozhraní v LXC

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání

Většinu parametrů síťových rozhraní lze nastavit již v konfiguračním souboru kontejneru. Uživatel nemusí nastavovat IP/IPv6 adresy atd.

Konfigurační soubor

V konfiguračním souboru lze textově popsat jednotlivá síťová rozhraní. V ukázce níže jsou popsány dvě rozhraní.

lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br351
lxc.network.name = eth0
lxc.network.veth.pair = node3-eth0

lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br350
lxc.network.name = eth1
lxc.network.veth.pair = node3-eth1

Typ síťového rozhraní jsou popsány v dokumentaci, hodnota veth znamená, že se použije virtio síťová karta. link značí, do jakého siťového mostu se má nově vytvořené rozhraní připojit. name definuje, jak se bude síťové rozhraní jmenovat uvnitř kontejneru a veth.pair určí, jak se jmenuje virtuální rozhraní na úrovni hypervisoru. Opakováním více záznamů lxc.network lze vytvořit více síťových rozhraní.


Kontejnerům lze přiřadit i specifickou MAC adresu, případně i IP adresu. Hodnota x v MAC adrese je nahrazena náhodnou hodnotou při vytváření kontejneru.

lxc.network.type = veth
lxc.network.hwaddr = fe:ab:5e:69:6b:xx
lxc.network.ipv4 = 1.2.3.14/26
lxc.network.ipv4.gateway = 1.2.3.1
lxc.network.ipv6 = 2001:db8:0:1::e/64
lxc.network.ipv6.gateway = 2001:db8:0:1::1
lxc.network.name = eth0
lxc.network.flags = up
lxc.network.script.up = /etc/lxc/ovsup.350
lxc.network.script.down = /etc/lxc/ovsdown.350

lxc.network.script.up ukazuje na cestu ke skriptu, který se zavolá po vytvoření virtuálních rozhraní. Zde je ukázka skriptu, který připojí virtuální rozhraní do OpenVSwitche (se správným VLAN ID).

#!/bin/bash

BRIDGE="ovsbr0"
OVSVSCTL="/usr/bin/ovs-vsctl"

$OVSVSCTL --may-exist add-port $BRIDGE $5 tag=350

Parametry, které se skriptu předávají jsou následující:

  1. jméno kontejneru,
  2. kontext -- zde klíčové slovo up ,
  3. typ síťové karty (empty/veth/macvlan/phys),
  4. veth/macvlan/phys,
  5. název zařízení - odpovídá položce veth.pair.