Home > Blogs > Japan Cloud Infrastructure Blog > 作成者別アーカイブ: Kazumi Takata

作成者別アーカイブ: Kazumi Takata

ネットワーク仮想化 – VXLAN の設定1

VXLAN の設定

VXLANの概要で、VXLANのメリットやコンポーネントについて、ご紹介しました。今回は、VXLANの設定について、ご紹介します。

構成例 1: シングル L2(1 VDS)構成

この例では、VXLAN を構成し、3階層システム (Webサーバ、アプリケーションサーバ、DBサーバ) を展開します。
それぞれのサーバの種類毎に論理的 L2 ネットワーク、つまり仮想のネットワークワイヤを作成し、かつ VXLAN の外のネットワークからアクセスを提供する vCloud Networking and Security の Edge ゲートウェイを設定します。

この構成に必要なコンポーネントは、次のとおりです。

  • 同じ vCenter の データセンタ内の 2 クラスタ
    • クラスタ毎に 2 ホスト
    • ホスト毎に 2 NIC (10GbE が望ましい)
  • 2 物理スイッチ
  • 1 VDS
  • 管理クラスタ
    • vCenter サーバ
    • vCloud Networking and Security Manager

各コンポーネントのインストールについては、それぞれの製品のインストール ガイドをご参照ください。

設定を解説する構成は、以下のとおりです。

図 1: コンポーネントと構成

VXLAN ベースのネットワーク仮想化を設定する前に、まず、2 クラスタを用意し、物理ネットワークに接続します。物理ネットワークインフラの設定の推奨は、以下のとおりです。

  • VXLAN トラフィックを転送するための 2 クラスタ間の 1 VLAN を設定します。1 VLAN で構成した場合は、物理スイッチ上のマルチキャスト ルーティング、つまり L3 経由のマルチキャストの転送を利用可能にする要件を、排除できます。
  • 物理スイッチ上で、IGMP スヌーピングと IGMP クエリア機能を設定します。

この構成では、VLAN 2000 を VXLAN トラフィックを転送する物理スイッチ上で設定しており、vMotion や 管理、NFS 等の vSphere の展開に一般的に使われるトラフィックは別の VLAN で構成しており、この図には記載しておりません。

図 2 は、vSphere Client からみた、データセンタ VXLAN-DC の 2 クラスタのインベントリの画面です。

図 2: ホストとクラスターの構成画面

図 3 は、VXLAN-VDS のネットワーク構成です。全 4 ホストがこの VDS の一部です。

図 3: ネットワーク画面

ステップ 1: VXLAN の準備

このステップでは、VXLAN の準備をします。設定に必要なパラメータは、下記の通りです。

  • VXLAN VIB を展開したい VDS の名前 – 例) VXLAN-VDS
  • VXLAN トラフィックを転送したい VLAN 番号 – 例) VLAN 2000
  • チーミングアルゴリズム – 例) なし。明示的なフェールオーバを使用
  • VXLAN を転送する VLAN 上での DHCP サービス – 例) なし

VXLAN を準備するために、まず、左のパネル上の VXLAN-DC データセンタを
選択し、次に図 4 のように、右のパネルの Network Virtualization をクリック
します。

図 4: Network Virtualization – vCloud Networking and security プラグイン

Network Virtualization で、VXLAN の設定を開始するために、Preparation
クリックします。

図 5: VXLAN Preparation

Edit をクリックします。

図 6: VXLAN 設定 – Connectivity

ポップアップ画面が開き、VXLAN ファブリックに参加するクラスタを選択する画面が開きます。事前に設定済の 2 つのクラスタがあり、図 7 のように見えます。

図 7: VXLAN 設定 – Connectivity – クラスタの選択

クラスタを選択し、両方のクラスタで使用する VDSと、VXLAN を転送する VLAN 2000 を入力します。この例では、VXLAN-VDS が両方のクラスタに渡って使われます。その後、Next をクリックします。

図 8: VXLAN 設定 – Connectivity – VDS の選択と VLAN 番号の入力

次に、VXLAN を転送するポートグループで使うチーミングの選択と MTU サイズを設定し、Finish をクリックします。この例では、チーミングなしの設定のため、Fail Over チーミングを選択し、MTU サイズはデフォルトの 1600 バイトです。

図 9: VXLAN 設定 – Connectivity – チーミングの選択と MTU の設定

vCloud Networking and Security Manager で、それぞれの vSphere ホストで VXLAN モジュールが利用可能になります。VTEP の準備の一部として、vmknic とポートグループが自動的に設定されます。図 10 は、VTEP 設定のプロセスが完成した後のステータスを表示しています。

