このたび、カリフォルニア州サンノゼで開催される Open Compute Project (OCP) U.S.Summit 2018 にて、「Project Denali」という次世代のソリッド ステート ドライブ (SSD) ストレージの仕様について講演します。また、これまでのサーバー ハードウェアにはなかった、プラットフォーム ファームウェア攻撃に対する保護、検出、回復などを実現する重要なセキュリティ コンポーネントの仕様を定めた「Project Cerberus」についてもお話しします。ハードウェア改革における次の目標とされるのがストレージとセキュリティです。今回の記事では、業界を成長させてクラウドの未来を拓くこの重要分野の最新情報をご紹介します。
クラウド SSD ストレージの新しい標準
オンプレミス システムでは、ストレージはパフォーマンスを左右する重要コンポーネントとされていますが、クラウド ベースのモデルにおいてはパフォーマンスやコスト効率の向上にそれほど貢献できていないのが実情です。そこで、マイクロソフトは CNEX Labs と共同で、主にクラウド ベースのワークロードにおけるフラッシュ ストレージの新しい標準を定義する「Project Denali」を開始しました。この取り組みでは、主にソフトウェア定義のデータ レイアウトとメディア管理の機能を分割して、SSD ファームウェア インターフェイスを標準化します。これにより、クラウド規模で大幅にパフォーマンスを向上させると同時にコストを削減できるようになります。
Project Denali は、標準インターフェイスにおけるホストの役割と SSD の役割を定義する、オープン チャネルの標準化および推進プロジェクトです。メディア管理、エラー修正、不良ブロックのマッピングなどのフラッシュ ストレージ特有の機能はデバイスに搭載したまま、ランダムな書き込みの受け取り、シーケンシャルな書き込みストリームの伝送、アドレス マップの保持、ガベージ コレクションの実行などをホスト側で行います。さらに、ホスト側での FPGA やマイクロコントローラーのサポートを可能にします。
これにより、完全にクラウド ファーストのアーキテクチャ フレームワークを実現できるようになります。モジュール形式のアーキテクチャによって不揮発性メディア (NAND とストレージ クラス メモリ) を普及させると共に、アプリケーションと SSD デバイスをさらに密に統合してワークロードのパフォーマンスを向上させます。 また、ソフトウェアで定義された SSD 上のデータ配置を使用してモデルを定義して、旧来の画一的なストレージ モデルの要素を分割します。データ配置の管理を NAND 管理アルゴリズムから分離することで、不揮発性ストレージ メディア自体を自在に進化させられるようになります。これによりハードウェア メーカーでは、以前よりもシンプルなハードウェアを構築しコストや市場投入にかかる時間を削減して、ワークロードに応じたチューニングのほか、新しい NAND やメモリ テクノロジの開発などが可能になります。
このプロジェクトが成熟し、さらに多くのエコシステム パートナーに賛同いただければ、Project Denali で定めた標準を業界に寄贈してさらなる普及を進めたいと考えています。
ハードウェアのセキュリティを強化
Microsoft Azure は、クラウドにおける最先端のセキュリティ機能とプライバシー機能を備えています。マイクロソフトは、サイバー セキュリティに年間 10 億ドルを投資し、Microsoft Azure のクラウド プラットフォームの高い信頼性を維持するために、基礎的な改良を継続的に行っており、ハードウェア セキュリティの業界標準の必要性も強く認識しています。プラットフォームのセキュリティに関するオープンな業界標準を定めるためにマイクロソフトが進めてきたのが、Project Cerberus です。
Project Cerberus は、コンピューティング プラットフォーム上のあらゆるハードウェア デバイスの信頼のルートを確立する、セキュリティ コプロセッサです。プラットフォーム ファームウェアを以下のような脅威から保護します。
- 管理者権限またはハードウェアへのアクセス権限を持つ悪意のある内部ユーザー
- オペレーティング システムやアプリケーション、ハイパーバイザーの不具合を悪用するハッカーやマルウェア
- サプライ チェーンへの攻撃 (製造、組み立て、輸送)
- ファームウェアのバイナリの感染
Project Cerberus は、暗号化マイクロコントローラーで安全なコードを実行し、ホストから (ファームウェアが保存されている) SPI 経由のフラッシュへのアクセスを捕らえます。さらに、継続的な測定と証明によってファームウェアの整合性を確認し、不正アクセスや不審な更新から保護します。これにより、システム内のすべてのファームウェア コンポーネントについて、プリブートからブート時やランタイムまでの整合性を確保することができます。
CPU や I/O のアーキテクチャに依存しない仕様は、さまざまなベンダーの設計に簡単に統合できるため、データセンターから IoT デバイスまで、あらゆる種類のプラットフォームにさらに安全にファームウェアを実装することができます。また、この仕様は階層構造の信頼のルートにも対応しており、プラットフォームのセキュリティを同じアーキテクチャ原則に基づくすべての I/O 周辺機器に拡張することが可能です。
2017 年の Project Cerberus 開始以来、このエコシステムは成長を続けています。さらなる協力範囲の拡大と普及に向けて、近いうちにこれを寄贈しハードウェアの実装を実現させる予定です。
マイクロソフトは、2015 年より、Microsoft Azure のサーバーとデータセンターの設計を OCP コミュニティと共有しており、データセンターのパフォーマンス、効率、消費電力の改善に貢献する最新技術の活用を推進しています。
現在進められている取り組みの詳細については、このリンクをご覧ください。また、Project Denali の技術詳細については、このブログをお読みください。