IBM Cloud Docs
Portworx について

Portworx について

Portworx の概要、およびコンテナー化アプリのために Portworx の高可用性の永続ストレージ管理を利用する方法について詳しく理解できるように、よくある質問を記載します。

ソフトウェア定義ストレージ (SDS) とは何ですか?

SDS ソリューションは、クラスター内のワーカー・ノードに接続されたさまざまなタイプ、サイズ、またはベンダーのストレージ・デバイスを抽象化します。 ハード・ディスク上に使用可能なストレージを持つワーカー・ノードは、ノードとしてストレージ・クラスターに追加されます。 このクラスター内では、物理ストレージは仮想化されて、仮想ストレージ・プールとしてユーザーに表示されます。 このストレージ・クラスターは SDS ソフトウェアによって管理されます。 このストレージ・クラスターにデータを保管する必要がある場合は、SDS ソフトウェアによって最も高い可用性を確保できるデータ保管場所が決定されます。 仮想ストレージには、実際の基盤ストレージ・アーキテクチャーについて意識することなく利用できる一連の共通の機能とサービスが付属しています。

Portworx コンテナ化されたデータベースやその他のステートフルなアプリケーションのローカル永続ストレージを管理したり、複数のゾーンにまたがるポッド間でデータを共有したりするために使用できます。

Portworx のようなソフトウェア定義ストレージ (SDS) ソリューションは、クラスタ内のワーカーノードに接続される様々なタイプ、サイズ、または異なるベンダーのストレージデバイスを抽象化します。 ハード・ディスク上に使用可能なストレージを持つワーカー・ノードは、ノードとしてストレージ・クラスターに追加されます。 このクラスター内では、物理ストレージは仮想化されて、仮想ストレージ・プールとしてユーザーに表示されます。 このストレージ・クラスターは SDS ソフトウェアによって管理されます。 このストレージ・クラスターにデータを保管する必要がある場合は、SDS ソフトウェアによって最も高い可用性を確保できるデータ保管場所が決定されます。 仮想ストレージには、実際の基盤ストレージ・アーキテクチャーについて意識することなく利用できる一連の共通の機能とサービスが付属しています。

Portworx のメリットは?

Portworx を使用する利点
メリット 説明
ステートフル・アプリのクラウド・ネイティブ・ストレージおよびデータ管理 Portworx は、ワーカー・ノードに接続されたさまざまなサイズやタイプの使用可能なローカル・ストレージを集約して、クラスター内で実行するコンテナー化されたデータベースなどのステートフル・アプリ用の統一された永続ストレージ層を作成します。 Kubernetes 永続ボリューム請求 (PVC) を使用することで、データを保管するためのローカル永続ストレージをアプリに追加できます。
ボリューム複製による可用性の高いデータ Portworx は、クラスター内のワーカー・ノードとゾーンの間でボリューム内のデータを自動的に複製します。これにより、データにいつでもアクセスでき、ワーカー・ノードで障害が発生した場合やリブートが発生した場合に、ステートフル・アプリを別のワーカー・ノードにスケジュール変更できます。
hyper-converged の実行のサポート Portworx を実行するように設定できます。 hyper-converged を実行するように設定することで、コンピュートリソースとストレージが常に同じワーカーノードに配置されるようにすることができます。 アプリのスケジュールを変更する必要がある場合は、Portworx は、いずれかのボリューム・レプリカが配置されているワーカー・ノードにそのアプリを移動することで、ステートフル・アプリでローカル・ディスク並のアクセス速度とハイパフォーマンスを実現します。
IBM Key Protect を使用したデータの暗号化 ボリューム内のデータを保護するために、FIPS 140-2 レベル 2 認定を受けたクラウド・ベースのハードウェア・セキュリティー・モジュール (HSM) によって保護されている IBM Key Protect 暗号鍵をセットアップできます。 クラスター内のすべてのボリュームを同じ暗号鍵を使用して暗号化するのか、ボリュームごとに異なる暗号鍵を使用するのかを選択できます。 Portworx はこの鍵を使用して、保存中のデータを暗号化するとともに、異なるワーカー・ノードに転送中のデータを暗号化します。
組み込みのスナップショットおよびクラウド・バックアップ Portworx スナップショットを作成することで、ボリュームの現在の状態とそのデータを保存できます。 スナップショットは、ローカル Portworx クラスターまたはクラウドに保管できます。
統合されたモニタリング 利用可能なストレージノードの数、ボリューム、利用可能な容量など、 Portworx クラスタの健全性を表示し、 Prometheus、 Grafana、または Kibana でデータを分析できます。

