Home > Blogs > Japan Cloud Infrastructure Blog > タグ別アーカイブ: ネットワーク

タグ別アーカイブ: ネットワーク

VMware NSX による Software-Defined Data Center (SDDC) の視認性の変革

ネットワーク仮想化と VMware NSX は統合により視認性を大きく改善する

※この記事は、2013年10月15日の Brad Hedlund による記事の翻訳版です。

記事の概要

これまで VMware NSX に関する議論の多くは、優れた俊敏性と、完全に自動化されたネットワーク プロビジョニングという VMware NSX の主要な特性に関するものでした。仮想マシンと同等のスピードおよび可搬性を備え、完全な機能を持った L2 ~ L7 仮想ネットワークをソフトウェア コンテナ内に作成する機能です。これは非常に重要な機能ですが、同じくらい重要な機能がほかにもあります。それは、ネットワーク仮想化と VMware NSX が Software-Defined Data Center 時代の運用における視認性を大きく変革するという点です。

統合による新たな視認性

ネットワークとコンピューティングの統合は、別々でありながら密接に関連するこの 2 つのサービスを安定して共存させる理想的なアーキテクチャによって実現されています。まだあまり注目されていませんが、この統合は本質的に視認性を向上します。理由は簡単で、プラットフォームが 1 つになることで、同期された統合ビューで複数のサービスとそれらの関係をリアルタイムで確認できるためです。1 か所から確認できるようになることで、これまで考えられていた以上に高度なアプリケーションと運用ツールを実現できます。

VoIP 端末により実現した音声とデータの統合、および接続制御のソフトウェアを例として考えてみましょう。データ端末と音声利用者の関係を 1 か所で確認できるようにすることで、マルチメディア、場所情報、在席情報などの充実したサービスを利用したコラボレーションが実現しました。音声 / データの統合によるメリットは最終段階にならないとわからないかもしれませんが、インフラの統合では初期段階で明らかなメリットがあります。

VMware NSX によって実現するネットワークの仮想化は、異なるサービスでありつつ密接に関連している複数の仮想サービス (仮想コンピューティング、仮想ネットワーク、および物理ネットワーク ファブリック) の統合につながります。俊敏性に優れ、自動化されたネットワーク プロビジョニングの初期段階のメリットは明らかであり、とても重要です。ただし、繰り返しますが、あまり目立ちませんが同様に重要なメリットである、サービスの視認性の向上も実現するでしょう。ネットワーク仮想化と VMware NSX を使えば、単一のプラットフォームで、アプリケーション環境、アプリケーションが使用する完全な L2 ~ L7 ネットワーク サービス、およびサーバが転送される物理ネットワーク ファブリックを詳細にわたって確認することができます。

VMware NSX は仮想コンピューティングを仮想および物理ネットワークと統合する

この統合と視認性を実現する理想的なプラットフォームは、ハイパーバイザー、およびそれに対応するプログラム可能なソフトウェア仮想スイッチです。ハイパーバイザーは、仮想マシン (アプリケーション)、仮想ネットワーク、物理ネットワーク、およびストレージ アクセスのちょうど中間に位置付けられます。VMware NSX は、ハイパーバイザー内でこの戦略的な位置付けを十分に活用します。また、統合制御ソフトウェアを通じて、個々のアプリケーション、それらが利用する L2 ~ L7 ネットワーク サービス、および物理ネットワーク間の流動的な関係を、NSX では 1 か所からまとめて測定および確認できるようになります。

シンプルな例として、ロード バランシング サービスに関連付けられた N 台の仮想マシンの階層からなるアプリケーションを考えてください。単一の API で次のことができます。各仮想マシンと対応するロード バランサの物理的な場所を確認できます。ロード バランサと各仮想マシン間のトラフィックを測定してプロファイルを作成できます。ロード バランサと各仮想マシン間の物理ネットワーク接続の問題を検出してフラグを付けることができます。仮想ネットワーク ポート上の構成エラーを検出してフラグを付けることができます。影響があるインスタンスを特定できます。ロード バランサ インスタンスの負荷と健全性を確認できます。ポート カウンタとフル パケット キャプチャを利用しながらトラフィックを監視できます。ベースラインまたはテンプレートとの比較をこれらすべての特性について行えます。アプリケーション特有のビューを、関連するアプリケーションの所有者とネットワーク運用担当者に提示できます。包括的で目的を絞った視認性により、ノイズの中からより多くのシグナルを抽出できるようになります。

トラブルシューティング

物理ネットワークの健全性ヒートマップ

統合によりトラブルシューティングの基盤も強化されます。相互に依存する複数のドメインを単一のプラットフォームで確認できると、問題があるドメインを迅速に識別するための出発点とすることができます。VMware NSX はハイパーバイザー内で理想的な場所に配置されています。相互に依存する 2 つのドメイン、つまり仮想ネットワークと物理ネットワークの重要な接点です。VMware NSX では、完全な L2 ~ L7 仮想ネットワークの健全性と状態を確認できます。また、VMware NSX はすべてのハイパーバイザー仮想スイッチおよびゲートウェイ間の物理ネットワーク (トンネル健全性プローブあり) の健全性を常にテストしており、API クエリと NSX Manager のヒート マップを通じてリアルタイムで確認できます。

たとえば、物理ネットワークの問題が原因で接続の問題が発生している場合、VMware NSX は直ちにこれを検出し、影響のあるハイパーバイザーと仮想マシンを特定できます。トラブルシューティング対象のドメインを迅速に特定し (物理環境)、問題の範囲を調査して、作業に着手するためのより実用的な情報を得られます。また、接続の問題が仮想ネットワーク内だけに存在する場合を考えます。ACL またはファイアウォール ルールの構成ミスが原因の可能性があります。VMware NSX はこれが物理ネットワークの問題ではないことを直ちに識別します。仮想ネットワーク (TraceFlow & Port Connections) を通じてトラフィックを挿入 / 追跡するツールを提供し、仮想スイッチおよびトラフィックをドロップしている ACL を特定します。

仮想ネットワーク内のブロックされているフローの統合管理

VMware NSX for vSphere のブロックされているフローの監視

例として (上図)、VMware NSX for vSphere で提供される Flow Monitoring ツールでは、仮想ネットワーク内でファイアウォール ルールが適用されているすべてのフローに対するグローバルなビューを提供します。これにより、トラブルシューティングの際に、仮想ネットワークのどこかでブロックされた個別のフローに関する詳細情報 (リアルタイムまたは履歴) を確認できます。詳細情報には、関連するアプリケーションのタイプ、ソースとターゲット、時刻、および特定のルールが含まれます。この情報はいつでも数クリックで確認できます。