図 10: VXLAN 設定 – Connectivity – 完了

図 11 は、vCloud Networking and Security Manager 経由でそれぞれのホストにインストールしたコンポーネントを表示しています。

図 11: 新しい展開 – 準備ステップ後のコンポーネント

ステップ 2: Virtual Tunnel Endpoint IP 設定

それぞれの VTEP の IP 設定は、VXLAN を転送する VLAN に DHCP サーバ が構成された環境では自動的に取得されます。この例では、DHCP サーバがないため、このステップで、手動での IP 設定について、説明します。

設定は、適切な仮想アダプタをそれぞれのホストを選択し、編集する必要があります。
図 12 のように、まずホストを選択し、仮想アダプタの管理をクリックします。

図 12: VTEP の手動設定 – vmknic プロパティの編集

図 13 のように、仮想アダプタの管理画面で、前の VXLAN 準備プロセス中に作成された vmknic のプロパティを編集します。

図 13: VTEP の手動設定 – vmknic プロパティの編集 (vmk1)

図 14 で、VLAN 2000 のサブネットの IP を設定します。

図 14: VTEP の手動設定 – IP アドレスの設定

図 15 は、クラスタ内の 4 つ全てのホストで、IP アドレスを手動で設定後、vCloud Networking and Security Manager から確認している画面です。
IP アドレスが正しいことを確認後、次のステップはセグメント ID とマルチキャスト IP アドレスを設定します。セグメント IDとは、VXLAN の論理ネットワークを構成するための識別子で、標準では、VXLAN Network Identifier(VNI)と呼ばれています。設定を開始するために、Segment ID をクリックします。

図 15: VTEP の手動設定 – 全てのホストで繰り返す – VXLAN vmknic の設定

ステップ 3: セグメント ID とマルチキャスト グループ アドレス レンジの設定

ネットワーク管理者に、この設定で利用するマルチキャスト グループ アドレス レンジを確認します。また、論理的に作成した L2 ネットワークの数を決めます。
例えば、2000 論理 L2 ネットワークなら、セグメント ID は 5000 から6999 を使用する、のように決めます。この例では、10 論理ネットワークを構成し、9001 から 9010 を使用します。まず、Edit をクリックします。

図 16: VXLAN セグメント ID 設定 – Edit

マルチキャスト アドレス フィールドには、セグメント ID を結びつけて使用するマルチキャスト アドレス レンジを入力します。セグメント ID とマルチキャスト グループ アドレスは 1 対 1 が推奨です。

図 17: VXLAN セグメント ID 設定 – プールとマルチキャスト グループ IP アドレス レンジ

ベスト プラクティスとして、VXLAN を展開する環境で使うマルチキャスト アドレス レンジを確認するネットワーク担当者との作業は重要です。マルチキャストに関する要点は、下記のとおりです。

  1. 224.0.0.1 から 224.0.0.255 のレンジは使用しないでください。Well-knownアドレスとして、ルーティング プロトコル等の利用に予約されています。
  2. 224.0.1.0 から 239.255.255.255 の以外の残りのレンジ、つまり 239.0.0.0 から239.255.255.255 は社内のみの VXLAN 展開に使うことができます。IP アドレスの 10.0.0.0/8 レンジのようなプライベート アドレスに相当するものです。グローバルなインターネット トラフィックに使用することができません。
  3. 管理 ドメイン間で共有する VXLAN ネットワークの展開には、232.0.0.0/8 (232.0.0.0 から 232.225.225.225) の送信元固有ブロックから付与する必要があります。

ステップ 4: VXLAN ネットワーク スコープの定義

ネットワーク スコープでは、論理ネットワークのレンジを定義します。この例では、VXLAN ベースの論理ネットワーク レンジが両方のサーバ クラスタの範囲で定義されます。図 18 の画面で Network Scopes を、新しいネットワーク スコープを定義するために、図 19 の画面で “+” アイコンをクリックします。

図 18: VXLAN ネットワーク スコープの定義 – ネットワークスコープ タブの選択

図 19: VXLAN ネットワーク スコープの定義 – 追加をクリック

ネットワーク スコープの名前を入力し、そのスコープの一部となる両方のクラスタを選択し、Ok をクリックします。

図 20: VXLAN ネットワーク スコープの定義 – スコープの定義とクラスタの選択

この設定ステップを通じて、ネットワークのスコープを拡張、縮小する選択が可能で、必要に応じて、ネットワークスコープにクラスタを追加したり、削除したりすることが可能です。

