Go to main content
Oracle® Solaris 11.3 での仮想ネットワークとネットワークリソースの管理

印刷ビューの終了

更新: 2016 年 11 月
 
 

エラスティック仮想スイッチのユースケースの例

このセクションでは、エラスティック仮想スイッチを構成する方法を説明するユースケースの例を示します。

ユースケース: エラスティック仮想スイッチの構成

目的 – このユースケースは、2 つの計算ノードにまたがるエラスティック仮想スイッチ (EVS1) を設定する方法を示しています。

このユースケースでは、CN1 上の VNIC vnic0 とゾーン z1 の VNIC anet をエラスティック仮想スイッチ EVS1 に接続して、それらが同じ L2 セグメントの一部となり、VLAN 上で相互に通信できるようにします。次の図は、2 つの計算ノードにまたがるエラスティック仮想スイッチ (EVS1) を示しています。

図 20  エラスティック仮想スイッチ構成

image:この図は、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 に使用するデータリンクを指定します)


注 -  4 つのすべてのノードは単一のシステム上に存在できます。EVS コントローラと EVS マネージャーは同じシステム上に存在できます。

エラスティック仮想スイッチの設定の計画

  1. 必須の EVS パッケージをインストールします。

    必須パッケージの詳細は、EVS を使用するための必須パッケージを参照してください。


    注 -  evsuser は、pkg:/service/network/evs パッケージをインストールしたときに作成される特定のユーザーです。ユーザー evsuser には、Elastic Virtual Switch Administration 権利プロファイルが割り当てられます。このプロファイルは、EVS 操作を実行するために必要なすべての承認と特権を提供します。
  2. EVS 設定の次のコンポーネント間に evsuser の事前共有された公開鍵を使用した SSH 認証を設定します。

    • EVS マネージャーと EVS コントローラ

    • 各 EVS ノードと EVS コントローラ

    • EVS コントローラと各 EVS ノード

    詳細は、SSH 認証の設定を参照してください。


    注 -  このユースケースでは、EVS ノード、EVS マネージャー、および EVS コントローラ上で controller プロパティーが ssh://evsuser@evs-controller.example.com に設定されていることを前提にしています。
  3. EVS コントローラを構成します。

    1. ネットワークで EVS コントローラとして計算ノードを指定してから、計算ノードが EVS コントローラと通信できるように各計算ノード上に EVS コントローラを設定します。コントローラのプロパティーは、その EVS コントローラと通信できる任意の計算ノードから設定できます。詳細は、エラスティック仮想スイッチの構成を参照してください。

    2. プロパティー l2-typevlan-range、および uplink-port を指定します。それ以外の場合は、エラスティック仮想スイッチを作成できません。

  4. エラスティック仮想スイッチを作成します。IPnet を関連付けて、エラスティック仮想スイッチに VPort を追加する必要があります。

  5. CN1 上に一時的な VNIC を作成し、エラスティック仮想スイッチの VPort に VNIC を接続します。

  6. ゾーン z1 に VNIC anet リソースを作成し、それをエラスティック仮想スイッチに接続します。