この分析機能はすべて、プログラム可能な単一のインターフェイスである NSX API を通じて利用できます。VMware はすでに既存の運用ツールを拡張して、vCenter Operations Manager や Log Insight などで NSX API を活用できるようにしています。また、パートナーはすでに NSX との連携に着手し、優れたツールを拡張して、仮想ネットワークと物理ネットワークを可視化し、関連付けようとしています。いくつか例を見てみましょう。

トラフィック フローを可視化し、仮想ネットワークと物理ネットワークを関連付ける

ハイパーバイザー内では、VMware NSX は仮想コンピューティング レイヤーのアプリケーションに隣接しており、フローのすべてを直接確認できます。また、NSX がキャプチャしたフロー データのすべては、標準インターフェイス (IPFIX) を使用して監視ツールにエクスポートできます。この監視ツールは標準フロー データを物理ネットワークから収集することもできます。また、任意の標準インフラストラクチャ ハードウェア上で仮想 / 物理フローを関連付けて統合ビューに表示できます。

NetFlow Logic および Splunk を使用した仮想から物理へのトラフィック フローの視認性

たとえば、VMware NSX は NetFlow Logic および Splunk (上図) と容易に連携できます。VMware NSX および ToR (Top of Rack) スイッチから取得した標準 IPFIX と NetFlow のエクスポートを単純に集約して関連付けることで、仮想ネットワークと物理ネットワーク上を流れるトラフィックを可視化します。トラフィック量が多いフローを確認できます。トラフィック ソースを選択して、そのやり取りの仮想ネットワークと物理パスを確認できます。たとえば (上図)、やり取りを 1 つ選択して、そのトラフィックの仮想と物理の詳細 (例: ソース VM IP アドレス > ソース Hypervisor IP アドレス > ソース ToR スイッチと入力ポート > 仮想ネットワーク VXLAN ID > ターゲット ToR スイッチと出力ポート > ターゲット Hypervisor IP アドレス > ターゲット VM IP アドレス > Tx/Rx 接続状態 > 時刻ごとの使用帯域 を確認できます。

物理および仮想ネットワーク トポロジを可視化して関連付ける

VMware NSX は、任意の仮想マシンの物理的な位置および接続されている完全な L2 ~ L7 仮想ネットワーク トポロジを常に認識します。また NSX は、ハイパーバイザーの運用状態、およびNSX アプライアンスのネットワークの健全性と統計情報を確認できる標準 SNMP インターフェイスを提供します。NSX API および SNMP を介してこの情報に容易にアクセスできるので、物理ネットワーク管理ツールが、仮想ネットワークとその運用状態の詳細情報を取得するのは非常に簡単です。

物理および仮想ネットワーク トポロジを可視化して EMC Smarts と関連付ける

例として、EMC Smarts を使えば、VMware NSX API と連携して、物理ネットワーク トポロジを VMware NSX 仮想ネットワーク トポロジと組み合わせて関連付け、依存関係のマップを作成することができます。上図の例では、ラックの一番上にある特定のスイッチに問題が発生している場合、影響があるテナント、アプリケーション、仮想ネットワーク、およびハイパーバイザーのマップを確認できることがわかります。別の例として、詳細にわたって仮想 / 物理ネットワークの可視化および関連付けを行う Riverbed 社の Cascade ソリューションも開発されています。

包括的なダッシュボードと Log Insight による分析

VMware NSX は多くの運用データを生成します。それらはすべて標準の Syslog データを使用してエクスポートできますし、NSX API を使用してもアクセスできます。例として、VMware Log Insight という複数の VMware プラットフォームにまたがるマシンのデータを集約して分析することができるソリューションを使うと、VMware NSX のデータも分析することができます(下図)。

Log Insight を使用した VMware NSX の運用データの視認性

VMware NSX は、vCenter Operations Manager (下図) や Log Insight (上図) などの既存の VMware の運用ツールと密接に連携します。これによりさまざまな機能 (パフォーマンス分析とアクセス プロセスのリアルタイムでの関連付け、仮想マシンと仮想ネットワーク インターフェイスの統計情報、物理ネットワーク インターフェイスの統計情報、ネットワークの健全性、物理ネットワーク フローのログ、予測的な根本原因分析の機能など) が提供され、任意の標準ネットワーク ファブリックにまたがって問題を迅速に診断するための、完全な運用上の視認性が得られます。これらの強力なツールは、コンピューティング チームとネットワーク チームが共同で利用することになると想定しています。

vCenter Operations Manager による包括的な監視と根本原因分析

VMware vCenter Operations Manager も、VMware NSX API でアクセスできる豊富なネットワーク情報を利用できるように拡張されました。

VMware vC Ops を使用した全体的な仮想インフラストラクチャの視認性と根本原因分析

VMware NSX の統合は vCenter Operations Manager (上図) に組み込まれており、NSX のネットワークの視認性のデータは、既存のコンピューティングおよびストレージの運用データと統合されます。それにより、仮想インフラストラクチャ全体の状態を確認し、トラブルシューティングに利用できる、単一の包括的なツールが形成されます。たとえば、ハイパーバイザーの CPU、ストレージ、ネットワークの健全性ヒート マップなどが、通常のしきい値を動的に認識し、異常を検知します。また、詳細なメトリックまで掘り下げて、根本原因分析のためにイベントを関連付けます。

視認性と機能による大きな変革

VMware NSX により実現した全体的な視認性は、それ自体が重要なメリットといえます。ただし、遠隔監視や L2 ~ L7 ネットワーク サービスなどのハイパーバイザー仮想スイッチ レイヤーでの高度な機能と組み合わせると、以前は考えられなかったツールが提供されるようになります。それが、Software-Defined Data Center にメリットをもたらす運用機能の変革の始まりとなります。また、既存の監視ツール (IPFIX、sFlow、ERSPAN、SNMP、Syslog) は VMware NSX 用に拡張され、パケットに入口となるソース (ハイパーバイザー仮想スイッチ) で収集された、全体的な視認性に関する情報を取得します。ソースは、仮想環境で測定およびキャプチャするためのより重要な場所です。

パケット検査から詳細なアプリケーション セマンティクスへ

数十年間、ネットワークの運用では、「視認性」 についてはパケット ヘッダの検査で十分でした。パケット ヘッダを検査するネットワーク スイッチがセキュリティ ポリシー (ACL) や QoS (サービス品質) の役割を果たしていたのでしょう。あるいはトラフィックを識別するために監視ツール上のパケット ヘッダを調査している運用担当者がその役割を担っていたのかもしれません。どちらにしろ、ポリシーと視認性は、パケット ヘッダに含まれる基本的な情報と同じくらいの重要性しかありませんでした。たとえば、トラフィックが正当なアプリケーション プロセスからのものか、問題または異常のあるプロセスからのものかは識別できませんでした。インスタンスに提供されたトラフィックが、実際に健全なアプリケーション プロセスで使用されたものかどうかはわかりませんでした。ユーザー名、組織、アプリケーションのバージョン、ライフサイクル (開発 / テスト / 本番) などは識別できませんでした。物理ネットワークにおけるパケット ヘッダの 「視認性」 には、(設計上でも) アプリケーション環境に関して有用な詳細情報は含まれていませんでした。

対照的に、VMware NSX は、完全な L2 ~ L7 仮想ネットワークとハイパーバイザーの統合を通じて、仮想コンピューティング レイヤーにあるアプリケーション セマンティクスとメタデータに対する詳細な視認性を確保します。

アプリケーション固有で ID に対応した視認性 (アクティビティの監視)

VMware NSX によるアプリケーションと ID に対応したネットワーク アクティビティの監視

VMware NSX for vSphere は、アプリケーションに関連するネットワーク アクティビティを、仮想マシン上の個々のプロセス レベルで監視できます。仮想マシンは、トラフィック (上図)、ユーザー ID、組織グループ、アプリケーションのバージョン、所有者権限、オペレーティング システムなどの情報を送受信しています。たとえば、特定のアプリケーション プロセスに送信されたトラフィック、特定のマシン セットに向けたトラフィック、特定の Active Directory グループから送信されたトラフィックに焦点を絞ることができます。仮想コンピューティングに深く組み込まれた仮想ネットワーク プラットフォームだけが、このような、アプリケーションに関連した視認性を容易に提供できます。監視は始まりにすぎません。このレベルの視認性は、より高度なアプリケーション テンプレート、振る舞いに関するプロファイル、およびセキュリティ ポリシーを作成するために使用できます。

アプリケーションに関連する視認性はたしかに素晴らしいものですが、特定の仮想マシンが送信 / 受信している任意のトラフィックまたはすべてのトラフィックを迅速に確認する必要がある場合があります。パケット ヘッダの検査は、この目的ではもちろん現在でも有用なツールで、VMware NSX を使用することによる制約はありません。実際、ハイパーバイザーでの位置付けにより、NSX は任意の仮想マシンのステートフル トラフィック フローを、仮想ネットワーク インターフェイス (仮想 NIC) で直接、リアルタイムで選択的に分析できます。

仮想マシンのネットワーク インターフェイスでの直接的なリアルタイムのステートフル フロー監視 (Live Flow)

仮想マシンの仮想 NIC ごとの Live Flow の視認性

たとえば、VMware NSX for vSphere では、組み込みツールである Live Flow による監視機能 (上図) が提供されます。これにより、単純に任意の仮想マシンのネットワーク インターフェイスを選択して、(リアルタイムで) すべてのフローとその状態の概要を確認できます。対象の仮想マシンにおけるすべてのフローの完全な詳細情報を確認できます。詳細情報には、各フローの方向、フローごとのバイト数とパケット数、各フローで許可されているファイアウォール ルール、IP アドレスとポート番号、および各接続の状態が含まれます。追加の手順は必要ありません。リモート ツールへのフル パケット キャプチャの構成や、自分の仮想マシンに割り当てられる IP アドレスの調査は必要ありません。対象のネットワーク トラフィックの視認性に対するシンプルなタスクのために、VMware NSX はシンプルなツールを提供します。この情報はいつでも数クリックで確認できます。

フル パケット キャプチャが必要な場合は、任意の仮想マシンの仮想ネットワーク ポートから直接リモート監視システムに対して、SPAN / RSPAN / ERSPAN を使用してポート ミラーリングを選択的に確立できます。また、物理ネットワーク上のポートからのパケットをキャプチャする必要がある状況では、現在は多くの管理ツールが Wireshark などの VXLAN のフィルタを提供しており、それによりトンネル パケットを容易にデコードできます。

セキュリティ ポリシーとコンプライアンスの視認性

もちろん、「視認性」 とはネットワーク トラフィックを確認して把握することだけではありません。トラブルシューティングは、ネットワークの仮想化によりもたらされる包括的な視認性からメリットを享受できる多くの重要な分野の 1 つです。例として、コンプライアンスのためにセキュリティ ポリシーの監査を行うタスクを考えてください。このために、VMware NSX for vSphere は Service Composer と呼ばれる組み込みツールを使用して、リアルタイムのアプリケーション セキュリティ ポリシーを確認し、定義するための代表的な手段を提供します。

セキュリティ ポリシーとアプリケーションの分離に対するリアルタイムでの統合された視認性

VMware NSX Service Composer を使用したアプリケーションのセキュリティ ポリシーの視認性

Service Composer の [Canvas] ビューには、作成したセキュリティ グループ、各グループのオブジェクト、および各グループに適用されたサービス (ステートフル ファイアウォール分離など) が表示されます。たとえば (上図)、PCI アプリケーションのセキュリティ グループがあり、IT アプリケーションからの厳格な分離ポリシーが構成されています。これは、PCI コンテナのファイアウォールのアイコンをクリックするだけで確認できます。この分離は、ハイパーバイザー内の VMware NSX 分散配置されたカーネルのステートフル ファイアウォールにより適用され、中央のビューにリアルタイムで表示されます。

将来的な展望: 測定とインテリジェントな最適化

今日のプラットフォームの機能、統合、および視認性の堅牢な基盤は、ソフトウェアにより完全に実現されています。さらなる機能、また任意の標準ハードウェアやネットワーク アーキテクチャ上でそれを実現するスピードに期待しています。

End-to-End の遠隔監視

運用の視認性を最大限実現するための重要なツールは End-to-End の測定です。あるアプリケーション トラフィックのソースと目的を確認することに加え、特定の期間における、 アプリケーションのパフォーマンス プロファイルと振る舞いについて知りたい場合があります。真の End-to-End の遠隔測定法とは、可能な限りデータ ソースに近づいて測定することです。その点で、VMware NSX はトラフィックのソースで理想的な位置にあります (仮想コンピューティング レイヤーに深く組み込まれている)。また、ハイパーバイザー内でフロー ベースの仮想スイッチで遠隔監視を実装しています。つまり、任意の 2 つの端末間における任意のやり取りは、直接ソースとターゲット (ハイパーバイザー仮想スイッチ) で説明、測定、およびマークすることができます。

Network DRS

ハイパーバイザーの VMware NSX 仮想スイッチは、カーネル ファスト パス内の L2 ~ L4 ネットワーク サービスに対応しています。レイヤー 2 スイッチ、レイヤー 3 ルーティング、双方向のステートフル ファイアウォール、ACL、QoS などがすべて、x86 マシンの速度で、ハイパーバイザー カーネル内でローカルで処理されます。前述したアプリケーションの認識と End-to-End の遠隔監視とを組み合わせることで、ワークロードの配置をインテリジェントに最適化し、アプリケーションで可能な最高のパフォーマンスを実現するのに必要なすべての情報と機能が得られます。

Network DRS: ネットワーク対応の最適なワークロード配置

たとえば、マルチ ティア アプリケーションにおいて、レイヤー 3 ルーティングとファイアウォール セキュリティにより分離された 2 つの仮想マシン間の重要なトラフィックを、End-to-End の遠隔監視により測定する場合を考えてください。この情報により、仮想コンピューティング レイヤーは、最適化されたパフォーマンスとそのトラフィックを物理ネットワークから削除するというメリットを実現するために、2 つの仮想マシンを同一のハイパーバイザーに移行することを決定できます。つまり最適な配置は最適なパス(経路)より優れています。

物理ネットワーク接続の問題が特定のハイパーバイザー間の問題を引き起こす別のシナリオを考えてください。VMware NSX は常に物理ネットワークの健全性をテストしているので、問題を迅速に発見できるだけでなく、影響があるハイパーバイザー、ネットワーク サービス、および仮想マシンを特定できることを思い出してください。物理ネットワークの課題に対応しながら、仮想コンピューティング レイヤーがこの情報を活用して、影響のある仮想マシンを、影響のない別のハイパーバイザーにプロアクティブに移行することができます。End-to-End の遠隔測定法はアクションが実際に役に立ったかどうかをあとで検証できます。

エレファント フローの検出と応答

Network DRS の別の例は、VMware NSX のフロー ベースのハイパーバイザー仮想スイッチ内の End-to-End の遠隔監視が、特定のフローを 「エレファント」 として検出し、プロファイリングするシナリオです。「エレファント」 とは、寿命は短いが重要な小さなフロー「マウス」を、無意識に踏みつける、寿命の長い大きなフローのことです。全体的に、確認対象となる可能性があるフローが多いので、VMware NSX は、この遠隔測定法がハイパーバイザー仮想スイッチ全体に分散されるように理想的に配置されています。各ハイパーバイザー仮想スイッチは自身のローカル トラフィックの一部を測定します。エレファント フローが検出されたら、タグ付けされ、処理されます。処理の内容は、重要な小さなフローから離れるように移行する、視認性とネットワーク ファブリックのポリシーのために QoS のマークを適用する、などです。

任意のハードウェア、クラウド、およびハイパーバイザーに対する視認性

もちろん、ここまで話したことはすべて、ソフトウェア プラットフォームである VMware NSX により実現されます。VMware NSX は、任意のネットワーク ハードウェア、任意のハイパーバイザーで動作し、任意のクラウド ポータルからプロビジョニングされ、任意のアプリケーションに対応するように設計されています。ハードウェアに依存しないソフトウェアにより、運用の視認性とツールの機能の両方の一貫性が保たれ、インフラストラクチャのライフサイクルを通じてさまざまなハードウェアとネットワーク アーキテクチャ上で正規化されます。

今後について

VMware NSX は現在一般公開されており、VMware およびパートナーの運用ツールと強固に連携しています。この記事は、長期的視点で見ると、SDDC 向けの運用ツールの変革において VMware NSX ができることのほんの一部に触れただけにすぎません。VMware では引き続き、このプラットフォームとネットワークの未来を形作るのに役立つ、お客様からの貴重なフィードバックをお待ちしております。ご協力よろしくお願いします。

押さえておきたいvSphere の基本~ネットワーク編 第3回~

「押さえておきたいvSphere の基本」のネットワーク編として、仮想化環境におけるネットワークの基本を3回に分けてご紹介しています。最後の第3回は、効率性と俊敏性に優れ、拡張可能な仮想ネットワークとセキュリティを実現するvCloud Networking and Security (以下、vCNS) を解説します。


■ データセンターのネットワークとセキュリティの課題

今日、サーバー仮想化によって仮想マシンを簡単に素早く(数分で)展開出来き、運用効率も飛躍的に向上しました。物理サーバーを調達して構成していた時代からは格段の進歩を遂げています。しかし、いくら仮想マシンを素早く展開して運用効率を上げても、それを取り巻くネットワークやセキュリティ サービスはどうでしょうか?サーバー仮想化によって仮想マシンが動的に構成されるのに、ネットワークは未だに物理的に構成されているため、結果として仮想マシンの柔軟性を最大限に引き出せない現実があります。

1

 

例えば、以下のような問題に直面された方は多いのではないでしょうか。

  • 必要なネットワークやセキュリティ サービスを準備、設定変更するのに数日または数週間かかる。(ビジネスニーズに応じた迅速な導入、拡張が制限される。仮想マシンは数分で準備できるのに!!)
  • 物理ネットワークとセキュリティ境界の制限によって、仮想マシンを動的に移行・構成出来ない。(サーバーリソースの使用率の最適化を防いでいる)
  • ネットワーク機器への手動による構成や設定変更、専用アプライアンス等による異なる管理インターフェースを使用する事による効率性の低下。(オペレーションコストの増大)

これらの課題を解決策するにはどうすれば良いでしょうか?
その答えとして、サーバー仮想化のように、物理的なネットワーク機器からネットワーク機能を分離するネットワーク仮想化が考えられます。そのソリューションとして、VMwareはvCNSを提供しています。

 2

 では、vCNSが実現可能なネットワーク仮想化の機能をご紹介します。


■ vCNS主な機能

vCNSはいくつかのコンポーネントから構成されています。

3


論理ネットワーク(VXLAN) :
L3ネットワーク上にカプセル化された仮想L2ネットワーク作成します。物理ネットワークのセグメントに制限されないため、Clusterや物理ネットワーク境界の制約に縛られない、 柔軟で拡張性に優れたコンピュータリソースプールが作成出来ます。

4
VXLANの設定方法は、「ネットワーク仮想化 – VXLAN の設定1」、「ネットワーク仮想化 – VXLAN の設定2」をご参照下さい。


Edge Gateway

仮想アプライアンスとして展開したEdge Gatewayサーバーによって、L3-L7ネットワークサービスを提供します。提供される機能は以下になります。

  • ファイアウォール
  • ロードバランサー
  • VPN (IPsec、SSL)
  • ルーティング
  • NAT
  • DHCP
  • HA

例えば、テナント単位やIPセグメントの境界に導入します。

5


App Distributed Firewall

ハイパーバイザーレベルで動作するファイアウォールで、仮想マシンの仮想NICレベルでインバウンド、アウトバウンドのコネクションを制御します。vCenterのオブジェクトを使用して設定することが可能なため、管理と運用の効率化が可能になります。

6

App Distributed Firewallの実装例 は、テックペーパー「Secure Segmentation of Tier 1 Applications in the DMZ」をご参照下さい。


vCloud Ecosystem Framework

vCNSは、サードパーティ ソリューションを仮想環境にインテグレーションできるようにAPI を提供しています。これによって、vCNSでは提供されていないIPSやWAN最適化機能などのネットワークサービスを仮想ネットワーク環境へ導入することが出来ます。

7

 

■ vCNSのメリット

vCNSのこれらの機能は、仮想環境上で必要なときにいつでも簡単に作成することが出来ます。また、仮想マシンに関連付けて設定が行われるので、仮想マシンが物理サーバー間を移動したとしても、再設定を行う必要もありません。VMware vCloud Director や VMware vCloud Automation Center、vCenterといった管理ツールとシームレスに統合されているため、設定の自動化やUIの違いによる管理コストの増大も防ぐことが可能になります。

 

■ ライセンス、エディション

以前は個別ライセンスでも提供していましたが、現在はvCloud Suiteのコンポーネントとして提供しています。エディションもなくなり、全ての機能がvCloud Suiteの全エディションでご利用できます。
詳しくは、「vCloud Networking and Security の製品ページ(英語)」をご参照下さい。

 

■ VMware によるネットワーク仮想化の未来

VMwareがネットワーク仮想化を推進する理由は、ネットワーク仮想化がSoftware-Defined Data Center(SDDC)の重要な要素であるためです。そのため、vCNSはSDDCを実現するvCloud Suite のライセンスに組み込まれています。
また、VMware は昨年VMware NSX をリリースしました。こちらもネットワーク仮想化を実現するためのコンポーネントになりますが、vCNSよりも性能、拡張性、機能の向上が行われています。

今後のVMwareのネットワーク仮想化と、その先にあるSDDCの展開にご期待下さい!

 

「押さえておきたいvSphereの基本」

〜ストレージ編〜
1.マニュアル操作でストレージ環境を最適化
2.ストレージと連携してパフォーマンスを最大化
3.優先度の定義付けと自動化

〜ネットワーク編〜
1.ホスト単位でネットワークを構築する 〜標準スイッチ編〜
2.スケーラブルで高機能なネットワークを構築する 〜分散スイッチ編〜
3.仮想化環境でL3-L7 サービスを提供する 〜vCloud Networking and Security〜

〜可用性編〜
・物理リソースの有効活用と仮想マシンの最適配置〜DRSとリソースプール編〜
・システム障害に備える仕組み〜vSphere HAとFT編〜

ネットワーク仮想化 設計ガイドのレビュー その3

このBlogは、製品出荷前バイナリ及びマニュアルをベースに記載しています。出来る限り正確な情報をお伝えするよう努めておりますが、実際に製品に搭載される機能や表示と異なる可能性があります。あらかじめご了承の上、ご利用下さい。

今回は VXLAN を構成するESXi ホストが、異なるネットワークに 所属する場合について記載する予定でしたが
この間に VMworld 2013 が開催され VMware NSX について新しい発表されましたので、先にこちらに紹介したいと思います。

VMware NSX は、VMware のネットワーク仮想化の機能を担う革新的な製品です。

特に重要なのは、VXLAN を実装するにあたり、物理ネットワークで、マルチキャストの実装が必須でなくなった点です。
特定の相手だけと通信することが可能なマルチキャストはメリットがありますが、それを利用する物理ネットワーク全体に実装するには少々敷居が高い部分もありました。VMware NSX では、これを利用する側で選べるようになっており、マルチキャストモード、ユニキャストモード、混在させるハイブリットモードという柔軟な設計が可能になります。
また、これまで、なぜマルチキャストが必要なのかを考えることで、VMware NSX のマルチキャストフリーの実装を理解しやすくなります。

今回は、下図のネットワーク構成を例にマルチキャストが必要な理由について見ていきます。
VLAN10とVLAN20で分割され、ESXi ホストは L3 越えで接続されています。4つの ESXi ホストで、VXLAN5001、5002という2つの セグメントを構成しています。また、1つの VXLAN 上に存在する仮想マシンは、複数のホスト上に点在しているのが見てとれます。

この VXLAN セグメント内で、仮想マシン同士が初めて通信する時、目的の仮想マシンがどの ESXi ホスト上に存在しているかをマルチキャストを使って確認をしていました。VXLAN セグメント1つにつき、1つのマルチキャストアドレスがアサインされておりますので、通信相手がどこのホスト上にいるかは、このマルチキャストアドレスに問い合わせ(注1)をしていました。
また今回のようなネットワーク構成では、ESXi ホスト間のセグメントが分割されておりますので、ルーティングを担うネットワークデバイスで、マルチキャストルーティングが必要でした。
(注1)各仮想マシンが所属している ESXi ホストの Virtual Tunnel End Point(以降 は VTEP) がマルチキャストアドレスに問い合わせを実施

言い換えると、vCNS 5.1での VXLAN 実装は、仮想マシンがどの ESXi 上に存在しているか把握しておらずマルチキャストに依存していたということになります。
この点を改善し、どの ESXi ホスト上にどんな仮想マシンが所属しているかを、NSXコントローラーで、一元管理する実装にしました。
NSXコントローラーは、各 ESXi ホストへこの情報を伝達することで通信相手の ESXi ホストが特定でき、マルチキャストに頼らない VXLAN 実装が可能となりました。

下図は、VMware NSX for vSphere のコンポーネントを表しています。
赤枠のNSXコントローラは仮想マシンとして提供され、他にもMACアドレス、ARP、VTEP の情報を保持、伝達する役割を担います。

ネットワーク仮想化 – 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 日現在 )。

 