Portworx はどのように機能しますか?

ソフトウェア定義ストレージ・ソリューションとして、 Portworx、ワーカー・ノードに接続された利用可能なストレージを集約し、クラスタ内で実行したいコンテナ化されたデータベースやその他のステートフルなアプリケーション用に統一された永続ストレージ・レイヤーを作成します。 複数のワーカー・ノードの間でコンテナー・レベルの各ボリュームを複製することで、Portworx はデータの永続性とデータ・アクセシビリティーをゾーンをまたいで確保します。

Portworx は、ステートフル・アプリ用に使用できる追加機能も備えています。これらの機能としては、ボリューム・スナップショット、ボリューム暗号化、分離、クラスター内の最適なボリューム配置を実現する統合された Storage Orchestrator for Kubernetes (Stork) などが挙げられます。 詳しくは、 Portworx のドキュメントを参照。

Portworx を実行するための要件は何ですか?

Portworxをインストールするための要件を確認します。

実稼働環境の場合、最良のパフォーマンスを得るには、 SDS ワーカー・ノード・フレーバー のいずれかを選択してください。 各都市部の表では、SDSのフレーバーはベアメタルのタブにあり、.ssd で終わっている。

保管データの高可用性をどのようにして確保できますか?

Portworx がノード間でデータを複製できるようにするために、Portworx クラスター内に少なくとも 3 つのワーカー・ノードが必要です。 ワーカー・ノード間でデータを複製することで、Portworx は、障害が発生した場合にデータを失うことなく、ステートフル・アプリを異なるワーカー・ノードにスケジュール変更できることを保証できます。 さらに高い可用性を実現するには、マルチゾーンクラスターを使用し、3つ以上のゾーンのワーカーノードにボリュームをレプリケートします。

ポッドにとって最高のパフォーマンスを発揮するのはどのボリューム・トポロジーですか?

クラスター内でステートフル・アプリを実行する際の最大の課題の 1 つは、ご使用のコンテナーまたはホスト全体で障害が発生した場合に、そのコンテナーを別のホストにスケジュール変更できるようにすることです。 Docker 内では、コンテナーを異なるホストにスケジュール変更する必要がある場合は、該当ボリュームはその新しいホストに移動されません。 Portworx で hyper-converged が実行されるように構成することで、コンピュート・リソースとストレージを常に同じワーカー・ノードに配置できます。 アプリのスケジュールを変更する必要がある場合は、Portworx は、いずれかのボリューム・レプリカが配置されているワーカー・ノードにそのアプリを移動することで、ステートフル・アプリでローカル・ディスク並のアクセス速度と最高のパフォーマンスを実現します。 hyper-converged を実行すると、ポッドのパフォーマンスが最大化されますが、そのためにはクラスター内のすべてのワーカー・ノード上でストレージが使用可能である必要があります。

ワーカー・ノードのサブセットのみを Portworx ストレージ層用に使用することを選択することもできます。 例えば、ローカルのロー・ブロック・ストレージを搭載した SDS ワーカー・ノードのワーカー・プールと、ローカル・ストレージを搭載していない別の仮想ワーカー・ノードのワーカー・プールがあるとします。 Portworx をインストールすると、DaemonSet の一部としてクラスター内のすべてのワーカー・ノードに Portworx ポッドがスケジュールされます。 SDS ワーカー・ノードにはローカル・ストレージがあるため、これらのワーカー・ノードは Portworx ストレージ層にのみ存在します。 仮想ワーカー・ノードは、ローカル・ストレージを備えていないため、ストレージ・ノードとしては含まれません。 ただし、アプリ・ポッドを仮想ワーカー・ノードにデプロイしても、このポッドは Portworx DaemonSet ポッドを使用して SDS ワーカー・ノードに物理的に保管されているデータにアクセスできます。 storage-heavy と呼ばれるこのセットアップでは、仮想ワーカー・ノードはデータにアクセスするためにプライベート・ネットワークを介して SDS ワーカー・ノードと通信する必要があるため、hyper-converged セットアップと比べてパフォーマンスがやや低下します。

