PowerFlex 4.X: PFMP MVM管理VMでグレースフル リブートを実行する方法
概要: バージョン4.XでのPowerFlex Management Platform (PFMP) VMのグレースフルな再起動について詳しく説明します。これには、2つのノードをアクティブに保ち、PostgreSQLの正常性を確認しながら、MVMのラベル付け、ドレイン、再起動が含まれます。この手順の範囲では、MVM1はpostgresリーダーです。最後にドレインされ、再起動されます。 ...
この記事は次に適用されます:
この記事は次には適用されません:
この記事は、特定の製品に関連付けられていません。
すべての製品パージョンがこの記事に記載されているわけではありません。
手順
注:この手順を実行するときは注意してください。PFMP機能を維持するには、2つの管理仮想マシン(MVM)ノードが稼働している必要があります。
MVM VMを再起動すると、一部のポッドの問題、デプロイの失敗、その他のエラーを解決できます
この手順のコマンドは、ルートbashシェルから実行されます。以下の手順をミラーリングするには、次を使用して MVM にログインします。 delladmin 次に実行します sudo -s をクリックして、新しいルートシェルに切り替えます
例:
delladmin@pfmp-mvm03:~> whoami delladmin delladmin@pfmp-mvm03:~> sudo -s pfmp-mvm03:/home/delladmin # whoami root
- すべてのPostgresデータベース インスタンスを一覧表示 し、リーダー ロールを持つポッド名を特定します。 リーダー ノードは、ドレインして再起動する最後のノードである必要があります。
-
- PFMPの4.6
kubectl exec -n powerflex -c database $(kubectl get pods -n powerflex -l='postgres-operator.crunchydata.com/role=master, postgres-operator.crunchydata.com/instance-set' | grep Running | cut -d' ' -f1) -- sh -c 'patronictl list'
次のコマンドを実行して、 PostgresリーダーPodを実行しているMVMを特定します 。これは、ドレインされて再起動される最後のノードです。
for x in `kubectl get pods -n powerflex | grep "postgres-ha-cmo" |awk '{print $1}'` ; do echo $x; kubectl get pods -n powerflex $x -o json | grep '"nodeName"' | cut -d ':' -f2 ; echo " "; done
-
- PFMPの4.8
kubectl exec -it -n powerflex $(kubectl get pods -n powerflex | grep postgres-monitor | awk '{print $1'}) -- kubectl cnpg status postgres-ha-cnpg
出力例
delladmin@node2:~> kubectl exec -it -n powerflex $(kubectl get pods -n powerflex | grep postgres-monitor | awk '{print $1'}) -- kubectl cnpg status postgres-ha-cnpg
Cluster Summary
Name powerflex/postgres-ha-cnpg
System ID: 7570829541331841052
PostgreSQL Image: dockerrepo:30500/cnpg/cnpg-postgres:14.18-22-53.6b63004-22-9.0
Primary instance: postgres-ha-cnpg-1
Primary start time: 2025-11-09 22:33:09 +0000 UTC (uptime 3803h6m21s)
Status: Cluster in healthy state
Instances: 3
Ready instances: 3
Size: 11G
Current Write LSN: B/6211B568 (Timeline: 3 - WAL File: 000000030000000B00000062)
Continuous Backup status
Not configured
Streaming Replication status
Replication Slots Enabled
Name Sent LSN Write LSN Flush LSN Replay LSN Write Lag Flush Lag Replay Lag State Sync State Sync Priority Replication Slot
---- -------- --------- --------- ---------- --------- --------- ---------- ----- ---------- ------------- ----------------
postgres-ha-cnpg-2 B/6211B568 B/6211B568 B/6211B568 B/6211B568 00:00:00.000365 00:00:00.001507 00:00:00.001618 streaming async 0 active
postgres-ha-cnpg-3 B/6211B568 B/6211B568 B/6211B568 B/6211B568 00:00:00.000321 00:00:00.001511 00:00:00.001575 streaming async 0 active
Instances status
Name Current LSN Replication role Status QoS Manager Version Node
---- ----------- ---------------- ------ --- --------------- ----
postgres-ha-cnpg-1 B/6211B568 Primary OK Burstable 1.26.1 pfmp-mvm01
postgres-ha-cnpg-2 B/6211B568 Standby (async) OK Burstable 1.26.1 pfmp-mvm02
postgres-ha-cnpg-3 B/6211B568 Standby (async) OK Burstable 1.26.1 pfmp-mvm03
- MVM3(非リーダーノードの1つ)へのターミナルを開きます。次のコマンドを実行します。
kubectl get nodes
- メンテナンス用にMVM3にラベルを付けます。
kubectl label node pfmp-mvm03 cmo.maintenance.mode=true
- 実行中のポッドがノードから正常にエビクションされるノードMVM03をドレインします。ポッドは別のノードでスケジュールされ、実行されます。ドレイン プロセスが完了すると、ノードが再起動します。ノードが復旧するまで待ちます。
注:Linux では、 & & (AND 演算子) で結合された 2 つのコマンドを実行し、最初のコマンドが失敗する (0 以外の終了コードで終了する) 場合、2 番目のコマンドは実行されません。この動作は、シェルの短絡評価によるものです。
- 次のコマンドを実行して、 ノードをドレインします。
kubectl drain pfmp-mvm03 --ignore-daemonsets --delete-emptydir-data
- ノードがドレインされたら、ノードを再起動します。
sudo reboot
SSHをMVM02に変更し、次のコマンドを実行して再起動したノードを監視し、STATUS が Readyになります。
watch kubectl get nodes
- MVM03から準備完了ステータスが報告されたら、SSHでMVM03に接続し、次のコマンドを実行して 非常線を解除し、メンテナンス ラベルを削除します 。
kubectl uncordon pfmp-mvm03 ; kubectl label node pfmp-mvm03 cmo.maintenance.mode-
注:の後の「-」
cmo.maintenance.mode 上記のコマンドでは非常に重要です。DASH記号を忘れずに含めてください。これは、ノードからラベルを削除するために必要です。
- 5分から20分待ってから、ステップ1のコマンドを実行して、データベース クラスターの正常性を表示します。出力が以下の 正常なデータベースの例と一致したら、次のMVMでこの手順を繰り返すことができます。
- MVM02 で手順 3 から 8 を繰り返し、次に MVM01 を繰り返します。
注:MVM02でこの手順を実行する場合は、ステップ6のMVM03を使用してMVM02ノードのステータスを監視します。MVM01で作業している場合は、ステップ6でMVM02を使用してMVM01ノードのステータスを監視します。
Kubectl コマンド は 、 準備完了状態でないノードでは機能しません。
注:この手順を実行すると、コンプライアンス バンドルがエラー状態になる場合があります。PFxM UIにログインし、Settings>Compliance Versionsをクリックします。コンプライアンス バンドルがエラー状態の場合は、再同期する必要があります。
3つすべてのMVMで手順を完了したら、手順1のコマンドを実行して postgres データベースの正常性を確認します。1つのPodがリーダーで、 実行中の状態である必要があります。0MBの遅延があり、両方の同期スタンバイ メンバーの状態がストリーミングになっている必要があります
正常なデータベースの例 PFMP 4.6:
+ Cluster: postgres-ha-ha +------------------------------------------+--------------+-----------+----+-----------+ | Member | Host | Role | State | TL | Lag in MB | +-------------------------+------------------------------------------+--------------+-----------+----+-----------+ | postgres-ha-cmo1-8t2v-0 | postgres-ha-cmo1-8t2v-0.postgres-ha-pods | Leader | running | 10 | | | postgres-ha-cmo1-h4hx-0 | postgres-ha-cmo1-h4hx-0.postgres-ha-pods | Sync Standby | streaming | 10 | 0 | | postgres-ha-cmo1-pb88-0 | postgres-ha-cmo1-pb88-0.postgres-ha-pods | Sync Standby | streaming | 10 | 0 | +-------------------------+------------------------------------------+--------------+-----------+----+-----------+
対象製品
PowerFlex rack, VxFlex Ready Nodes, PowerFlex custom node, PowerFlex appliance R650, PowerFlex appliance R6525, PowerFlex appliance R660, PowerFlex appliance R6625, Powerflex appliance R750, PowerFlex appliance R760, PowerFlex appliance R7625
, PowerFlex appliance R640, PowerFlex appliance R740XD, PowerFlex appliance R7525, PowerFlex appliance R840
...
製品
PowerFlex rack, VxFlex Ready Nodes, PowerFlex custom node, PowerFlex appliance R650, PowerFlex appliance R6525, PowerFlex appliance R660, PowerFlex appliance R6625, Powerflex appliance R750, PowerFlex appliance R760, PowerFlex appliance R7625
, PowerFlex appliance R740XD, PowerFlex appliance R7525, PowerFlex appliance R840
...
文書のプロパティ
文書番号: 000225550
文書の種類: How To
最終更新: 26 6月 2026
バージョン: 18
質問に対する他のDellユーザーからの回答を見つける
サポート サービス
お使いのデバイスがサポート サービスの対象かどうかを確認してください。