vSphere 5.5 の新機能紹介 ネットワーク2 (トラフィックのフィルタリングとマーキング)

このBlogは、製品出荷前バイナリ及びマニュアルをベースに記載しています。出来る限り正確な情報をお伝えするよう努めておりますが、実際に製品に搭載される機能や表示と異なる可能性があります。あらかじめご了承の上ご利用下さい。

今回は先日発表されましたVMware vSphere 5.5 で追加されたネットワークの新機能のなかから、トラフィックのフィルタリングとマーキングの概要をご紹介します。vSphere 5.5 では、分散仮想スイッチ(vDS)のポートグループレベルでトラフィックのフィルタリングとマーキング機能を実装します。フィルタリング機能は、物理スイッチのアクセスコントロールリスト(ACL)に相当するものとなり、パケットヘッダに基づいてトラフィックをコントロールしセキュリティを確保します。マーキング機能は、重要なトラフィックにタグ付けを行い、付与されたタグをもとに物理ネットワーク上でトラフィックを優先制御することで、End-to-End でサービス品質を確保します。

 

■特徴
・分散仮想スイッチ(vDS)のポートグループ単位で設定を行います。
・対象となるトラフィックを、MACアドレス、IPアドレス/プロトコルタイプ/ポート番号 、システムトラフィックから指定します。
・入力または出力、あるいはその両方をフィルタリング対象として選択します。
・マーキングでは、Differentiated Service Code Point (DSCP)、及び802.1p Class of Service (CoS)で定義されたタグを付与できます。
・仮想マシンにより近いポイントとなる分散仮想スイッチでフィルタリング及びマーキングを行うことで、End-to-End でのセキュリティとサービス品質を確保します。


