Fabric Extender (FEX) って?

再開第2週目…。はてさていつまで続けられるか…(^_^;)。

Ciscoが2008年にNexusシリーズを発表し、LAN/SAN統合スイッチであるNexus7000シリーズとNexus5000シリーズを提供し始めたとき、Nexus7000/5000と合わせて使用することができるNexus2000シリーズというFabric Extender (FEX)が何のために存在しているのか、私にはいまいちよくわかりませんでした。FEXとはいわばNexus7000/5000に対するリモートラインカード的なデバイスです。

最初は、Nexus7000/5000はハイスペックな分お値段もそれなりに張るし、まだまだ1Gbps接続で十分なサーバなども(その時点では)多数あるのでそれらをまとめて収容することができるようにするモジュールという様な位置づけかな、と思いました。しかし、単に1GbpsのEthernet接続が必要なのであればNexus5000の下にさらに1Gbpsインターフェイスを持ったCatalystなどのL2スイッチを配置すればいいわけなので、なぜわざわざ「単体では使用できず、スイッチング処理を含めた一切の処理をNexus7000/5000に依存する」FEXを提供するのか、それだけでは説明がつきません。

LANとSANを統合してFCoEに対応した点がNexusの特徴の1つであり、スペックも直接エンドノードを接続する用途に使うには少々過剰なバックプレーン性能を搭載していますが、Nexus7000/5000の下にEthernetスイッチとSANスイッチをぶら下げる構成でも事足りるのでは?と思ったわけです。

しかし、その後2009年にサーバラインナップであるUCS (Unified Computing Server)が登場し、FCoE/DCBアダプタの搭載をほぼ前提とした仕様を打ち出してNexusとまとめてデータセンターソリューションというひとまとめの位置づけに区分けされたことで、次第になぜFEXが必要なのかが見えてきました。平たく言えば、Nexusには物理的なモジュールシステムの形をしているNexus7000はありますが、それにとどまらずに物理的な限界に制約されない仮想的なモジュールシステムを志向している製品だ、ということです。Nexus7000/5000をSupervisorモジュール、FEXをラインカードとしてとらえればわかりやすいかもしれません(スイッチング処理すら依存しているという意味ではちょっと違いますが…)。

第1に、UCSのブレードモデルであるBシリーズにおいては、ブレードシャーシ(UCS 5108)における外部との接続モジュールとしてはFEXだけが提供されています。各社のブレードシャーシのように様々なLANスイッチやSANスイッチ、パススルーモジュールなどが提供されて組み合わせるのではなく、FEXのモデルだけが歴代 拡張・改善されながら提供されています。そのため、サーバからの通信は同一のブレードシャーシ内のサーバ間であっても他のブレードシャーシのサーバとの間であっても、Nexus7000/5000にぶら下がるNexus2000 FEXと同じように、スイッチング処理を上位に任せる構成となります。UCSのBシリーズは必ずFabric Interconnect (FI, UCS 6000 シリーズ)と呼ばれる、ざっくりいえばNexus5000にサーバ統合管理機能であるUCS Managerが統合されたモジュールの配下に配置される構成となります。このような構成とすることにより、ブレードシャーシの枠を超えてLAN/SANすべての通信を統合して構成・管理することができますし、サーバ構成をProfileとして管理するUCS Managerとも一元化されているため、通信とシステムの両面に対して集中的な管理を可能としています。

第2に、UCSの提供に合わせて専用のFCoE対応アダプタカードであるVirtual Interface Card (VIC)がリリースされ、物理的なFEXであるNexus2000シリーズにとどまらずにアダプタレベルでの統合管理を実現するAdapter-FEX、さらには仮想マシンにおける仮想アダプタレベルにまで統合管理の範囲を広げるVM-FEXへと、FEXの仕組みを使って拡張される範囲が広げられていった点です(Adapter-FEXとVM-FEXについては、また改めておいおい…)。FEX / Adapter-FEX / VM-FEX がNexusによって統合的に管理できれば、物理サーバであっても仮想サーバであっても、ネットワークに関する構成はすべてネットワークの一部として一元的に管理することができます。

ラックマウントサーバとブレードサーバが混在し、さらには物理サーバと仮想サーバが混在しているという昨今よくあるインフラ環境構成において、いかにシンプルにネットワークとサーバをそれぞれ明確に管理するのか。FEXはネットワークの管理点を統合しつつ接続点を環境にあわせて柔軟に分離する仕組みとして、有効な方法だと思います。