EVS マネージャーの操作

  1. EVS コントローラを設定します。

    MANAGER# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com
  2. EVS コントローラのプロパティーを設定します。

    1. エラスティック仮想スイッチに使用する必要がある L2 トポロジのタイプを設定します。

      MANAGER# evsadm set-controlprop -p l2-type=vlan
    2. VLAN 範囲を設定します。

      MANAGER# evsadm set-controlprop -p vlan-range=200-300
    3. VLAN に使用されるデータリンク (uplink-port) を指定します。

      MANAGER# evsadm set-controlprop -p uplink-port=net2
      MANAGER# evsadm set-controlprop -h CN2 -p uplink-port=net3

    注 -  EVS コントローラに接続でき、必要な承認がある場合は、データセンターまたはマルチテナントクラウド環境内の任意のノードから EVS コントローラを構成できます。詳細は、EVS を使用するためのセキュリティー要件を参照してください。
  3. コントローラのプロパティーを確認します。

    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
  4. EVS1 という名前のエラスティック仮想スイッチを作成します。

    MANAGER# evsadm create-evs EVS1
  5. IPnet EVS1_ipnetEVS1 に追加します。

    MANAGER# evsadm add-ipnet -p subnet=192.168.100.0/24 EVS1/EVS1_ipnet
  6. VPort vport0EVS1 に追加します。

    MANAGER# evsadm add-vport EVS1/vport0

    エラスティック仮想スイッチに常に仮想ポートを追加する必要はありません。VNIC を作成するときに指定できるのは、その VNIC が接続する必要があるエラスティック仮想スイッチの名前だけです。このような場合は、EVS コントローラがシステムの仮想ポートを生成します。これらの仮想ポートは、sys-vportname という命名規則に従います (sys-vport0 など)。システムの仮想ポートはエラスティック仮想スイッチのプロパティーを継承します。

  7. 作成されたエラスティック仮想スイッチを確認します。

    MANAGER# evsadm
    NAME           TENANT           STATUS    VNIC      IP                      HOST
    EVS1           sys-global       --        --        EVS1_ipnet              --
       vport0      --               free      --        192.168.100.2/24        --

    注 -  テナント名が指定されていないため、エラスティック仮想スイッチ EVS1 でデフォルトのテナント名 sys-global が使用されます。エラスティック仮想スイッチを作成するときに –T オプションを使用してテナント名を指定できます。詳細は、エラスティック仮想スイッチを構成する方法を参照してください。
  8. 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 アドレスはランダムに生成されます。

  9. エラスティック仮想スイッチ EVS1 に関連付けられた VLAN ID を確認します。

    MANAGER# evsadm show-evs -L
    EVS          TENANT          VID   VNI
    EVS1         sys-global      200   --

計算ノード CN1 の操作

  1. EVS コントローラを指定します。

    CN1# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com
  2. 一時的な VNIC vnic0 を作成して、EVS1/vport0 に接続します。

    CN1# dladm create-vnic -t -c EVS1/vport0 vnic0
  3. 作成された VNIC を確認します。

    CN1# dladm show-vnic -c
    LINK     TENANT         EVS     VPORT       OVER     MACADDRESS        IDS
    vnic0    sys-global     EVS1    vport0      net2     2:8:20:3c:78:bd   VID:200

    vnic0 の MAC アドレスが VPort の MAC アドレスにマップされます。

  4. 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 アドレスに設定されます。この設定では、vnic0192.168.100.2 以外の IP アドレスを作成することはできません。

  5. vnic0 用の IP インタフェースを作成し、IP アドレスとして 192.168.100.2 を割り当てます。

    # ipadm create-ip -t vnic0
    # ipadm create-addr -t -a 192.168.100.2 vnic0

計算ノード CN2 の操作

  1. EVS コントローラを指定します。

    CN2# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com
  2. ゾーン z1 用の VNIC anet リソースを構成し、それをエラスティック仮想スイッチに接続します。

    CN2# zonecfg -z z1
    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
    
  3. ゾーン z1 をインストールしてブートします。

    CN2# zoneadm -z z1 install
    CN2# zoneadm -z z1 boot
  4. ゾーン z1 にログインしてゾーン構成を完了します。

    CN2# zlogin -C z1

    ゾーン構成の詳細は、Oracle Solaris ゾーンの作成と使用を参照してください。

  5. 作成された VNIC anet を確認します。

    CN2# dladm show-vnic -c
    LINK       TENANT       EVS    VPORT        OVER   MACADDRESS        IDS
    z1/net0    sys-global   EVS1   sys-vport0   net2   2:8:20:1a:c1:e4   VID:200

    VNIC anet リソースを作成したときに VPort が指定されなかったため、EVS コントローラは、VNIC anet リソース用にシステム VPort sys-vport0 を作成します。

  6. 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 アドレスが割り当てられます。

  7. 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

ユースケース: テナント用のエラスティック仮想スイッチの構成

目的 – このユースケースは、テナントの 2 つの計算ノードにまたがるエラスティック仮想スイッチ (HR) を設定する方法を示しています。

このユースケースでは、CN1 上の VNIC vnic0 とゾーン z1 の VNIC anet をエラスティック仮想スイッチ HR に接続して、それらが同じ L2 セグメントの一部となり、VXLAN 上で相互に通信できるようにします。VNIC はテナント tenantA の一部です。次の図は EVS の設定を示しています。

