株式会社ネットワールドのエンジニアがお届けする技術情報ブログです。
各製品のエキスパートたちが旬なトピックをご紹介します。

【Dell Blog】PowerFlex初心者によるPowerFlex初心者向けガイド

こんにちは。ネットワールド ストレージ担当の島田です。

今回はDell TechnologiesのPowerFlexについて紹介していこうと思います。
私自身、最近PowerFlexを勉強し始めたばかりなので、復習も兼ねて「PowerFlexはどんなストレージなのか?」「コンポーネントはどのようなものがあるのか?」「どういった構成がとれるのか?」といった観点で、初心者向けに解説していきます!

 

PowerFlexって、そもそも何者?

PowerFlexは、Dell Technologiesが誇るソフトウェア定義型ストレージ(SDS)の代表格です。複数のサーバーに搭載されているドライブをソフトウェアでひとつにまとめ、巨大な単一ストレージのように使えるようにするブロックストレージです。

従来のストレージシステムは専用ハードウェアが必要で拡張も大変でしたが、PowerFlexは汎用的なx86サーバーとソフトウェアを組み合わせたアプライアンスとすることで、以下のようなメリットを得られます。

  • 高速&パワフルな性能
  • 必要な時に必要なだけ容量と性能を増やせる柔軟な拡張性
  • データが壊れにくい、高い信頼性

PowerFlexの主要コンポーネントを理解しよう!

PowerFlexを理解するには、その心臓部であるアーキテクチャを知ることが重要です。
主に以下のソフトウェアコンポーネントと、それらが動作するノードで構成されています。

ソフトウェアコンポーネントの種類

以下がPowerFlexの主要なコンポーネントになります。
これら以外にもありますが、より重要なものをまず押さえていきましょう!

  • SDS (Storage Data Server)
    PowerFlexの「ストレージの供給者」。各サーバーに搭載された物理ストレージを、PowerFlexのストレージプールに提供します。
    対応Linuxにパッケージを導入し、SDSサービス/デーモンを起動して運用します。

  • SDC (Storage Data Client)
    PowerFlexの「ストレージの利用者」。クライアントホストに導入するブロックデバイスドライバーで、ホスト(OS/ハイパーバイザー)にPowerFlexボリュームをブロックデバイスとしてマッピング・認識させます。

  • MDM (Meta Data Manager)
    PowerFlexの「司令塔」。ストレージ内のデータがどこに保存されているか、どのノードがどのデータを持っているかといったメタデータを管理し、システム全体のデータマッピングや保護を制御します。MDMはSDSとSDCのコンポーネントを緩やかに連携させ、システムの安定性を保ちます。こちらは仮想マシンとして稼働します。

  • PFM (PowerFlex Manager)
    PowerFlexの「統合管理センター」。PowerFlexシステムの導入、構成変更、監視、ライフサイクル管理(LCM)などを一元的に行うためのWebベースの管理インターフェースです。これ一つで、PowerFlexのあらゆる操作が可能になります。こちらも仮想マシンとして稼働します。

ノードの種類

続いてノードの種別です。上記コンポーネントを搭載した3タイプのノードが登場します。

  • ストレージノード
    SDSが動作し、物理ストレージ(SSD/NVMe)を提供します。大量のデータを保存し、I/O処理を行います。汎用サーバーでもよいですが、専用に構成されたPowerFlexアプライアンスを使うのが安心かと思います。

  • コンピュートノード
    SDC
    が動作し、仮想マシンやアプリケーションを実行します。ストレージは持たないかOS用の少量のみで、データはPowerFlexのストレージプールから利用します。

  • 管理ノード
    MDM
    PFMが動作するノードです。PowerFlexシステム全体の管理を担います。また管理ノードはESXiやLinux、KVMなどで構成が可能です。ESXiの場合は管理ノード上にvCenterを稼働させることが出来ます。


