Interface mit VLANs und gleichzeitig als member einer Bridge?

KillerCow

Lt. Commander
🎅 Nikolaus-Rätsel-Elite
Registriert
Jan. 2012
Beiträge
1.623
Ahoi

Hab gerade nen Knoten im Kopf für eine Konfiguration einer Proxmox VE Testumgebung, inklusive Ceph, in der VMs Zugriff auf Ceph bekommen sollen.

Folgendes Szenario: Ich habe ein Interface (ens1f2), an das ich mehrere VLANs konfiguriert habe, wobei VLAN 3321 (ens1f2.3321) das Ceph-Frontend Netzwerk darstellt, um das es hier primär geht. Jetzt sollen einige VMs in der PVE-Umgebung mit Ceph reden können (ist ein Test und wir wollen dafür nicht einen weiteren externen Ceph-Cluster bauen).

Erster Ansatz ist, eine Bridge anlegen, der Bridge ein VLAN3321-Interface hinzufügen (damit der Host selbst ans Ceph kommt) und die VM an die Bridge hängen, mit passendem VLAN-Tag in der VM-Config, fertig Allerdings kommt die VM so auch in alle anderen VLANs, die über das Interface laufen und das würde ich gerne verhindern wollen.

Wäre eine "vernünftige" Lösung, dem Interface ens1f2 die notwendigen VLAN-Interfaces für den Host zu konfigurieren (also ens1f2.3321, etc), das Interface ens1f2 aber auch als Member der Bridge zu benutzen und auf der Bridge dann nur das eine gewünschte VLAN 3321 zu versorgen (via bridge-vids Direktive)? Funktioniert das Konstrukt überhaupt? Kann der lokale Host über das VLAN-Interface 3321 dann mit den VMs an der Bridge in diesem VLAN reden?

Es gäbe also:
  • ens1f2 ohne weitere Konfiguration
  • ens1f2.3321 mit IP 3.3.2.1
  • ens1f2.2222 mit IP 2.2.2.2
  • vmbr1 mit Member ens1f2 und bridge-vids 3321

VMs werden an vmbr1 gehangen und VLAN3321 in der VM-Config gesetzt. Andere VLANs werden von vmbr1 nicht durchgelassen.

Ich habe keine Ahnung, warum ich mich an der Sache gerade so aufhänge und bin über alle Denkanstöße dankbar. Vor allem aber für die "schöne und saubere" Lösung, die vermutlich einen zweiten Link für die VM<->Ceph-Kommunikation vorsieht :)

PS: Ich kann das gerade nicht einfach schnell ausprobieren, weil nen Kollege die Umgebung gerade benutzt und ich ihm nicht das Netzwerk unter dem Hintern wegreißen will.
 
aus einer laufenden config. vmbr0.1234 ist das mgmt-interface des nodes, kann aber auch in vms verwendet werden.

Code:
iface eno12399np0 inet manual

iface eno12409np1 inet manual

auto bond0
iface bond0 inet manual
    bond-slaves eno12399np0 eno12409np1
    bond-miimon 100
    bond-mode 802.3ad
    bond-xmit-hash-policy layer3+4
    mtu 9000

auto vmbr0.1234
iface vmbr0.1234 inet static
    address 1.2.3.4/24
    gateway 1.2.3.1
    bridge-ports bond0.1234
    bridge-stp off
    bridge-fd 0
 
  • Gefällt mir
Reaktionen: andy_m4 und KillerCow
hmm, sieht simpel aus... ich sage ja, Knoten im Kopf. Werde ich so mal einbauen, tausend Dank.
 
Zurück
Oben