図 21  テナントのエラスティック仮想スイッチ構成

image:この図は、2 つの計算ノード間に構成された EVS を示しています。

この図は、次のコンポーネントを含む 4 つのノードがあるネットワークを示しています。

  • 2 つの計算ノード (CN1 および CN2)

  • VNIC anet リソースを含む CN2 上のゾーン z1

  • CN1 上の VNIC vnic0

  • EVS コントローラとして機能するノード、CONTROLLER

  • evsadm コマンドを実行する必要のある EVS マネージャーとして機能するノード、MANAGER

  • エラスティック仮想スイッチ HR を実装する VXLAN

  • uplink-port (VXLAN に使用するデータリンクを指定します)

エラスティック仮想スイッチの設定の計画

  1. 必須の EVS パッケージをインストールします。必須パッケージの詳細は、EVS を使用するための必須パッケージを参照してください。


    注 -  evsuser は、pkg:/service/network/evs パッケージをインストールしたときに作成される特定のユーザーです。ユーザー evsuser には、Elastic Virtual Switch Administration 権利プロファイルが割り当てられます。このプロファイルは、EVS 操作を実行するために必要なすべての承認と特権を提供します。
  2. EVS 設定の次のコンポーネント間に evsuser の事前共有された公開鍵を使用した SSH 認証を設定します。

    • EVS マネージャーと EVS コントローラ

    • 各 EVS ノードと EVS コントローラ

    • EVS コントローラと各 EVS ノード

    詳細は、SSH 認証の設定を参照してください。


    注 -  このユースケースでは、各 EVS ノード、EVS マネージャー、および EVS コントローラ上で controller プロパティーが ssh://evsuser@evs-controller.example.com に設定されていることを前提にしています。
  3. EVS コントローラを構成し、コントローラのプロパティーを設定します。

    1. すべての計算ノード上で EVS コントローラを設定してから、各計算ノードにまたがるエラスティック仮想スイッチを実装する方法を指定するコントローラプロパティーを設定します。

    2. プロパティー l2-typevxlan-range、および uplink-port を指定します。それ以外の場合は、エラスティック仮想スイッチを作成できません。

  4. エラスティック仮想スイッチを作成します。IPnet を関連付けて、エラスティック仮想スイッチに VPort を追加する必要があります。

  5. CN1 上に一時的な VNIC を作成し、エラスティック仮想スイッチの VPort に VNIC を接続します。

  6. ゾーン z1 に VNIC anet を作成し、VNIC anet リソースをエラスティック仮想スイッチに接続します。

EVS マネージャーの操作

  1. EVS コントローラを設定します。

    MANAGER# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com
  2. EVS コントローラのプロパティーを設定します。

    1. エラスティック仮想スイッチに使用する必要がある L2 トポロジのタイプを設定します。この例では VXLAN を使用します。

      MANAGER# evsadm set-controlprop -p l2-type=vxlan
    2. VXLAN 範囲を設定します。

      MANAGER# evsadm set-controlprop -p vxlan-range=200-300
    3. VXLAN に使用されるデータリンク (uplink-port) を指定します。

      MANAGER# evsadm set-controlprop -p uplink-port=net2
      MANAGER# evsadm set-controlprop -h CN2 -p uplink-port=net3

    注 -  EVS コントローラに接続でき、必要な承認がある場合は、データセンターまたはマルチテナントクラウド環境内の任意のノードからコントローラを構成できます。詳細は、EVS を使用するためのセキュリティー要件を参照してください。
  3. EVS コントローラプロパティーを確認します。

    MANAGER# evsadm show-controlprop -p l2-type,vxlan-range,uplink-port
    NAME                VALUE               DEFAULT             HOST
    l2-type             vxlan               vlan                --
    vxlan-range         200-300             --                  --
    uplink-port         net2                --                  --
    uplink-port         net3                --                  CN2
  4. テナント tenantA のエラスティック仮想スイッチ HR を作成します。

    MANAGER# evsadm create-evs -T tenantA HR
  5. IPnet hr_ipnet をエラスティック仮想スイッチ HR に追加します。

    MANAGER# evsadm add-ipnet -T tenantA -p subnet=192.168.100.0/24 HR/hr_ipnet
  6. VPort vport0 をエラスティック仮想スイッチ HR に追加します。

    MANAGER# evsadm add-vport -T tenantA HR/vport0
  7. テナント tenantA 用に作成されたエラスティック仮想スイッチを確認します。

    MANAGER# evsadm
    NAME          TENANT        STATUS VNIC         IP                HOST
    HR            tenantA       --     --           hr_ipnet          --
       vport0     --            free   --           192.168.100.2/24  --
  8. HR/vport0 に関連付けられた MAC アドレスと IP アドレスを確認します。

    MANAGER# evsadm show-vportprop -p macaddr,ipaddr HR/vport0
    NAME          TENANT    PROPERTY  PERM VALUE             DEFAULT   POSSIBLE
    HR/vport0     tenantA   ipaddr    r-   192.168.100.2/24  --        --
    HR/vport0     tenantA   macaddr   r-   2:8:20:d8:da:10   --        --
  9. エラスティック仮想スイッチ HR に関連付けられた VXLAN セグメント ID を確認します。

    MANAGER# evsadm show-evs -L
    EVS           TENANT        VID VNI
    HR            tenantA       --  200