ステップ 5: 物理スイッチの設定

この例で、物理スイッチ上に必要とされる設定は次のとおりです。

  1. 両方のスイッチ上に VLAN 2000 を設定
    a. vSphere ホストが接続するスイッチのポートで VLAN 2000 がトランク設定されており、ネットワークインフラ上で VLAN 2000 が設定されていること
    b. スイッチ間のポートチャネル上で VLAN 2000 を転送できること
  2. IGMP snooping の設定
  3. VLAN 2000 上に IGMP クエリアを有効化
  4. MTU サイズを 1600 以上 に拡大。一般的に、スイッチ全体で MTU サイズを変更、もしくはポート毎に MTU サイズを変更する機器があります。使用する機器の設定ガイド等をご確認ください。

以下は、一般的に利用されるスイッチの設定例です。

スイッチ 1 の設定 ( 図 12 の左のスイッチ )

1) VXLAN VLAN の設定

switch (config) # interface vlan 2000
switch (config-if) # ip address 40.0.0.251 255.255.255.0
switch (config-if) # no shutdown
switch (config-if) # exit

2) IGMP snooping の設定

switch (config) # ip igmp snooping

3) IGMP querier の設定

switch (config) # interface vlan 2000
switch (config-if) # ip igmp snooping querier
switch (config-if) # exit

4) MTU の設定 (1 ポートのみの設定例)

switch (config) # interface gigabitEthernet 1/1
switch (config-if) # mtu 9216

スイッチ 2 の設定 ( 図 12 の右のスイッチ )

1) VXLAN VLAN の設定

switch (config) # interface vlan 2000
switch (config-if) # ip address 40.0.0.252 255.255.255.0
switch (config-if) # no shutdown
switch (config-if) # exit

2) IGMP snooping の設定

switch (config) # ip igmp snooping

3) IGMP querier の設定

switch (config) # interface vlan 2000
switch (config-if) # ip igmp snooping querier
switch (config-if) # exit

4) MTU の設定 (1 ポートのみの設定例)

switch (config) # interface gigabitEthernet 1/1
switch (config-if) # mtu 9216

物理スイッチの設定については、こちらも合わせて、ご参照ください。

ステップ 6: 論理 L2 ネットワークの構成 (消費)

VXLAN ファブリックを作成後、物理ネットワークと分離されている論理的 L2 ネットワークを構成 (消費) します。この例では、3 階層型アプリケーションの仮想マシン用の 3 つの別々の論理ネットワークを作成します。作成の順序は次のとおりです。

  1. 仮想ネットワークワイヤを作成
  2. 仮想ネットワークワイヤに仮想マシンを接続
  3. 仮想ネットワークワイヤ上の仮想マシンに IP アドレスを付与

新しい仮想ネットワークワイヤを作成するために、最初に図 21 の画面で Networks をクリックし図 22 の画面で “+” アイコンをクリックします。

図 21: VXLAN 仮想ネットワーク ワイヤ – Networks をクリック

図 22: VXLAN 仮想ネットワーク ワイヤ – 追加

図 23 の画面で、仮想ネットワーク ワイヤの名前を入力し、Ok をクリックします。すると、図 24 の画面のように、セグメント ID 9001 と、マルチキャスト グループ アドレス 239.0.0.1 が自動的にこの仮想ネットワークワイヤに関連づけられていることがわかります。

図 23: VXLAN 仮想ネットワーク ワイヤ – Web-vWire

図 24: VXLAN 仮想ネットワーク ワイヤ – Web-vWire がセグメント ID 9001 で作成

このステップを繰り返し、さらに 2 つ、アプリケーション サーバと DB サーバ用の仮想ネットワーク ワイヤを作成します。

図 25: VXLAN 仮想ネットワーク ワイヤ – Application-vWire と DB-vWire 作成

ステップ 7: 仮想ネットワーク ワイヤに仮想マシンを接続

現在、図 26 のように 3 つのサーバがあります。

図 26: 3 階層システム アプリケーションの展開

仮想マシンを仮想ネットワーク ワイヤに接続する方法は 2 つあります。

  1. vCloud Networking and Security Manager を使用
  2. 仮想マシンの設定の編集で、ポートグループを変更

オプション 1: vCloud Networking and Security Manager を使用

このオプションでは、仮想マシンが接続したい仮想ネットワーク ワイヤを選択します。

図 27: vCloud Networking and Security Manager – Web-vWire を選択

図 28: vCloud Networking and Security Manager – Virtual Machines の選択

