ネットワーク上を流れるトラフィックをキャプチャして、その内容を分析したり、場合によってはトラブルシューティングに役立てたりといったことは比較的古くから行われてきた。
スイッチ装置が一般化した後も、例えばシスコのSwitched Port Analyzer(以降SPANと略記)機能に代表されるように、特定のトラフィックを専用に構成したポートにも転送し、SnifferなどのLANアナライザを用いてトラフィックの内容を分析するといった作業が行われてきた。
仮想化環境においても同様のことを行いたい場合がある。しかし、仮想化されたシステムでは仮想マシンと物理ネットワーク装置の間に仮想スイッチが介在するため、本質的に同等のことを行いたい場合は仮想スイッチがSPANに相当する機能を保有する必要があった。
vSphere 5ではPort Mirroringと呼ばれる機能が実装された。Port Mirroringを利用すると、ある仮想ポートの入力トラフィック、出力トラフィック、あるいはその両方のトラフィックを、別の仮想ポートもしくはアップリンクに対してミラーすることができる。ただし、このときの元となる仮想ポートとミラー先となる仮想ポートもしくはアップリンクは、同一ホスト上でなければならない。例えば仮想ポートから仮想ポートへのPort Mirroringを構成し仮想マシン上でトラフィックをキャプチャするような場合は、ソースポートに接続されている仮想マシンとターゲットポートに接続されている仮想マシンを同一のESXiホスト上に配置しておく必要がある。Port Mirroringを構成した後に仮想マシンの移行を行うこともできるが、その場合はPort Mirroringは機能しなくなる。
Port Mirroring機能は分散仮想スイッチ上においてのみ提供されている。構成は分散仮想スイッチの設定の編集画面より行う。
単一の分散仮想スイッチ上に、複数個のPort Mirroringセッションを構成することができる。セッションごとにポリシーを設定する。
各セッションごとに設定可能なポリシーには以下がある。
(1) 通常のI/Oを許可するかどうか
ターゲットとなるポート上で、ミラートラフィック以外の通常のトラフィックを許可するかどうかを設定する。この項目を選択しなかった場合、ターゲットポートはミラートラフィックの受け入れ専用として利用される。
(2) VLANによるカプセル化
ミラートラフィックをターゲットポート上でVLANによりカプセル化するかどうかを設定する。もしソースとなるパケットがVLANタグ情報を保有していた場合は、ここで指定したVLAN IDに置き換えてからターゲットポートにミラーする。
(3) ミラーパケットの最大長
このオプションを指定すると、ミラーされるイーサネットフレームの最大長が制限される。最大長を超えるフレームについてはそこで切断されたものがターゲットポートにミラーされる。調査したいプロトコルが明確になっている場合は、このオプションを用いて必要なトラフィックのみをミラーする。
ミラー処理を行うソース側には、分散仮想スイッチ上の仮想ポートを指定する。複数のソースポートを指定することもできる。またこのとき、入力トラフィックをミラーするのか、出力トラフィックをミラーするのか、あるいはその両方をミラーするのかを選択することができる。
ターゲットには仮想ポートもしくはアップリンクを指定することができる。こちらも複数個のポートを指定することができる。
ターゲットにアップリンクを用いる場合は、ターゲットとなるポート上で一般のI/Oを許可しないモードで構成されているか、もしくはミラートラフィックをターゲットポート上でVLANによるカプセル化を行うよう構成されている必要がある。
Port Mirroringは便利な機能であるが、以下のような制限事項があるため注意する。
先述の通り、パケットをキャプチャしてトラブルシューティングに利用するという方法は古くから行われてきたアプローチであり、仮想化環境でも同様のことを行いたいというリクエストが多く寄せられていた。vSphere 5のPort Mirroringを用いることでそのような状況に対応することができる。ミラートラフィックのキャプチャーには様々なソフトウェアや専用の装置を用いることができるため、ネットワーク管理者は使い慣れたツールを用いてミラートラフィックの収集や分析を行うことができる。
Network I/O Control(以降NIOCと略記)はvSphere 4.1で提供された機能である。各ネットワーク属性に対して「シェア値」を設け、送信時に帯域を取り合うような状況では送出トラフィックがそのシェア値の比率でバランスされるよう調整する仕組みである。
vSphere 5ではこのNIOCの一部の機能を拡張している。1つ目は仮想マシン単位でのポリシー適用である。vSphere 4.1ではvMotionトラフィック、iSCSIトラフィックなどと並ぶ管理単位の1つとして「仮想マシン」というリソースプールがあり、仮想マシンの一般的なトラフィックをひとまとめとして扱うことができるだけで、各仮想マシンごとにポリシーを設定することはできなかった。vSphere 5ではUser Defined Network Resource Poolという概念が導入され、利用者側でネットワークリソースプールを定義し、ポートグループもしくは仮想ポートをそこに所属させることができるようになった。これにより、よりきめ細かい資源管理を行うことができるようになった。
もう1つはIEEE 802.1pプライオリティタグのサポートである。こちらもUser Defined Network Resource Poolの構成の一部として構成する。ただし、vSphere 5ではこのプライオリティタグをフレームに「付与」する機能のみを実装しており、実際のQoS処理は物理ネットワーク装置側で行うということになる。ホスト側でのQoS制御を行いたい場合は従来の「シェア値」による資源管理を行う必要がある。
今回はネットワーク編ということで、vSphere 5で新規に提供されたネットワーク機能のうち、重要なものについて紹介した。次回はストレージに関する新機能について紹介する予定である。
Copyright © ITmedia, Inc. All Rights Reserved.