計算ノード CN1 の操作

  1. EVS コントローラを指定します。

    CN1# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com
  2. 一時的な VNIC vnic0 を作成して、エラスティック仮想スイッチ HR/vport0 に接続します。

    CN1# dladm create-vnic -t -T tenantA -c HR/vport0 vnic0
  3. 作成された VNIC を確認します。

    CN1# dladm show-vnic -c
    LINK   TENANT    EVS   VPORT     OVER           MACADDRESS        IDS
    vnic0  tenantA   HR    vport0    evs-vxlan200   2:8:20:d8:da:10   VID:0

    vnic0 の MAC アドレスが VPort の MAC アドレスにマップされます。

  4. 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 アドレスを作成できないことを意味します。

  5. vnic0 用の IP インタフェースを作成し、IP アドレスとして 192.168.100.2 を割り当てます。

    # ipadm create-ip -t vnic0
    # ipadm create-addr -t -a 192.168.100.2 vnic0
  6. 自動的に生成される VXLAN データリンクをチェックします。

    CN1# dladm show-vxlan
    LINK                ADDR                     VNI   MGROUP
    evs-vxlan200        0.0.0.0                  200   224.0.0.1

計算ノード CN2 の操作

  1. EVS コントローラを指定します。

    CN2# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com
  2. ゾーン z1 用の VNIC anet を構成し、それをエラスティック仮想スイッチに接続します。

    CN2# zonecfg -z z1
    zonecfg:z1> create
    create: Using system default template 'SYSdefault'
    zonecfg:z1> set zonepath=/export/zones/z1
    zonecfg:z1> set tenant=tenantA
    zonecfg:z1> select anet linkname=net0
    zonecfg:z1:anet> set evs=HR
    zonecfg:z1:anet> end
    zonecfg:z1> commit
    zonecfg:z1> exit
    
  3. ゾーン z1 をインストールしてブートします。

    CN2# zoneadm -z z1 install
    CN2# zoneadm -z z1 boot
  4. ゾーン z1 にログインしてゾーン構成を完了します。

    CN2# zlogin -C z1

    ゾーン構成の詳細は、Oracle Solaris ゾーンの作成と使用を参照してください。

  5. 作成された VNIC anet リソースを確認します。

    CN2# dladm show-vnic -c
    LINK      TENANT   EVS   VPORT       OVER          MACADDRESS        IDS
    z1/net0   tenantA  HR    sys-vport0  evs-vxlan200  2:8:20:1a:c1:e4   VID:0

    VPort が指定されていないため、EVS コントローラが VNIC anet リソース用のシステム VPort sys-vport0 を作成します。

  6. VPort に関連する情報を表示します。

    CN2# evsadm show-vport -o all
    NAME            TENANT  STATUS VNIC     HOST MACADDR         IPADDR
    HR/sys-vport0   tenantA used   z1/net0  CN2  2:8:20:1a:c1:e4 192.168.100.3/24

    VNIC anet リソースが plumb され、VPort の IP アドレスが割り当てられます。

  7. 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