なお、VXLAN 環境で付与されたDSCP タグは、オリジナルのIPヘッダからVXLAN でカプセル化した際に付加されるIPヘッダにコピーされるため、物理ネットワーク上でタグを認識し優先制御を実施することが可能です。


下記のキャプチャから、両方のIPヘッダ内にDSCP タグがセットされていることが確認できます。


■設定
「ネットワーク」で適用する「ポートグループ」を選択し、「管理」-「設定」-「ポリシー」画面で、「編集」を選択します。ポートグループの設定画面で、「トラフィックのフィルタリングとマーキング」を選択します。ステータスを有効にし、ルールを追加します。


フィルタリングを実施する場合は、「許可」もしくは「ドロップ」を選択します。マーキングを行う場合は、「タグ」を選択します。


タグを選択した場合、CoS もしくは、DSCP の値をセットします。


フィルタリングもしくはマーキングの対象となるトラフィックを指定します。


システムトラフィック、MACアドレス、IPアドレスの詳細を定義します。システムトラフィックでは、あらかじめ定義されたトラフィックを選択します。


以上、vSphere 5.5 のトラフィックのフィルタリングとマーキングの概要をご紹介いたしました。

vSphere 5.5 の新機能紹介 ネットワーク1 (ホストレベルのパケットキャプチャ)

