目的 – このユースケースは、2 つの計算ノードにまたがるエラスティック仮想スイッチ (EVS1) を設定する方法を示しています。
このユースケースでは、CN1 上の VNIC vnic0 とゾーン z1 の VNIC anet をエラスティック仮想スイッチ EVS1 に接続して、それらが同じ L2 セグメントの一部となり、VLAN 上で相互に通信できるようにします。次の図は、2 つの計算ノードにまたがるエラスティック仮想スイッチ (EVS1) を示しています。
図 6-2 エラスティック仮想スイッチ構成
この図は、次のコンポーネントを含む 4 つのノードがあるネットワークを示しています。
2 つの計算ノード (CN1 および CN2)
VNIC anet リソースを含む CN2 上のゾーン z1 (z1/net0)
CN1 上の VNIC vnic0
EVS コントローラとして機能するノード (evs-controller.example.com)
evsadm コマンドを実行する必要のある EVS マネージャーとして機能するノード (MANAGER)
エラスティック仮想スイッチ EVS1 を実装する VLAN
uplink-port (VLAN に使用するデータリンクを指定します)
必須の EVS パッケージをインストールします。
必須パッケージの詳細は、EVS を使用するための必須パッケージを参照してください。
EVS 設定の次のコンポーネント間に evsuser の事前共有された公開鍵を使用した SSH 認証を設定します。
EVS マネージャーと EVS コントローラ
各 EVS ノードと EVS コントローラ
EVS コントローラと各 EVS ノード
詳細は、SSH 認証の設定を参照してください。
EVS コントローラを構成します。
ネットワークで EVS コントローラとして計算ノードを指定してから、計算ノードが EVS コントローラと通信できるように各計算ノード上に EVS コントローラを設定します。コントローラのプロパティーは、その EVS コントローラと通信できる任意の計算ノードから設定できます。詳細は、エラスティック仮想スイッチの構成を参照してください。
プロパティー l2-type、vlan-range、および uplink-port を指定します。それ以外の場合は、エラスティック仮想スイッチを作成できません。
エラスティック仮想スイッチを作成します。IPnet を関連付けて、エラスティック仮想スイッチに VPort を追加する必要があります。
CN1 上に一時的な VNIC を作成し、エラスティック仮想スイッチの VPort に VNIC を接続します。
ゾーン z1 に VNIC anet リソースを作成し、それをエラスティック仮想スイッチに接続します。
EVS コントローラを設定します。
MANAGER# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com
EVS コントローラのプロパティーを設定します。
エラスティック仮想スイッチに使用する必要がある L2 トポロジのタイプを設定します。
MANAGER# evsadm set-controlprop -p l2-type=vlan
VLAN 範囲を設定します。
MANAGER# evsadm set-controlprop -p vlan-range=200-300
VLAN に使用されるデータリンク (uplink-port) を指定します。
MANAGER# evsadm set-controlprop -p uplink-port=net2
MANAGER# evsadm set-controlprop -h CN2 -p uplink-port=net3
コントローラのプロパティーを確認します。
MANAGER# evsadm show-controlprop -p l2-type,vlan-range,uplink-port NAME VALUE DEFAULT HOST l2-type vlan vlan -- vlan-range 200-300 -- -- uplink-port net2 -- -- uplink-port net3 -- CN2
EVS1 という名前のエラスティック仮想スイッチを作成します。
MANAGER# evsadm create-evs EVS1
IPnet EVS1_ipnet を EVS1 に追加します。
MANAGER# evsadm add-ipnet -p subnet=192.168.100.0/24 EVS1/EVS1_ipnet
VPort vport0 を EVS1 に追加します。
MANAGER# evsadm add-vport EVS1/vport0
エラスティック仮想スイッチに常に仮想ポートを追加する必要はありません。VNIC を作成するときに指定できるのは、その VNIC が接続する必要があるエラスティック仮想スイッチの名前だけです。このような場合は、EVS コントローラがシステムの仮想ポートを生成します。これらの仮想ポートは、sys-vportname という命名規則に従います (sys-vport0 など)。システムの仮想ポートはエラスティック仮想スイッチのプロパティーを継承します。
作成されたエラスティック仮想スイッチを確認します。
MANAGER# evsadm NAME TENANT STATUS VNIC IP HOST EVS1 sys-global -- -- EVS1_ipnet -- vport0 -- free -- 192.168.100.2/24 --
EVS1/vport0 に関連付けられた MAC アドレスと IP アドレスを確認します。
MANAGER# evsadm show-vportprop -p macaddr,ipaddr EVS1/vport0 NAME TENANT PROPERTY PERM VALUE DEFAULT POSSIBLE EVS1/vport0 sys-global ipaddr r- 192.168.100.2/24 -- -- EVS1/vport0 sys-global macaddr r- 2:8:20:3c:78:bd -- --
vport0 に接続する VNIC は IP アドレスと MAC アドレスを継承します。vport0 に割り当てられている IP アドレスは、IPnet EVS1_ipnet から次に使用できる IP アドレスであり、vport0 の MAC アドレスはランダムに生成されます。
エラスティック仮想スイッチ EVS1 に関連付けられた VLAN ID を確認します。
MANAGER# evsadm show-evs -L EVS TENANT VID VNI EVS1 sys-global 200 --
EVS コントローラを指定します。
CN1# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com
一時的な VNIC vnic0 を作成して、EVS1/vport0 に接続します。
CN1# dladm create-vnic -t -c EVS1/vport0 vnic0
作成された VNIC を確認します。
CN1# dladm show-vnic -c LINK TENANT EVS VPORT OVER MACADDRESS VIDS vnic0 sys-global EVS1 vport0 net2 2:8:20:3c:78:bd 200
vnic0 の MAC アドレスが VPort の MAC アドレスにマップされます。
vnic0 に使用できる IP アドレスを確認します。
CN1# dladm show-linkprop -p allowed-ips vnic0 LINK PROPERTY VALUE EFFECTIVE DEFAULT POSSIBLE vnic0 allowed-ips 192.168.100.2 192.168.100.2 -- --
allowed-ips プロパティーが VPort に関連付けられた IP アドレスに設定されます。この設定では、vnic0 に 192.168.100.2 以外の IP アドレスを作成することはできません。
vnic0 用の IP インタフェースを作成し、IP アドレスとして 192.168.100.2 を割り当てます。
# ipadm create-ip -t vnic0 # ipadm create-addr -t -a 192.168.100.2 vnic0
EVS コントローラを指定します。
CN2# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com
ゾーン z1 用の VNIC anet リソースを構成し、それをエラスティック仮想スイッチに接続します。
CN2# zonecfg -z z1 Use 'create' to begin configuring a new zone zonecfg:z1> create create: Using system default template 'SYSdefault' zonecfg:z1> set zonepath=/export/zones/z1 zonecfg:z1> select anet linkname=net0 zonecfg:z1:anet> set evs=EVS1 zonecfg:z1:anet> end zonecfg:z1> commit zonecfg:z1> exit
ゾーン z1 をインストールしてブートします。
CN2# zoneadm -z z1 install CN2# zoneadm -z z1 boot
ゾーン z1 にログインしてゾーン構成を完了します。
CN2# zlogin -C z1
ゾーン構成についての詳細は、Oracle Solaris ゾーンの作成と使用 を参照してください。
作成された VNIC anet を確認します。
CN2# dladm show-vnic -c LINK TENANT EVS VPORT OVER MACADDRESS VIDS z1/net0 sys-global EVS1 sys-vport0 net2 2:8:20:1a:c1:e4 200
VNIC anet リソースを作成したときに VPort が指定されなかったため、EVS コントローラは、VNIC anet リソース用にシステム VPort sys-vport0 を作成します。
VPort に関連する情報を表示します。
CN2# evsadm show-vport -o all NAME TENANT STATUS VNIC HOST MACADDR IPADDR EVS1/sys-vport0 sys-global used z1/net0 CN2 2:8:20:1a:c1:e4 192.168.100.3/24
VNIC anet リソースが plumb され、VPort の IP アドレスが割り当てられます。
VNIC anet リソース、z1/net0 の IP アドレスを確認します。
CN2# zlogin z1 ipadm NAME CLASS/TYPE STATE UNDER ADDR lo0 loopback ok -- -- lo0/v4 static ok -- 127.0.0.1/8 lo0/v6 static ok -- ::1/128 net0 ip ok -- -- net0/v4 inherited ok -- 192.168.100.3/24