OpenStackの効率化、安定化に「ストレージ」ができること大規模OpenStack環境を考えるなら?

クラウド基盤であるOpenStackを導入すれば、使いたいときに使いたいだけの環境が手に入る。しかし企業が使うからには、安全で高性能な環境が求められるはずだ。ネットアップは「ストレージ」の観点から、OpenStackの大規模運用を実現するための課題解決手法を提案する。

» 2014年12月01日 10時00分 公開
[PR/@IT]
PR
ネットアップ ソリューション技術本部 インダストリーSE部 システムズエンジニア 片野昭博氏

 2014年10月、@IT主催セミナー「OpenStack超解説 〜OpenStackは企業で使えるか〜」が開催された。導入の検討が本格的に進む「OpenStack」を利用する上で知っておくべきノウハウや問題解決手段が紹介される中、ネットアップはOpenStackの運用において“実はストレージでできることがたくさんある”ことをアピールしていた。

 今回は同セミナーで開催された「実はここまで出来る! OpenStackのストレージサービス連携」の講師、ネットアップ ソリューション技術本部 インダストリーSE部 システムズエンジニアの片野昭博氏に「ストレージにできること」をさらに深掘りすべく話を聞いた。

ネットアップとOpenStackで作る「どこにも縛られず」「大規模でも安定」なクラウド

 ネットアップはさまざまなクラウド環境に最適なストレージ基盤を取り扱っているベンダーだ。実はネットアップはOpenStackとも歴史が深い。2011年3月にはネットアップとしてOpenStackのインテグレーションをアナウンスしており、Cinderが独立した「Folsom」からは、NetApp接続のためのドライバーを本格的に提供している。それからわずか3年でOpenStackが大きく進化してきたのはご存じのことだろう。

 企業がOSSソリューションを選択する理由、それは例えば「ベンダーロックインの排除」だったり、「コストの削減」「最新技術の導入」などの理由があるだろう。特にプライベートクラウドを検討するとき、OpenStackは魅力的だ。クラウドを構成する要素は多く、特定のベンダーに依存するとそこから逃れることは難しい。柔軟でかつ運用しやすいクラウドを作るためには、OSSにコミットし、その利点、欠点を熟知している製品、そしてパートナーが求められる。

自由に環境が作れるOpenStack——制御や管理、できていますか?

 プライベートクラウドでは業務プロセスに合わせ柔軟なインフラ基盤を、即座に、安定的に提供する必要がある。セルフサービスのポータルが用意され、いつでも自由に、好きなだけ必要な環境が用意できるというのが、すぐに想像できるOpenStack環境の姿だ。

 しかし、自由という言葉の裏にある、運用時の「制御」も忘れてはならない。当然ながら、クラウド環境を作る目的は柔軟なインフラ提供だけでなく、「管理コストの低減」が求められる。セルフサービスポータルで自由にインスタンスを追加できるということは、それを「管理」する必要がある。具体的には、インスタンス追加に伴うデータ生成の作業コストやIOの増大、さらにはバックアップやテンプレートのアップロードなどで、クラウド基盤の管理者が制御しづらい、大量のトラフィックが発生する。OpenStack環境を作ってみたものの、このような管理コストが増大して困っているという企業もあるだろう。実はここに「ストレージ」が活躍できる余地がある。

図1 セルフサービスポータル環境を提供すると、制御、予測が難しくなる。その理由は「データ生成」だ(「実はここまで出来る! OpenStackのストレージサービス連携」資料より)

 ネットアップは、クラウド基盤ソリューションを「ストレージ」からアプローチし、それに伴う課題を解決する手法を提供してきた。特に、「プロビジョニングの高速化、効率化」「バックアップの運用」「トラフィックの軽減」など、大規模運用時には無視できない問題を、ストレージが解決できるのだ。

パフォーマンスやトラフィック制御は「ストレージ連携」で解決できる!

 では、クラウド基盤ソリューションにおいて、ストレージができることとは何だろうか。まずはOpenStack環境における「ストレージ」を整理しよう。

OpenStack環境では、オブジェクトストレージである「Swift」、ブロックストレージ「Cinder」、そしてイメージサービスである「Glance」などがストレージに関係する。テンプレートのイメージをアップロードするときにはGlanceへのデータ生成が発生するし、インスタンスを追加するときにはGlanceからCinderへの大きなトラフィックが、生成しようとするインスタンスの数だけ発生する。当然、生成したインスタンスをバックアップする必要もあるので、その数だけバックアップのトラフィックが発生する。数個のVMだけなら顕在化しないが、大規模運用を行ったときに、この問題は避けて通れない。

 ネットアップの「ストレージ」によるアプローチは、このセルフサービスポータルで実行される行動を、なるべく「データを生成せずにストレージ連携で解決する」ことでトラフィックを極小化し、運用管理者にも利用者にもストレスフリーな環境を提供することだ。その具体的な方法を紹介しよう。