このBlogは、製品出荷前バイナリ及びマニュアルをベースに記載しています。出来る限り正確な情報をお伝えするよう努めておりますが、実際に製品に搭載される機能や表示と異なる可能性があります。あらかじめご了承の上ご利用下さい。

今回は先日発表されましたVMware vSphere 5.5 で追加されたネットワークの新機能のなかから、ホストレベルのパケットキャプチャの概要をご紹介します。vSphere 5.5 では、ホストレベルのパケットキャプチャ機能を新たに実装します。この機能によりトラブルシューティング時に必要となるパケットキャプチャにより詳細なオプションが提供されます。

 

■特徴
・ESXi ホスト上で、CLI からpktcap-uw コマンドでパケットキャプチャを実施します。vSphere Client、Web Client からは使用できません。
・標準仮想スイッチ(vSS) 及び分散仮想スイッチ(vDS)上のトラフィックをキャプチャすることが可能です。
・Uplink, 仮想スイッチポート, vmk NIC で発生するトラフィックに対し、キャプチャするポイントを指定することが可能です。

 

■オペレーション
・ヘルプを表示
# pktcap-uw –help

・各種オプション
-p, –port <Socket PORT>  Specify the port number of vsocket server.
-o, –outfile <FILE>  Specify the file name to dump the packets. If unset, output to console by default
-P, –ng (only working with ‘-o’) Using the pcapng format to dump into the file.
–console (by default if without ‘-o’) Output the captured packet info to console.
-s, –snaplen <length> Only capture the first <length> packet buffer.
-c, –count <NUMBER> How many count packets to capture.
-h Print this help.
-A, –availpoints List all capture points supported.
-F List all dynamic capture point functions supported.
–capture <capture point> Specify the capture point. Use ‘-A’ to get the list. If not specified, will select the capture point by –dir and –stage setting