従来のストレージですと、サーバー側に容量を提供するだけですが、
PowerFlexの場合は、サーバー側にも専用のドライバーを入れて、
サーバー、ストレージをまとめて1つのクラスターにしてデータのやり取りを管理するというのが大きな特徴だと思います!

ストレージの容量効率ってどうなの?

ストレージ導入において容量効率は重要なポイントですよね。PowerFlexでのデータ保存方法は大きく分けて2つの選択肢があり、それによって容量効率が変わってきます。

  • ミラーリング
    PowerFlexの基本的なデータ保護方式。データを複数のストレージノードに複製して保存します。データはプール全体へ分散配置され、その各分散ブロックが2重ミラーされるような形(分散RAID10)となります。
    容量効率:2重ミラーの場合は約50%となります
    メリット:従来から搭載されている保存方法なので安定性があり、非常に高いパフォーマンスと、障害発生時の迅速なデータ復旧が可能です。

  • Erasure Coding (EC)
    PowerFlex 5.0で利用可能なより容量効率の高いデータ保護方式です。
    データを複数のデータチャンクと、それらを復元するためのパリティに分割し、複数のストレージノードに分散して保存します。
    容量効率:ミラーリングよりも大幅に向上。例えば「8+2 EC」の場合、8つのデータチャンクと2つのパリティで構成され、約80%の容量効率を実現します。
    メリット:物理容量の利用効率が向上し、大規模環境でのコスト削減に貢献します。
    注意点:現状のストライプサイズの選択肢は「8+2 EC」と「2+2 EC」しかないため、容量効率の面で恩恵をうけようとすると、「8+2 EC」は最低11ノード以上※でストレージノードを構成する必要があり、規模が大きめになってしまう点は計画段階で考慮が必要です。
    ※リビルド余地、性能維持の観点から、「8+2 EC」は最低11ノード、「2+2 EC」は最低5ノード必要です。



つまり、安定性や小規模にスタートするならミラーリング、容量効率を重視するならErasure Coding(PowerFlex 5.0以降)という選択になってくるでしょうか。

実際のサーバー構成例を見てみよう!

PowerFlexの構成は、主に以下の3つパターンで構築することが出来ます。

  • 2階層型
  • HCI型
  • 2階層とHCIの混在型

以前は、コンピュートとストレージの両方を一つのノードで兼ねる「HCI型」も選択肢の一つでしたが、
現在は以下の理由からコンピュートノードとストレージノードを分離する2階層型が主流となっています。

  • コンピュートとストレージを独立拡張でき、コスト・性能・障害ドメインの最適化が容易
  • 運用面(アップグレードやメンテナンス)での影響範囲を分離できる

では実際にPowerFlexがどのように構成されるのか、具体的な2階層型の例を見てみましょう。
特に最小でどれくらいのサーバー台数でスタートできるのかという観点で見ていきたいと思います。
※以下はあくまで構成の1例であり、さまざまな要件で最小の構成は変わってきます。またバージョンやPowerFlexの種類(ラック型、アプライアンス型など)でも変わってきますので、その点ご注意ください!

検証環境の最小構成

冗長性を考慮しない形であれば、以下が最小構成かと思います。

あくまで検証環境用で機能を試す用途の構成なので、本番用にはお勧めできない点はご注意ください。

ストレージノード: 3台
最小3台で構成可能です。ただメーカーの推奨としては4ノード以上が推奨になります。

コンピュートノード: 1台
冗長性はないですが、最小1台から構成可能です。

管理ノード: 1台
MDMはノードで分散するのが推奨だが、1台でも構成自体は可能。

本番環境の現実的最小構成

最低限の冗長性を持たせるのであればこちらが最小構成になるかと思います。
こちらをベースに規模に合わせてどんどんスケールアウトしていく形になります。

用途に応じてコンピュートノードとストレージノードを柔軟に組み合わせ、最適なパフォーマンスと容量効率を実現できる点が2階層型のPowerFlexの強みになりますね!

