これまで11回にわたり、フラッシュメモリの基本的な構造からサーバーおよびストレージでの使われ方、接続するバスの種類、DAS/SAN/NASなどのストレージ製品、新たなサーバーおよびストレージの形態としてのハイパーコンバージドインフラストラクチャやオールフラッシュストレージなど、フラッシュメモリを活用したストレージについて概観してきました。また、フラッシュメモリをエンタープライズストレージとして利用するにあたって知っておくべき技術や機能について紹介しました。
最後に、これまでの連載を振り返って「企業が求めるフラッシュストレージ」の要点を再確認したうえで、これからのフラッシュストレージについて解説します。
フラッシュメモリに適したストレージOSが必要
NANDフラッシュメモリの低価格化・大容量化により、企業が求める高速で信頼性の高いストレージには、フラッシュメモリが多く使われるようになりました。ただしその場合、単に従来のハードディスクの代替として捉えるのではなく、フラッシュメモリが使われる前提で設計されたストレージを選択する必要があります。
フラッシュメモリはその特性上、書き込み回数に限界があります。そのため、フラッシュメモリをストレージとして使用する際には、その書き込み回数の限界を伸ばす工夫が必要です。具体的には、ブロック単位で書き込みを行うこと、書き込む位置が偏らないように分散させることなど、これまでのハードディスクには必要のなかった処理を行います。書き込み時にNVRAMやNVDIMMなどの大容量Writeキャッシュを利用し、書き込む回数を減らす製品もあります。
また、万が一の障害が発生した場合のデータ消失を防ぐため、システムを二重化し、NVRAMやNVDIMMを冗長化させたコントローラ間で同期させ、電源断やコントローラの故障時もデータが消失しないよう工夫がなされている製品もあります。このような冗長化は、ハードディスクの時代から外部接続型のストレージに実装されてきた仕組みのひとつですが、x86サーバーをソフトウェアだけでストレージとするハイパーコンバージドインフラストラクチャや、ソフトウェアデファインドストレージで実現するのは困難です。
仮想化やビッグデータに対応できるストレージ
仮想化が進み、仮想マシンが物理サーバー上において数百台という単位で稼働する状況下では、ストレージのハードウェアは単にサーバーから送られる入出力命令を処理するだけでなく、数々のハイレベルな処理を同時に行う必要があります。たとえば、ポリシーや役割(ロール)ベースのアクセス制御、シンプロビジョニングにおける必要な増分容量の割り当て、仮想マシン単位でのQoSの提供など、単なるストレージではなくよりインテリジェントなストレージサーバーとして自律的に稼働することが求められています。そのため、こうした高度な機能を持つストレージを選択する必要があります。
次に考えなければいけないポイントは、現代のストレージは過去のようなデータベースを保存しておくためだけの入れ物ではないということです。かつては勘定系システム、情報系システムに区別され、勘定系ではリレーショナルデータベースに最適なストレージ、情報系ではファイルサーバーに適したストレージを利用していました。
しかし、ビジネスそのものがデジタル化された今、スマートフォンをはじめとする様々なデバイスからのアクセスやB to Cに代表されるWebからの不特定多数の利用者が急速に増加しています。そして、ビッグデータとして話題になっている大量なセンサーデータやログデータの活用など、これまでの想定可能な定形データだけでなく未知の非定型データを活用することが、ビジネスの革新につながると考えられています。
このようなシステムを支えるストレージは、大量のデータを高い信頼性をもって維持すること、そして瞬時に増大するアクセスに対応できる拡張性が必要です。さらに、仮想デスクトップのように多数のOSイメージを効率良く展開し、保存して高速に読み出すための仕組みをストレージが備えていることも重要です。
未来を予測する管理機能
管理機能も非常に重要です。仮想マシン、コンテナ、ビッグデータや仮想化デスクトップなど、企業のコンピューティング環境は常に変化しています。これらのニーズを汲み取りつつ、できるだけ簡単にストレージを管理するためには、充実した管理ツールが必要です。ストレージの設定変更だけではなく、障害時の再構成やリカバリー時の操作、インフラの自動化/コード化など、システム担当者の負担を減らしながら省力化に向けて支援する管理ツールを装備したストレージが最適な解決と言えるでしょう。また、「これから半年後にこのアプリケーションが利用するストレージはどうなるのか」、「仮想デスクトップを3ヶ月後に300台増やした場合、何かストレージに変化はあるか」といったシミュレーションに、担当者の勘や経験ではなく適切なデータをもとに予測する機能、いわばビッグデータ解析もこれからは活用していきたいところです。
会話するストレージ? スマートフォンでのストレージ管理を可能にする「ChatOps」
ここでひとつ、最新の管理機能についてご紹介したいものがあります。「DevOps」という言葉がよく聞かれるようになりました。DevOpsは、開発(Development)と運用(Operations)が協力し合い、ソフトウェアの開発・運用サイクルをスピードアップする手法で、NetflixやAmazonなどの開発とデプロイを高速化したとして大きく注目されています。JenkinsやConcourseなどの自動化ツールがそれを推進する大きな役割を果たしています。
対して「ChatOps」は、おもに運用側の手法として、Slackなどのチャットツール(Chat)を介してシステム運用(Ops)を行うことを指します。つまり、管理者同士がチャットを行うのと同様に管理ツールと対話し、ツールの管理を進める手法です。ChatOpsの利点として、管理者が慣れたツールを使えること、スマートフォンなどからも操作が行えること、操作の履歴が残ること、グループでチャットを共有することで運用の可視化が行えることなどが挙げられます。
日本のインターネット広告企業であるアドウェイズは、Tintriストレージの運用にChatOpsを利用しています。同社では、スマートフォンからSlackを通じてTintriのAPIを活用し、運用担当者が少人数でもTintri VMstoreを管理できるようになり、運用のレベルが向上したといいます。
Tintri VMstoreは、仮想マシン単位に様々な情報を取得できること、クローンやスナップショットやQoSなど、柔軟に仮想マシンに設定を投入できること、それらに対するAPIを持っている特徴を応用し、「会話できるフラッシュストレージ」として、ChatOps対応を推し進めています。
ソフトウェアオリエンテッドなストレージ活用の注意点
ソフトウェアを売り物にしているわけではないFacebookやGoogleが、オープンソースソフトウェアを活用しITインフラにイノベーションを起こしています。プライベートクラウドを実現するOpenStackなどもエンタープライズで浸透しはじめています。
オープンソースソフトウェアは、エンドユーザーにソフトウェアやハードウェアを選択する自由を与えました。結果として、コミュニティの力をもとに革新的なソフトウェアが開発・公開され、世界中に共有されています。こうしたオープンソースソフトウェアを使えば、安価なx86サーバーを使ってSDSを実現することはそれほど難しくありません。ストレージ業界のベテランであるEMC(現Dell Technologies)ですら、オープンソースのストレージソフトウェアを公開しています。
ただし企業において、オープンソースソフトウェアだけを使い、ストレージをはじめとするインフラストラクチャーを構築・維持するのは大きな覚悟と労力が必要です。具体的には、オープンソースソフトウェアの更新と修正を常に追いかけ、重大なセキュリティパッチは即座に適用、自社で発生したバグについて同じようなものがないかを調べ、前例がなければ報告・修正するといった作業が必要になります。これを自社のエンジニアのみで行えるのは、ある程度の規模の開発運用チームを持つ企業だけでしょう。
さいごに
フラッシュメモリは、1980年代に当時東芝に在籍していた舛岡富士雄氏が発明した日本発のテクノロジーです。その発明から30年余が経過した現在では、3次元NANDフラッシュメモリのセルをより積層させる技術やTLCを超える多項化技術(QLC)、シリコンダイをより積層させるTSV(シリコン貫通電極)技術、NVMeのデュアルポート化などが実現され、フラッシュメモリに関するテクノロジーは発展の一途をたどっています。昨今のデータ容量の爆発的な増加やスマートフォンの世界的な普及に伴い、供給が追いつかないほどにNAND型フラッシュメモリの需要が増加していると言われています。
NAND型フラッシュメモリを使ったデータセンター向けフラッシュストレージの普及が進む今、フラッシュストレージを提案する際および導入を検討する際には、NANDフラッシュメモリおよび上位のアプリケーション、運用管理の進化に対応できるフラッシュストレージを選定し、無駄なく上手に活用していただきたいと思います。
[PR]提供:Tintri