+” アイコンをクリック後、仮想マシンの名前の一部を入れて検索し、対象の仮想マシンの仮想 NIC を選択し、Next をクリックします。

図 29: vCloud Networking and Security Manager – Add をクリックし、web サーバ仮想マシンを検索

図 30 の画面で、web サーバ仮想マシンの接続プロセスを完了します。

図 30: vCloud Networking and Security Manager – 仮想マシンが接続される

オプション 2: 仮想マシンの設定の編集で、ポートグループを変更

vCloud Networking and Security Manager の代わりに、ネットワーク アダプタの設定の編集で、仮想マシンの接続を変更します。

VXLAN 環境に構成されたそれぞれの仮想ネットワーク ワイヤは、VDS 上のポートグループに関連づけされています。図 31 に、3 つのポートグループ、つまり 3 つの仮想ネットワーク ワイヤ ( Web, Application, DB 用 ) が確認できます。

図 31: 仮想ネットワーク ワイヤとポートグループの関連づけ

ホストおよびクラスタ ビューで、アプリケーション サーバ (この例では、ap-1-k) の仮想マシンを選択し、設定の編集 をクリックします。

図 32: アプリケーション サーバ – 仮想マシン 設定の編集 – ポートグループの変更

仮想ネットワーク ワイヤに接続するネットワーク アダプタを選択し、ネットワーク ラベルのドロップダウン メニューから、Application-vWire ポートグループを選択し、OK をクリックして保存します。

図 33: 仮想マシン 設定の編集 – Application-vWire に再マッピング

同様に、オプション 1 か 2 の方法で、DB サーバも DB-vWire 仮想ネットワーク ワイヤに接続します。

図 34 のように、3 つの仮想ネットワーク ワイヤに 3 階層システムアプリケーションが構成された状態になります。

図 34: 新しい展開 – 仮想ネットワークワイヤ上の 3 階層システムアプリケーション

ステップ 8: 仮想ネットワーク ワイヤ上の仮想マシンに IP アドレスを付与

仮想マシンにIPアドレスを手動で付与する、もしくは vCloud Networking and Security Edge ゲートウェイの DHCP サーバを使用して自動的に付与する、のどちらかを選択することができます。この例では、3 つの仮想ネットワークワイヤに次のサブネットを付与し、仮想マシンにはそれぞれのサブネットから IP アドレスを手動で設定します。

  1. Web-vWire – 192.168.10.0/24
  2. Application-vWire – 192.168.20.0/24
  3. DB-vWire – 192.168.30.0/24

仮想ネットワークワイヤに接続される 3 つの仮想マシンは、お互いに分離されています。アプリケーションのそれぞれの層の間で通信を提供するため、または VXLAN の外のネットワークと通信するために、vCloud Networking and Security Edge ゲートウェイを展開する必要があります。その設定については、次回、ご紹介します。

※このブログでは、vCloud Networking and Security 5.1 と、vCenter Server 5.1 Update 1および vSphere 5.1 Update 1を元に作成しました。それぞれの 5.5 リリースの場合も大きな変更はない予定です ( 2013 年 8 月 29 日現在 )。

 

ネットワーク仮想化 – VXLAN の概要

VXLAN の概要

仮想化技術およびクラウド技術の普及により、VMware のお客様の多くはネットワークの運用において新たな課題に直面しています。ネットワークに柔軟性をもたらす仮想化技術、 Virtual eXtensible Local Area Network (VXLAN) がその課題を克服できる技術の一つとして注目を浴びています。これから数回に分けて、解説と設定をご紹介します。

VXLAN は一言で言うと、レイヤ 2 (L2) を維持したまま、物理インフラをまたぐ通信に IP が使える、オーバーレイ ネットワークです。

従来の物理ネットワークには、次のような課題が見受けられます。

  • L2 ネットワークの分離のために一般的に利用される VLAN 数は、4094 個までしか作成できない。マルチテナントや大規模データセンターでは、さらに多くのネットワークの分離が望まれている。
  • VLAN やスイッチの境界を、キャパシティ要件の増加や縮小に合わせて、運用コストを大幅に増加させずに、拡張することが難しい。
  • 高可用性テクノロジーは、フラットな L2 ネットワークで最適に動作するため、データセンターにわたってサーバ リソースのプールを利用したい場合は、大規模 L2 ネットワークが必要となり、構築と管理が難しい。

