お試し NetApp OpenStack Deployment -8

相当ご無沙汰してしまいました。

理由は、ご覧の通り本サイトそのものの改良工事が入ったためです。そのため、以前の記事が見難くなっている部分があるかとおもいます。いくつか直してみましたが、もはや途中で諦めたので、わかりずらい、不明点等があればコメント等ください。そこでフォローしていきたいと思います。なお、秋はイベントシーズンでもありましたのでこの空白の期間で各社ベンダー様のイベントやお客様へ講演するためにシコシコと作った資料もありますので、それらも使って今後展開していきたいとおもいます。

 

さて、今回は予告していたNovaでのインテグレーションです。

NetAppのFASやE-Seriesと連携させているのは、OpenStackのBlock Storage Service であるCinderに含まれるバックエンドドライバ「NetApp Unified Driver」なので直接Novaにどうこうしているものではありません。ここでは小さい部分ではありますが構成の形として、こうすると幸せになれるという話になります。

 

まずNovaそのものの話。

 

役割としてはざっくりというと、「仮想マシンの決定、起動・停止」を行ってます。

 

nova01.jpg

 

インスタンス(仮想マシン)を起動するためには、まずそのOSのテンプレートイメージが管理されているGlanceの格納領域から、そのデータをNovaが稼働するホストにロードします。一度ロードされるとそのホストはキャッシュとしてそのイメージを保持しておきますが、規模がそれなりになるとNovaホストは複数になるためそれぞれにロード・保持というような処理が行われることになります。それなりに無駄処理がここにあるわけです。ロードする時間、帯域の消費、保存する場所の消費などです。

 

ここにNetApp FASを適用します。

 

novaonntap.jpg

 

Nova上でイメージがロードされる場所をNetApp FASのエクスポート上にしてしまえばいいわけです。これにより、ロードは1度、消費もその分だけでその後のインスタンス展開もすみやかに行えます。当然FlexVol上なので圧縮、重複排除、またSnapshot技術によるデータ保護の恩恵なども受けることができます。さらに、インスタンスをNova間でマイグレーションするための条件の1つも満たすことができるため運用の柔軟性もあげることができます。

 

ここから、その具体的な話をします。

 

Novaではインスタンス起動のリクエストがかかると、イメージからの起動を行った場合はデフォルトでGlanceからのテンプレートイメージをNovaっ上の「 /var/lib/nova/instance」以下に配置します。同階層の「_base」ディレクトリにはそのテンプレートイメージのrawスパースファイルがキャッシュイメージとして保存されます。それをベースとした差分のファイルをqcow2フォーマットで作り、インスタンスが稼働することになります。

NetAppのエクスポートを適用する領域は、「/var/lib/nova/instance」です。nova-computeデーモンは起動時にNFSマウントをしてくれるようにはなっていないので、fstabに記載してNFSマウントをさせます。なのでコンフィグ的に難しい事はなにもありません。せっかくなのでこういうところでもNetAppを活躍させてあげましょう。

 

 

次回はいったんこれまでを整理させていただきます。

 

NetApp 倉持