CentOS 7のインストール時にTeam Driverを設定する


前提

前回は既に起動しているコンピュータの2枚のNICに対してTeam Driverを使用してteamingを行った。
今回はCentOS 7インストール時にteamingを行ってみる。

前回と環境は同じである。すなわち、VirtualBox 4.3.12上に立てた仮想マシンを利用しており、NICの名前は「enp0s3」と「enp0s8」となっている。

以下3箇所で{"runner": {"name": "activebackup", "hwaddr_policy": "by_active"}}としているが、VirtualBoxではない通常の環境では{"runner": {"name": "activebackup"}}で良い。

VirtualBoxにおけるこの制限については https://community.oracle.com/thread/2546040 参照(ここにはbondingの際の手順であるfail_over_mac=1にしなければならない旨が書かれているが、teamingにおいては"hwaddr_policy": "by_active"がこれに相当する)。

GUIインストーラを使用してteaming

CentOS-7.0-1406-x86_64-Everything.iso および CentOS-7.0-1406-x86_64-Minimal.iso の日本語設定にて確認を行った。
なお、テキストインストーラにはteamingを設定する機能はなさそうだった。

《手順》

  1. 「ネットワークとホスト名」をクリック
  2. enp0s3とenp0s8はとりあえずオフのまま(後で自動的にオンになる)
  3. "+"をクリックして「チーム」を選択して「追加」
  4. 接続名を適当に編集する
  5. Teamed connectionsで「追加」をクリックして「Ethernet」を選択して「作成」
  6. 接続名を適当に編集する(そのままだと接続名に"スレーブ"という日本語が入り、今後あまり幸せにならないので変えた方が良い)
  7. デバイスのMACアドレスに"enp0s3"を選択
  8. 「全般」タブをクリックし、「この接続が利用可能になったときは(以下略)」をオンにする
  9. JSON configに「{"runner": {"name": "activebackup", "hwaddr_policy": "by_active"}}」と入力する
  10. 5から9をもう一度繰り返す。7の選択は"enp0s8"とする
  11. 「IPv4のセッティング」タブをクリックし、IPアドレス等を設定する

kickstartファイルを使用してteaming

kickstartを利用した自動インストール時にもteamingを設定することが可能である。
kickstartファイル内のnetworkの設定を以下のように記述すれば良い。

network --device enp0s3 --onboot=no
network --device enp0s8 --onboot=no
network --device team0 --activate --bootproto static --ip=10.0.2.34 --netmask=255.255.255.0 --gateway=10.0.2.1 --nameserver=8.8.8.8 --teamslaves="enp0s3,enp0s8" --teamconfig='{"runner": {"name": "activebackup", "hwaddr_policy": "by_active"}}'

あるいは、デバイス名の代わりにMACアドレスを指定しても良い。

network --device 08:00:27:CB:8E:FB --onboot=no
network --device 08:00:27:DD:09:C6 --onboot=no
network --device team0 --activate --bootproto static --ip=10.0.2.34 --netmask=255.255.255.0 --gateway=10.0.2.1 --nameserver=8.8.8.8 --teamslaves="08:00:27:CB:8E:FB,08:00:27:DD:09:C6" --teamconfig='{"runner": {"name": "activebackup", "hwaddr_policy": "by_active"}}'

参考: https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/sect-kickstart-syntax.html