・ポートオプション
–switchport <port ID> (Specify the switch port by ID)
–lifID <lif ID> (Specify the logical interface id of VDR port)
–vmk <vmk NIC> (Specify the switch port by vmk NIC)
–uplink <vmnic> (Specify the switch port by vmnic)

–switchportを使用する場合、esxtopの n オプションで対象のポートIDを確認します。


・キャプチャポイント
pktcap-uw –A コマンドで、サポートされるキャプチャポイントを表示します。キャプチャポイントは、–capture で指定することができます。キャプチャポイントの中にはポートオプションの指定やキャプチャポイントオプションの指定が必須のものがあります。なお、Dropを指定することで、ESXi でドロップしたパケットを収集することが可能です。
# pktcap-uw -A
Supported capture points:
1: Dynamic — The dynamic inserted runtime capture point.
2: UplinkRcv — The function that receives packets from uplink dev
3: UplinkSnd — Function to Tx packets on uplink
4: Vmxnet3Tx — Function in vnic backend to Tx packets from guest
5: Vmxnet3Rx — Function in vnic backend to Rx packets to guest
6: PortInput — Port_Input function of any given port
7: IOChain — The virtual switch port iochain capture point.
8: EtherswitchDispath — Function that receives packets for switch
9: EtherswitchOutput — Function that sends out packets, from switch
10: PortOutput — Port_Output function of any given port
11: TcpipDispatch — Tcpip Dispatch function
12: PreDVFilter — The DVFIlter capture point
13: PostDVFilter — The DVFilter capture point
14: Drop — Dropped Packets capture point
15: VdrRxLeaf — The Leaf Rx IOChain for VDR
16: VdrTxLeaf — The Leaf Tx IOChain for VDR
17: VdrRxTerminal — Terminal Rx IOChain for VDR
18: VdrTxTerminal — Terminal Tx IOChain for VDR
19: PktFree — Packets freeing point