インスタンスのプロビジョニングは「論理複製」で瞬時に

 インフラの負荷を低減、かつ可用性を向上するには、ネットアップのストレージOS「clustered Data ONTAP」が有効だ。インスタンスのプロビジョニング時にGlanceからCinderへイメージをフルコピーする従来の手法では、生成するインスタンスの数だけ時間も容量も必要になる。clustered Data ONTAPが持つ「FlexClone」技術を使うと、差分のみ、ポインターのみの論理複製を行う。これにより瞬時に、最小容量だけで効率よく生成が可能だ。

 しかも、clustered Data ONTAPであれば、iSCSIでのCinder利用に加え、運用利便性の高いNFSを利用することが可能だ。特にOpenStackの大規模環境ではLUN数の制限がないこともあり、NFSの利点になる。後述するネットアップのストレージを使った大規模運用事例でも、CinderにNFSを採用しており実績も問題ない。これにより、運用コストも抑えられるのが特徴だ。

バックアップはスナップショットで「性能劣化なく」実行

 通常、スナップショットを使ってバックアップを取得しようとすると、イメージを丸ごとコピーするか、CinderボリュームをLVMスナップショットで取得するなどの方法を取る。イメージを丸ごとコピーする方法は、時間も容量も消費する。OS標準のLVMによるスナップショットは瞬時に複製可能で、差分のみの処理で完了できるが、スナップショットを取得するたびにIO性能が大きく劣化するという問題がある。さまざまなテナントでバックアップが実行される大規模環境での利用は、現実的ではない。

 この点でもFlexClone技術は有効だ。ネットアップが提供するCinderドライバーを利用することで、LVMスナップショットと同様、瞬時に、差分のみでバックアップが可能な上に、性能の劣化もない。これも、ストレージが問題を解決できるという好例だ。

データ転送はストレージに任せて「ネットワーク負荷低減」

 OpenStack環境において、予測がしづらいのはIO負荷だ。データコピー時にネットワーク負荷、ホスト負荷も無視できず、自由にインスタンス作成ができるという利点と相反するリスクがあるといえる。

 これも実は、ストレージが解決手段の一つになる。ネットアップのソリューションは、ストレージへの「オフロード」だ。イメージからボリュームを作るなど、ホスト間のデータコピー作業をストレージ側に任せてしまうことにより、ホストの負荷、ネットワーク負荷を低減することができる。大きなトラフィックはストレージ内で完結させるというアプローチだ。

システム側都合の計画停止を限りなく「ゼロ」に

 そして最も大きな利点、それは「計画停止を排除できる」ことだ。

 計画停止の理由はさまざまで、ストレージの拡張や障害、更新作業、リフレッシュ、ファームウェア更新などがある。これまで運用管理者が苦労してテストし計画を立て、関係各所やお客様に説明、説得してきたことだろう。ネットアップのストレージは、これら「計画停止」を引き起こすような作業を、サービスを停止することなく行うことができるよう設計されている。この点が多くの企業に評価され、OpenStack環境の大規模運用を行うシステムにおいて、ネットアップのストレージが採用されている。

図2 ストレージでデータ転送をオフロードし、高速なデータコピー環境を作ればネットワーク/ホストの負荷を軽減できる(「実はここまで出来る! OpenStackのストレージサービス連携」資料より)

ヤフーは大規模環境でもOpenStackを問題なく運用

 その一例が「ヤフー」の導入事例だ。日本最大級のポータルサイト「Yahoo! Japan」を運営するヤフーは、アプリケーション開発向けのプライベートクラウドを2009年から運用しており、サービスの急成長に伴い、2014年にはクラウド基盤をOpenStackに刷新した。

 このとき重要視されたのが、クラウド基盤の「無停止運用」だ。ストレージコントローラを冗長化した複数ノード構成のNetApp FAS3220AEを組み合わせたシステムが組まれ、2014年度中にはこの基盤の上に5万台の仮想マシンが稼働することを想定しているとのことだ。

図3 ヤフーでのシステム構成(「実はここまで出来る! OpenStackのストレージサービス連携」資料より)

OpenStackの企業活用は本格化する——そのときにストレージができること

 OpenStackを活用することで、企業内・外へのサービス提供が効率化、迅速化するだけでなく、オープンソースの利点である「さまざまな選択肢」の中から、柔軟な環境を作ることが可能だ。そのOpenStack基盤を効率化、安定化させるためには、実は「ストレージの活用」こそが重要になる。ストレージでできることを追究したのが、ネットアップのストレージ製品と技術だ。

 ネットアップでは、ブロックストレージのためのCinderを拡張する、コードネーム「Manila」(マニラ)と呼ばれる共有ファイルシステムサービスプロジェクトに深く参画しており、OpenStackのさらなる展開にもコミットしている。新たにOpenStackを導入する企業に対しては、ネットアップのclustered Data ONTAPとシスコのCisco Unified Computing Systemを組み合わせたリファンレンスアーキテクチャ「FlexPodソリューション」も提供している。検証済みの組み合わせをベストオブブリードとしてすぐに導入できる仕組みも用意した。「ストレージができること」をすぐに体感したいのならば、ぜひ導入を検討してほしい。

Copyright © ITmedia, Inc. All Rights Reserved.


提供:ネットアップ株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2014年12月31日

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。