みなさま、こんにちは。株式会社ネットワールドのペレキアン、福住です。前回まではFabricPoolの基本的な動作を解説してきました。今回からは応用編ということで、日々進化するFabricPoolの最新機能を試していきます。第4回はONTAP9.5から実装されたFabricPool+FlexGroup構成で、なんちゃってマルチクラウドを実現してみます。予めお断りしておきますが、本投稿の内容はメーカー推奨の構成ではありません。あくまでもFabricPoolの動作を詳しく知るための「実験」です。間違っても本番環境で試さないでくださいね。
FlexGroupってなんだ?
ONTAP9.5からFlexGroupがFabricPoolに対応しました。その説明に入る前にそもそもFlexGroupとはなにか整理しておきましょう。ONTAPでこれまで標準的に利用されてきたVolumeはご存知FlexVolです。FlexVolの最大サイズは1Volumeで100TBとなっています。100TBもあれば普通は充分ですよね。でも、最近はひとつのVolumeでPBクラスのデータを保存したい、なんて要件もちらほら。そこまでいかなくても数百TBのデータを一共有に保存したいというケースもあります。その場合、FlexVolではどうしても複数のVolumeに分割する必要がありました(※ジャンクションパスを活用するなどの方法で実現することはできます)。競合他社のスケールアウト型ストレージではそのような要件でも簡単に実現できるそうです。NetAppでなんとからないものでしょうか?
そんな要望に答えたのがFlexGroupです。FlexGroupであればなんと1Volumeで最大20PB、最大4,000億ファイルを保存できます。FlexGroupの用途やその素晴らしい性能についても語りたいところですが、まずはFlexGroupがどのようなアーキテクチャで構成されているかを検討していきましょう。
FlexGroupの最大の特徴は複数のAggregate、さらには複数のNodeにまたがってVolumeを構成できる点です。上図のようにAggregate1~8にまたがるFlexGroupを作成できます。このVolumeにはどのNodeからでもアクセスできます。
では、FlexGroupはどのように各Node、各AggregateにまたがるVolumeを構成しているのでしょうか。FlexGroupは各Aggregateに複数のメンバーVolume(FlexVol相当)を配置し、それらの子Volumeを束ねて、論理的にひとつのVolumeとしてみせているのです。FlexGroupにファイルを保存しようとすると、そのファイルはこのメンバーVolumeのどこかにひとつに置かれます。保存先は一定のアルゴリズムにしたがいONTAPが自動的に決定しますので、ユーザーが指定することはできません。ユーザーから見ると、FlexGroupというひとつのVolumeにデータを保存するだけなので、どのメンバーVolumeに保存されるか意識する必要はないのです。
FabricPool+FlexGroup
FlexGroupについてもまだまだ語りたいところですが、本稿のメインはあくまでもFabricPoolなのでこのへんにしておきましょう。ONTAP9.5から、FlexGroupはFabricPool環境に対応しました。それではさっそく実際に試してみましょう。まず、Aggregate1とAggregate2をそれぞれクラウド階層に接続します。接続方法は第一回目で解説した通りです。次にAggregate1と2を指定してFlexGroupを作成します。あとはFlexVolと同じ様にFabricPoolのポリシーを設定するだけです。簡単ですね。
FlexGroupを作成するとデフォルトでは各AggregateにメンバーVolumeが4つずつ作成されます。今回の環境では各Node配下にAggregateが一つずつありますので、合計8つのメンバーVolumeからひとつのFlexGroupが構成されています。FabricPool機能についてはメンバーVolume毎に管理されているようです。CLIでコマンドを打つと、メンバーVolume毎にPerformance TierとCapacity Tierの利用比率を確認できます。逆にFlexGroup全体での利用比率を確認することはできないようです。FlexGroupがメンバーVolumeの集合体であることがよくわかりますね。
FabricPool+FlexGroupで「なんちゃってマルチクラウド」を試す
FlexGroup+FabricPool構成の基本は簡単に確認できました。これだけでは面白くないので、他にもいろいろと試してみましょう。前述の通りFlexGroupを使えば複数のAggregateにまたがるVolumeを作成できます。オブジェクトストレージとストレージはAggregate単位で接続します。それでは、異なるオブジェクトストレージと接続した複数のAggregateに、FlexGroupを作成することはできるのでしょうか?ちょっと気になったので実際に試してみることにしました。下記2パターンの構成が実現できるかどうか実験してみます。
まずは①のパターンです。Aggregate1はFabricPoolの設定が有効になっていますが、Aggregate2はオブジェクトストレージと接続されていません。この環境にまたがるFlexGroupは作成できるのでしょうか。通常はありえない構成かと思いますが、試しにやってみます。単純に作成してみてエラーになるかどうか確認するのではなく、あえて少し込み入った方法で実験してみます。
実験手順は以下の通りです。1)通常通りFlexGroup+FabricPool構成を作成し、2)Aggregate2に配置されているメンバーVolをすべてAggregate1にVolMoveで移動してから、Aggregate2を削除します。これでオブジェクトストレージとの接続も解除されます。3)新たにオブジェクトストレージと接続されていないAggregate3を作成し、もともとAggregate2にあったメンバーVolをVolMoveで移動してみます。はたして3)のVolMoveは成功したのでしょうか?結論としてはVolMoveでメンバーVolをAggregate3に移動することはできませんでした。FabricPoolが有効になっているAggregateとオブジェクトストレージとは接続されていないAggregateでFlexGroupを作ることはできませんでした。
次にパターン②を試してみましょう。Aggregate毎に異なるクラウドオブジェクトストレージに接続した環境でFlexGroupは作成できるのでしょうか?今回はIBM Cloud Object StorageとAWS S3で試してみました。先ほど新規に作成したAggregate3をAWS S3に接続します。その環境でAggregate1(IBM Cloud Object Storageに接続済み)にあるメンバーVolの半数をAggregate3にVolMoveで移動してみます。こちらは見事に成功しました。なんと複数のクラウドオブジェクトストレージにまたがるマルチクラウド対応のFlexGroupが作成できました。この構成のポイントは、FlexGroupに保存したデータはコールドデータと判定された場合、ほぼ2分の1の確率でAWS S3かIBM Cloud Object Storageのどちらかに移動する、ということです。しかも、どちらのクラウドになるかは運次第!これのなにが嬉しいのでしょうか?なにも嬉しいことはありません。複数のクラウドにまたがるFlexGroupが作成できるかどうか実験してみただけなので、くれぐれもマネしないようお願いします。
そしてFabricPool Mirrorへ
でも、このなんちゃってマルチクラウド構成、単純におもしろいと思いませんか?なんちゃってとは言え複数のクラウドに接続できることは確認できました。VolMoveを駆使すれば、あるクラウドから別クラウドのオブジェクトストレージへFabricPoolのデータオフロード先をお引越しすることもできそうですね。実はこのクラウド間の移動をより洗練させた機能がONTAP9.7で実装されました。それがFabricPool Mirrorです。次回はFabricPool Mirrorについて詳しくお伝えします。
株式会社ネットワールド
お問合せ窓口:netapp-info@networld.co.jp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
株式会社ネットワールド
セールスコンサルティング部
福住 遊
マーケティング部に所属するNetApp専門の営業担当。エンジニア経験は一切ないが、CVOを使って雰囲気でコマンドを打っていたらONTAPに詳しくなった。ジョルジュ・ペレックが大好き。Anne Rocheは、『ハムレット』と『Wあるいは子供の頃の思い出』の奇妙な一致を指摘している。ハムレットが亡霊を見るためにマーセラスたちと約束を取り付けたのは「では、また。いいな、胸壁のうえ、十一時と十二時のあいだ、きっと行くぞ」だった。
NetApp Hybrid Cloud Architect & Administrator, AWS SAA&SOA, Perecien
福住が講師の資格取得プログラムやコミュニティイベント実施中!
NetAppくらうどコミュニティ「くらこみゅ」~クラウドSEに、俺はなる!~
https://www.networld.co.jp/product/netapp/kurakomyu/
最新情報お届け!Twitter / Facebook のフォローもお願いします!
- ネットワールドFacebook (@Networld.TeamNetApp)
- Networld Twitterアカウント(@nw_netapp)
- カテゴリ:
- ハイブリッド