・キャプチャポイントオプション
Dynamic, IOChain, TcpipDispatch といったキャプチャポイントでは、パラメータを追加し対象を指定します。
-f [module name.]<function name> The function name. The Default module name is ‘vmkernel’. (for ‘Dynamic’, ‘IOChain’ and ‘TcpipDispatch’ capture points)
–dvfilter <filter name> Specify the dvfilter name for DVFilter related points

・キャプチャポイントの簡易選択
–capture でキャプチャポイントを指定しない場合、トラフィックの方向(送信もしくは受信)を–dirで指定し、キャプチャするポイントを–stage で指定することができます。これらのオプションは、–switchport, –vmk, –uplink といったポートオプションと合わせて使用します。なお1つのモニタセッションで、送受信両方向のトラフィックの取得はできません。
–dir <0|1> (for –switchport, –vmk, –uplink) The direction of flow: 0- Rx (Default), 1- Tx
–stage <0|1> (for –switchport, –vmk, –uplink, –dvfilter) The stage at which to capture: 0- Pre: before, 1- Post:After

–dir で指定する際、トラフィックは仮想スイッチを基点とした方向となります。そのため–dir 1 でTx(送信)を指定した場合でも、ポートオプションによってキャプチャできる通信の方向が異なります。例えばポートオプションで、–uplink を指定した場合はホストの外部に向かって出て行くトラフィックとなり、–switchport 及び–vmk を指定した場合は、外部から入ってくるトラフィックをキャプチャすることになります。



・フィルターオプション
フィルターを適用することで特定のトラフィックを収集できます。
–srcmac <xx:xx:xx:xx:xx> (The Ethernet source MAC address)
–dstmac <xx:xx:xx:xx:xx> (The Ethernet destination MAC address)
–mac <xx:xx:xx:xx:xx> (The Ethernet MAC address(src or dst))
–ethtype 0x<ETHTYPE> (The Ethernet type. HEX format)
–vlan <VLANID> (The Ethernet VLAN ID)
–srcip <x.x.x.x[/<range>]> (The source IP address)
–dstip <x.x.x.x[/<range>]> (The destination IP address)
–ip <x.x.x.x> (The IP address(src or dst))
–proto 0x<IPPROTYPE> (The IP protocol)
–srcport <SRCPORT> (The TCP source port)
–dstport <DSTPORT> (The TCP destination port)
–tcpport <PORT> (The TCP port(src or dst))
–vxlan <vxlan id> (The vxlan id of flow)

 

■実行例
それぞれ、vmk NIC、仮想スイッチのポート、Uplink で取得する例を以下に記載します。

1. vmk NICで取得
vmk1 から外部に送信(仮想スイッチから見ると受信)する60個のパケットをキャプチャしファイルに保存する例
# pktcap-uw –vmk vmk1 –dir 0 -c 60 -o test01.pcap

2. 仮想スイッチのポートで取得
仮想スイッチのポートで受信する宛先172.16.161.234のパケットをキャプチャしファイルに保存する例(Port ID XXXXXXXX は、esxtop のn オプションで確認を行います)
# pktcap-uw –switchport XXXXXXXX –dir 0 –dstip 172.16.161.234 -o test02.pcap

3. Uplink で取得
vmnic1 から外部に送信するVXLAN カプセル化前のパケットをキャプチャしファイルに保存する例
# pktcap-uw –uplink vmnic1 –dir 1 –stage 0 -o test03.pcap

4. Uplink で取得
vmnic1 から外部に送信するVXLAN カプセル化後のパケットをキャプチャしファイルに保存する例
# pktcap-uw –uplink vmnic1 –dir 1 –stage 1 -o test04.pcap

 

■キャプチャしたパケットの確認
キャプチャしたパケットをローカルにダウンロードし、WireShark 等のネットワークプロトコルアナライザで中身の確認を行うことができます。SCP 等でESXi からキャプチャしたファイルをダウンロードします。


ダウンロードしたファイルをWireShark で開きます。下記のケースでは、実行例3(Uplink で取得)でキャプチャしたICMP パケットが確認できます。


下記のケースでは、実行例4(Uplink で取得)でキャプチャした、VXLAN でカプセル化されたパケットが確認できます。VXLAN でカプセル化されたパケットの中身を確認する際は、WireShark で「Decode As」を選択し、UDP Destination port 8472 をVXLAN でデコードします。(vSphere 5.5 のVXLAN 実装では、デフォルトでUDP port 8472 を使用します)


VXLAN ヘッダーを認識し、カプセル化されたオリジナルのパケット(ICMP)を確認できるようになります。


以上、vSphere 5.5 のホストレベルのパケットキャプチャの概要をご紹介いたしました。

ネットワーク仮想化 設計ガイドのレビュー その2

VMware の 仮想ネットワークの最大のポイントは、一定の要件を満たせば既存のネットワーク上に実装することが可能な点です。既存のネットワークにどのような要件が必要か確認していきます。VXLAN そのものの解説については、こちらをご参照ください。

今回は、下図のような物理ネットワークに VXLAN を実装する場合を見ていきます。
この物理ネットワークは、コアスイッチ、リンクを束ねる役割のアグリゲーションスイッチ、ホストを接続する為のアクセススイッチからなる3階層の構成になっています。VXLAN を実装する4台のホストは、1つの L2 セグメント(VLAN 100) に接続されています。
この一般的な物理ネットワークのスイッチにどのような機能要件が必要か確認します。

スイッチの機能要件
1.MTU サイズが変更できること。
2.IGMP Snooping が使用できること。
3.IGMP クエリア が使用できること。