ストレージノード: 4台
推奨としては最小4台以上で構成するのがよいかと思います。

コンピュートノード: 2台
ユーザーの要件によるが最小でも2台で冗長性を持たせるのがベターです。

管理ノード: 3台
管理ノードの中で3つのMDMを1台ずつ分散させるのが推奨になります。



PowerFlex 4.xと5.xのそれぞれの特徴と違いをみてみよう!

PowerFlexには、現在主に4.x系と5.x系の2つのバージョン系統があります。異なる特徴と進化の方向性を持っているため、環境に最適なバージョンを選ぶ際の参考にしてください。

PowerFlex 4.x系の特徴

PowerFlex 4.x系は、HCI型(コンピュートとストレージを兼ねるノード)と2階層型(分離型)の両方をサポートしており、ニーズに合わせて柔軟な構成を選択できるのが特徴でした。特に、最新の4.8では管理ノードに関する進化がありました。

■管理ノードの進化

以前は、PowerFlex ManagerやMDMを動作させるために専用の管理ノードが必要でした。これはハードウェア、ソフトウェア、OSのコストや、アップグレードの手間といった課題がありました。

PowerFlex 4.8で「Integrated Management」が導入され、専用の管理ノードをなしで構成することが出来るようになりました。
ストレージノードのブートデバイス(BOSS)上にKVMを導入し、その上でPFMとMDMを動作させることが可能になりました。
これにより、管理コストと手間が大幅に削減されると予想されます。

なお、BOSS容量は960GB必須になりますので、その点は注意が必要です。

PowerFlex 5.x系の特徴

PowerFlex 5.x系は、4.x系とはまた別の進化をしていて、前述にもあったECを使用できる点が大きな特徴になるかと思います。

■Erasure Coding (EC) の導入

PowerFlex 5.0で、先ほど説明したErasure Coding(EC)という新しいデータ保護方式が導入されました。ミラーリングよりも高い容量効率を実現でき、大規模環境でのストレージコストをさらに最適化可能です。

ただし、5.0で、Erasure Codingを利用する場合、4.8で導入されたIntegrated Managementは非対応で、引き続き専用の管理ノードが必要となります。将来的なバージョンでの対応も予想されますので、今後の進化にも期待ですね!

また、5.0は新規導入専用で、既存4.xからの直接アップグレードは不可です。その点は注意してください。

 

このように、PowerFlex 4.x系は管理の簡素化と柔軟な構成を追求PowerFlex 5.x系はErasure Codingによる容量効率の向上が大きな特徴です。小さく始めたい/管理をシンプルにしたいなら4.x、容量効率と大規模性を重視するなら5.xという棲み分けが見えてきます。

まとめ 

PowerFlexは、その柔軟な2階層型アーキテクチャ、圧倒的なパフォーマンス、高い信頼性、そして進化し続ける管理機能によって、現代の多様なワークロードに対応できる強力なソフトウェア定義型ストレージソリューションです。

  • 2階層型アーキテクチャで、コンピュートとストレージを柔軟に拡張
  • SDS、SDC、MDM、PFMといった主要コンポーネントの役割
  • ミラーリングとErasure Codingで、パフォーマンスと容量効率を両立
  • PowerFlex 4.x系と5.x系は、それぞれ異なる特徴と進化の方向性を持つ

あくまでこれらはPowerFlexの基礎の部分で、紹介しきれなかった部分がありますが、
上記のポイントを押さえていただければ、ザックリとPowerFlexがどんなストレージか理解いただけるのではないかと思います。
本記事をきっかけにPowerFlexに興味をもっていただけたら非常に嬉しいです!

最後までお読みいただき、ありがとうございました。では、良きPowerFlexライフを!

Networld Techのブログ一覧はこちら!

https://www.networld.co.jp/product/emc/tech-blog/