このような課題に、VXLAN ベースのネットワーク仮想化で対応できます。

  • 通常の IP ネットワーク上に論理的な L2 オーバーレイネットワークを作成し、論理的な L2 ネットワークを構築できる。論理ネットワークに付与される VXLAN Network Identifier (VNI)、または VXLAN セグメント ID とよばれる ID は、約 1677 万個のため、VLAN をはるかに超えるネットワークの分離ができる。
  • スイッチやポッドの境界にまたがる拡張クラスタを構築でき、柔軟性を増加させることができる。
  • VXLAN は標準の L3 の IP ネットワーク上で動作し、大規模な物理 L2 ネットワークを構築及び管理する必要がない。

VXLAN の主要なコンポーネント

VMware VXLAN ソリューションは次のコンポーネントから成ります。

VMware vCloud Networking and Security Manager

VMware vCloud Networking and Security Manager は vCloud Networking and Security 製品の集中型ネットワーク管理コンポーネントです。VMware vCenter Server にプラグインが用意されており、プラグイン経由で VXLAN 設定を行うことが出来ます。プラグインは VMware vSphere Client のみで利用可能で、VMware vSphere Web Client ではまだ利用可能ではありません。vCloud Networking and Security Manager で vCenter Server の IP アドレスとその証明書を設定後、データセンタ オブジェクト レベルで “Network Virtualization” タブが表示されます。VMware vCloud Networking and Security Manager はまた、vShield Manager とも呼ばれることがあります。

VMware vSphere Distributed Switch (分散スイッチ)

vSphere プラットフォーム内の分散スイッチ (VDS) はデータセンターの仮想ネットワークの状況管理を一元的に管理できます。VDS はまた、VXLAN に加えて、トラフィック管理、モニタリング、トラブルシューティングなどの拡張機能も提供します。最新の VDS 機能の詳細は、What’s New in VMware vSphere 5.1 – Networking をご参照ください。

http://www.vmware.com/files/
pdf/techpaper/Whats-New-VMware-vSphere-51-Network-Technical-Whitepaper.pdf

Virtual Tunnel End Point

Virtual Tunnel End Point (VTEP) は、VXLAN 設定プロセスの一部として、全てのホスト上で設定されます。VTEP は、次の 3 つのモジュールから成ります。

  1. vmkernel モジュール : VTEP 機能は VDS の一部で、VMware Installation Bundle (VIB) としてインストールされます。このモジュールはフォワーディング テーブルのメンテナンスとパケットのカプセル化とカプセル除去を含めた、VXLAN データパス処理を担当します。
  2. vmknic 仮想アダプター : このアダプターは、マルチキャストの参加、DHCP や ARP リクエストのレスポンスを含めたVXLANコントロール トラフィックを運ぶために使われます。
  3. VXLAN ポートグループ : 物理 NIC、VLAN 情報、チーミング ポリシー等を含めて最初の VXLAN 設定プロセス中に設定されます。

それぞれの vSphere ホストの VTEP には、vmknic 仮想アダプタに設定される固有の IP アドレスを付与し、ホスト間の通信トンネルを確立し、VXLAN トラフィックを運ぶために使われます。

VMware vClound Networking and Security Edge ゲートウェイ

VMware vCloud Networking and Security Edge ゲートウェイは、境界のファイアウォール、DHCP、NAT、VPN、ロードバランサ、VXLAN ゲートウェイ機能のような拡張ネットワーク サービスを持つ仮想アプライアンスです。

vCloud Networking and Security Edge ゲートウェイの VXLAN ゲートウェイ機能は、VXLAN ネットワーク デザインをする上での主要なコンポーネントの一つです。vCloud Networking and Security Edge ゲートウェイは、VXLAN と VXLAN でない環境間でのゲートウェイとして動作します。次のような場合に使われます。

  1. 論理 L2 ネットワークに接続される仮想マシンが物理サーバと会話しなければならない、もしくはホスト上で動作する仮想マシンが VXLAN をサポートしていない場合、トラフィックは vCloud Networking and Security Edge ゲートウェイが接続性を提供します。
  2. 1 つの論理 L2 ネットワークにある仮想マシンが他の論理 L2 ネットワーク上の仮想マシンと会話しなければならない場合、vCloud Networking and Security Edge ゲートウェイが接続性を提供します。

vCloud Networking and Security Edge ゲートウェイは、アクティブ-スタンバイ構成と最大 10 のインターフェースを持つことができる高可用性のある仮想アプライアンスです。Compact (小)、Large (中)、X-Large (大) の3つのサイズを提供しており、サイズを変更するオプションで、この仮想アプライアンスをスケールアップすることができます。また、複数の仮想アプライアンスを使うスケールアウト構成もできます。

次回は、設定について、ご紹介します。