スイッチの機能要件で最も重要なのが、MTU サイズが変更できることになります。
通常の Ethernet フレームに VXLAN ヘッダが加算されるため、スイッチのポートでは、1550 bytes 以上 または、ジャンボフレームを設定します。VXLAN上で、IPv6 を利用する場合には、1600 bytes 以上にします。
VMware の VXLAN の実装では、DF bit が 1 にセットされており、VXLAN が IPフラグメンテーション(分断)されません。通常の Ethernet フレームの MTU サイズは、1500 bytes のため、MTU サイズを変更せずに VXLAN を流してもドロップされてしまいます。

<アクセススイッチ設定サンプル>
#MTU configuration
Switch-Router1# interface gigabitEthernet 1/1
Switch-Router1 (config-if)# mtu 1550
Switch-Router1 (config-if)# end

このようにホストが接続される物理スイッチの各ポートに MTU サイズの設定を行います。

<アクセススイッチ設定サンプル>
#IGMP snooping configuration
Switch-Router1 (config)# ip igmp snooping
Switch-Router1 (config)# end

初期状態で有効になっている場合がありますが、IGMP snooping の設定も必要です。

<アグリゲーションスイッチ設定サンプル>
#IGMP querier configuration
Switch-Router1# interface vlan 100
Switch-Router1 (config-if)# ip igmp snooping querier
Switch-Router1 (config-if)# end

この物理ネットワーク構成の場合は、アグリケーションスイッチが L2 と L3 の境界になっていますので
このスイッチの VLAN Interface に対して、IGMP クエリアの設定が必要になります。
この設定が必要な理由は以降で紹介しておりますが、少々難しい内容になってしまいますので、必要な方は参考にして頂ければと思います。

物理ネットワークのスイッチに必要な機能要件は以上になります。VMware のネットワーク仮想化は、それを実現する為に既存のネットワーク機器を買い替える事無く、その恩恵を得ることが可能となります。

今回は、VXLAN を構成する複数のホストが1つの L2 セグメントに存在するケースを見ていきました。
次回は VXLAN を構成するホストが、サブネットを跨いで存在する場合を見ていきます。

ここからは、IGMP Snooping と IGMP クエリアの機能が必要な理由を解説します。
VMware の VXLAN の実装では、VXLAN 上の未知の宛先に通信する場合にマルチキャストを利用します。
マルチキャスト !? とネットワークに詳しい方が聞くと PIM (Protocol Independent Multicast) を想像される方が多いかと思いますが、この例のように1つの L2 セグメントにホストが接続されている場合は不要です。

IGMP Snooping は、マルチキャストフレームを必要な物理ポートのみに転送するための物理スイッチの機能です。
IGMP クエリアは、マルチキャストフレームを利用する際に必要なマルチキャストルータの機能を L2 スイッチが代行する機能です。
IGMP Snooping が有効な L2 スイッチは、IGMP のやり取りがないと、マルチキャストフレームを転送する必要がないポートと判断し止めてしまいます。(注1)

注1)IGMP のやり取りが無いとは、「IGMP Query や Reportのやり取りがなく マルチキャストを転送する為のテーブルから情報が消えてしまう」という意味です。

この物理ネットワークのように、1つの L2 セグメント内(VLAN 100)で VXLAN を利用する場合は、IGMP Query を出す
マルチキャストルータが存在しないことになり、VTEP ( Virtual Tunnel EndPoint ) は、Report を返すことができません。その結果、注1の理由より、VTEP へのマルチキャストフレーム転送が止まってしまいます。
IGMP クエリアを設定することで、スイッチが代行して、IGMP Query を出すようになり、VTEP も定期的に IGMP Report を返すようになりますので、マルチキャストを転送する為のテーブルから情報がなくなることを防ぐことができます。

IGMP Snooping は スイッチの初期状態で有効になっている場合があり、VXLAN がうまく動かない原因になる可能性がありますので、忘れずに IGMP クエリアの設定をしましょう。

物理スイッチの設定方法や VXLAN の設定方法をさらに詳しく知りたい方は、VMware® VXLAN Deployment Guide をご参照ください。

ネットワーク仮想化 設計ガイドのレビュー その1

ネットワーク仮想化というキーワードを様々なメディアで見かけるようになってきました。なぜこれほど注目されているのでしょうか?理由は様々あるかと思いますが、ネットワークの世界では、この数年革新的なテクノロジーの変化がなく、問題を抱えたままそれを使い続けるしかありませんでした。

そんな中、ネットワーク仮想化 はこれまでのネットワークの問題点を解決する、実現可能なテクノロジーということで、注目が集まっています。

本ブログでは、VMware® Network Virtualization Design Guide(http://www.vmware.com/files/pdf/techpaper/Virtual-Network-Design-Guide.pdf)をベースに VMware が実現する ネットワーク仮想化 の世界を紹介していきます。

初回は、どなたでも読みやすいように VMware がネットワークの世界で何をしようとしているのか簡単に解説します。

VMware は CPU やメモリ等のコンピューティングリソースやストレージを抽象化し、仮想マシンという単位で利用することで
大幅な効率の向上と柔軟性を実現しました。

ネットワークについてはどうでしょうか? 仮想マシンが通信するには、仮想スイッチに仮想NICを接続で簡単に実現します。しかし、他のシステムと通信を行うには、物理ネットワークデバイスを中継してに出て行く必要があり、その設定(VLANの設定、アクセスリスト等)をそれぞれのコンソール(インターフェース)から手動設定しなければなりません。つまり、仮想マシンが通信する為に必要な機能が、様々な物理ネットワークデバイスで点在して実装されており、この点が仮想マシンの柔軟性を阻害していた最後の障壁でした。

VMware はこの点に着目し、物理ネットワークデバイス上で実装していた機能を仮想環境上で実装します。
例えば仮想マシンが所属する論理ネットワークを VXLAN という新しいテクノロジーで構成し、これまで物理ネットワークデバイスで作成していた論理ネットワークを仮想環境上で作成することが可能にです。
仮想マシンの通信制御をしていた Firewall 機能を仮想 Firewall として、必要な箇所に分散実装できます。
また、これらを事前に定義をしておけば自動的に機能追加することも可能になります。

下図はVMware がサーバを仮想化した同じアプローチで、ネットワークを仮想化しようとしているイメージ図です。

次回は、既存ネットワークに VXLAN を実装してみよう!について記載します。

ネットワーク仮想化 – 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つのサイズを提供しており、サイズを変更するオプションで、この仮想アプライアンスをスケールアップすることができます。また、複数の仮想アプライアンスを使うスケールアウト構成もできます。

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