LoginSignup
3
6

More than 5 years have passed since last update.

KVM仮想サーバ用bonding・VLAN・ブリッジ設定

Last updated at Posted at 2018-02-21

概要

KVM仮想サーバ用のぼくがかんがえたさいきょうのネットワーク設定のメモ。

前提

  • (10)GbEをWAN用に2ポート備えたCentOS 7のKVM仮想化サーバ(仮想化ホスト)
  • 対向スイッチとはbondingで接続
  • 対向スイッチにはVLANが設定してあり、接続先ポートはタグ付のまま
  • 対向スイッチには割とたくさんのVLANが設定してあるため、ethポート毎にVLANを変えるのは無理
  • VLANはOS側でアンタグしてブリッジとして仮想化ゲストに渡す
  • 仮想化ホストと仮想化ゲストの管理者は異なる可能性がある
  • 仮想化ゲストの管理者に変な設定をされて想定外のVLANにアクセスされたくない
  • 仮想化ホストへのリモート接続やストレージへの接続は別のethポートで行うため今回の設定では考慮しない

というわけでbonding + タグVLAN + ブリッジで実現する。

設定

em1em2を対象のポートとする。

libvirtの作成する仮想ネットワークを潰す

# virsh net-destroy default
# virsh net-undefine default
# virsh net-list --all

邪魔なネットワーク設定を削除

# rm /etc/sysconfig/network-scripts/ifcfg-em1
# rm /etc/sysconfig/network-scripts/ifcfg-em2

bondインターフェースを作成

# nmcli connection add type bond autoconnect yes con-name bond0 ifname bond0 mode active-backup
# nmcli connection mod bond0 ipv4.method disabled ipv6.method ignore
# nmcli connection add type bond-slave autoconnect yes ifname em1 master bond0 
# nmcli connection add type bond-slave autoconnect yes ifname em2 master bond0 

VLANとブリッジの設定

以下の2つのファイルをVLAN ID毎に作成する。サンプルはVLAN 100の場合。
VLANがDHCP配下だとしてもBOOTPROTO=noneにしておいて、仮想化ゲスト側で自動取得の設定にする。
当初はnmcliでやろうとしたけどめんどくさいので自分で書いてる。

# vi /etc/sysconfig/network-scripts/ifcfg-bond0.100
DEVICE=bond0.100
BRIDGE=br100
VLAN=yes
ONBOOT=yes
BOOTPROTO=none
# vi /etc/sysconfig/network-scripts/ifcfg-br100
DEVICE=br100
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=none

設定反映

試行錯誤でやったので、初回は再起動しないとダメかも。
VLAN設定を追加したときはこれで問題ない。

# nmcli connection reload

KVM側の設定

仮想化ゲストのXMLで下記みたいな感じになるよう設定。

    <interface type='bridge'>
      <mac address='52:54:00:xx:xx:xx'/>
      <source bridge='br100'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

テスト

仮想化ゲストに適当なIPアドレスを振って、pingが飛ぶか疎通チェック。
仮想化ゲストをシャットダウンして別のブリッジを設定して期待通りの挙動になるかのチェック。
pingを飛ばしながらem1em2の接続してあるケーブルを交互に抜くことで冗長化されているかチェック。

参考リンク

下記記事あたりを参考にしました。
http://www.postcard.st/nosuz/tech/2011/09/17-23
http://www.si1230.com/?page_id=967
http://www.si1230.com/?page_id=4728
https://qiita.com/yteraoka/items/e661c2a8c6e7617e64f9

3
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
6