IBM Cloud Kubernetes Service は、 Portworx 試験用 InitializerConfiguration アドミッション・コントローラーをサポートしていません。

プライベート・クラスターに Portworx をインストールできますか?

はい。 Portworx をプライベート・クラスターにインストールする場合は、 IBM Cloud アカウントに Virtual Routing and Forwarding(VRF)を 設定し、 IBM Cloud サービス用のプライベート・クラウド・サービス・エンドポイントにアクセスする必要があります。

VRF またはプライベート・クラウド・サービス・エンドポイント(CSE)へのアクセスがないクラスタに Portworx をインストールする場合は、デフォルトのセキュリティ・グループに以下の IP アドレスのインバウンドおよびアウトバウンド・トラフィックを許可するルールを作成する必要があります: 166.9.24.81 166.9.22.100 166.9.20.178。詳細については、 デフォルト・セキュリティ・グループの更新を 参照してください。

Portworxを使用しているときに Autopilot をインストールできますか?

はい。 自動パイロットは、 Autopilot のインストールに関する資料 に従ってインストールすることができます。

サポートを依頼するには、どのようにすればよいですか

以下のいずれかの方法を使用して、 Portworx サポートに連絡します。

次のステップ

準備がすべて整ったら、 3 つ以上のワーカー・ノードからなる SDS ワーカー・プールが含まれたクラスターの作成から始めましょう。 非 SDS ワーカー・ノードを Portworx クラスターに含める場合は、各ワーカー・ノードにロー・ブロック・ストレージを追加します。 クラスターの準備ができたら、クラスターに Portworx をインストールして、最初のハイパー・コンバージド・ストレージ・クラスターを作成します。

Portworx の他の機能の紹介

既存の Portworx ボリュームの使用
手動で作成した既存の Portworx ボリュームがある場合や、PVC を削除したときに自動的に削除されなかった既存の Portworx ボリュームがある場合は、対応する PV と PVC を静的にプロビジョンして、このボリュームをアプリで使用できます。 詳細については、 既存のボリュームの使用を参照してください。
Portworx 上でのステートフル・セットの実行
ステートフル・セットとしてクラスターにデプロイしようとしているステートフル・アプリがある場合は、Portworx クラスター内のストレージを使用するようにステートフル・セットをセットアップできます。 詳しくは、 MySQL StatefulSet をご覧ください。
ポッドのハイパーコンバージド実行
ポッドのボリュームが配置されているのと同じワーカー・ノード上でそのポッドをスケジュールするように Portworx クラスターを構成できます。 このセットアップは hyperconverged と呼ばれ、データ・ストレージのパフォーマンスを高めることができます。 詳細については、 ボリュームと同じホストでポッドを実行するを参照してください。
Portworx ボリュームのスナップショットの作成
Portworx スナップショットを作成することで、ボリュームとそのデータの現在の状態を保存できます。 スナップショットは、ローカル Portworx クラスターまたはクラウドに保管できます。 詳細については、 ローカルスナップショットの作成と使用を参照してください。
Lighthouse を使用した Portworx クラスターのモニタリングと管理
利用可能なストレージノードの数、ボリューム、利用可能な容量など、 Portworx クラスタの健全性を表示し、 Prometheus、 Grafana、または Kibana でデータを分析できます。
自動パイロットの構成
クラスター・リソースをモニターし、条件と、それらの条件が発生したときに実行するアクションを指定することができます。 詳しくは、 Autopilot の資料を参照してください。