技術コラム

最新技術動向
Liqid

第3回 コンポーザブル・インフラストラクチャとは? – PCIe expansion chassisでリソースプールを実現

第3回 コンポーザブル・インフラストラクチャとは? – PCIe expansion chassisでリソースプールを実現


第1回 コンポーザブル・インフラストラクチャとは?
第2回 コンポーザブル・インフラストラクチャとは?-コンポーザブル・ストレージ
に続いて”コンポーザブル・インフラストラクチャとは?”についての3回目のポストです。

 

前回の2回目ではストレージ(NVMe SSD)だけをプール化するNVMe-oF技術によるコンポーザブル・ストレージを紹介しました。

 

Liqidコンポーザブル・インフラストラクチャではストレージだけでなくNICGPUFPGA などの PCIe デバイスをServerから分離してリソースプール化することができます。
任意のPCIeデバイスとコンピュートノードは専用のドライバやインタフェースのプロトコル変換なくPCIe スイッチ経由で接続され、ベアメタル・サーバを構築することができます。

 

今回はまず、その構成要素としてPCIe expansion chassisを紹介したいと思います。
PCIeベースの外付け拡張Boxという方がわかりやすいかも?

 

PCIeデバイスをServer本体から離れた別の筐体のPCIe expansion chassisに実装して運用するというのはあまり見なれないかもしれません。

 

しかし、実はそれほど珍しいものではなく見えないところで使われています。

 

例として、多くの2U24bay NVMe SSD オール・フラッシュ・サーバーでは24台の2.5″サイズ NVMe SSD(U.2)とMB(マザーボード)を接続するPCIeのレーン数が不足します。

 

そのため、それらは内部でPCIe switchを通じて本体のマザーボードのPCIeインタフェースにケーブルで接続されています。

 

同一の筐体の中に含まれていますが、MBからは分離されてPCIeインタフェースで延長接続されています。
このケーブルとNVMe SSDが筐体の外に出されて別の筐体に接続されたPCIe接続のJBOFJust a bunch of Flash)をイメージするとわかりやすいかと思います。

 

ホストにはPCIe expansion chassisと接続するためのPCIeインタフェースが必要となります。
これはPCIeスロットにスイッチベースのHIBHost Interface Board)カードを実装するだけで実現できます。(PCIeスイッチICが実装されたカードです。)

 

     HIB
PCIeのアドインカードが実装できるPCIe expansion chassisの例としてOne Stop Systems社の製品ががよく知られていると思います。
製品によっては2スロットを占有するGPUカードを3U筐体に16枚も実装できる製品もあります。

 

PC本体にGPUカードが実装できない、もしくは複数のGPUカードを実装したい、という場合にPCIe expansion chassisを利用して接続できると、高価な一体型のGPUServerソリューションを選ばなくてもよくなりますね。

 

ホストのHIBHost Interface Board)とPCIe expansion chassisをケーブルで接続、PCIeデバイスを expansion chassisに実装すれば、GPUだけでなく、多くのPCIeデバイスを追加・拡張することができます。

 

Liqidコンポーザブル・インフラストラクチャではこれをリソースのプール化に使用しています。
ExpansionChassis
PCIe expansion chassisに実装されたPCIeデバイスはホストからはMB上にあるローカルのPCIeデバイス同じように見えます。そのため、ローカルのPCIeデバイスと同様、デバイスドライバ以外の専用のソフトウェアなどは必要ありません。

 

また、PCIeエンドポイントデバイス同士のP2Pの機能(例: SSD-to-GPUダイレクト, GPU-to-GPUダイレクト)を使用すればCPUの介在なしにスイッチ内で互いのデバイス同士がデーターの受け渡しを高速に実行することができます。

 

Serverだけでなく、デスクトップやノートブックでもCADや映像アプリケーションを実行するためにGPUや高速なネットワークデバイスの追加を求められる場合、PCIe接続もしくは Thunderbolt 経由で接続される小さな expansion chassisでそれを実現することができます。

 

むしろ、こちらの方がイメージしやすいかもしれませんね。

 

** ノートPCの場合はPCIeインタフェースを外に出すことができませんので例としてThunderboltなどが使われます。(PCIe からThunderboltにインタフェースを変換することになりますが….)

 


今回紹介したPCIe expansion chassisでServerから分離されたPCIeデバイスをプール化できることが理解できたと思います。しかし、これだけではコンポーザブル・インフラストラクチャのダイナミックコンフィギュレーションを実現できません。

 

次回はPCIe expansion chassisでプール化されたデバイスとコンピュートノードをLiqidののPCIeスイッチで接続してさらに、Liqid オーケストレーションソフトウェアを使ってそれぞれのデバイスを必要なだけコンピュートノードに組み合わせ、ベアメタルサーバーを瞬時に構築できるLiqidコンポーザブル・インフラストラクチャを紹介します。

 

(続く)