Openstack (neutron)がつくるNetwork Interfaceの関係

仮想マシン

OpenStackでneutronとopenvswitchを使った構成では、仮想マシン毎に 以下のような4つのインターフェイスが作成される。最初の3文字まはた4文字が異なり後は同じ数値の組です。
なお、これは、nova.confに以下の設定がある場合です。
libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver
  • qbr655843be-3b
  • qvb655843be-3b
  • qvo655843be-3b
  • tap655843be-3b
これらは次のように接続されている。

tapから始まるI/FはQEMU (KVM)などが作るゲストOSに接続されている。それがqbrから始まるBridgeに接続されている。 Bridgeの構成は、次のようにbrctrlコマンドで確認できる。
# brctl show
bridge name              bridge id                           STP enabled     interfaces
qbr655843be-3b      8000.f258a8426856       no                      qvb655843be-3b
                                                                                                         tap655843be-3b
qvbとqvoは、virtual ethernet tunnel (veth)の両端のデバイスである。qvbはBridge側に、qvoはOpen vSwitch側に接続されている。

DHCP agent

DHCP agentのネットワーク構成を下図に示す。

テナントネットワークごとのDHCPサーバは、独自のnetwork namespaceで実行されている。それは、virtual ethernet tunnelを経由してグローバルなnetowrk namespaceでOpen vSwitchに接続される。
なお、network namespaceの一覧を表示させるには次のようにする
# ip netns
qdhcp-26ac80d0-9f3d-46bf-9c04-27ecdcbd7800
qrouter-f53f573b-5c5f-4136-af7b-c7879cde9ed3
qrouter-d1982370-acba-4861-b706-185ccfd52cce
qdhcp-6e1aec2f-ad9c-4aec-b49e-cc5a85a1f1e5
また、次のようにnetwork namespaceを指定して、コマンド実行することで、その空間でのinterface一覧を取得できる。
# ip netns exec qdhcp-26ac80d0-9f3d-46bf-9c04-27ecdcbd7800 ifconfig
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

ns-9e1da44f-f2 Link encap:Ethernet  HWaddr FA:16:3E:AA:A4:B2
          inet addr:10.5.20.3  Bcast:10.5.20.255  Mask:255.255.255.0
          inet6 addr: fe80::f816:3eff:feaa:a4b2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:468 (468.0 b)  TX bytes:468 (468.0 b)

0 件のコメント: