PowerFlex 4.x:PFMP MVM 管理节点正常重新启动过程

Summary: 此过程介绍如何在管理节点上执行正常重新启动。此过程可确保 PowerFlex 管理平台 (PFMP) 在整个过程中保持运行。 一次在一个管理节点上执行维护。在此过程的范围内,MVM1 是 postgres 领导者。最后耗尽并重新启动。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

提醒:执行此过程时请格外小心。必须启动并运行两个管理虚拟机 (MVM) 节点才能保持 PFMP 功能。
 
此过程中的命令从 root bash shell 运行。要镜像以下步骤,请使用以下命令登录 MVM delladmin 然后运行 sudo -s 切换到新的 root shell。

例:
delladmin@pfmp-mvm03:~> whoami
delladmin
delladmin@pfmp-mvm03:~> sudo -s
pfmp-mvm03:/home/delladmin # whoami
root


步骤:

  1. 列出所有 Postgres 数据库 实例,并确定具有 Leader 角色的 pod 名称:
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'
  1. 运行以下命令 以确定哪个 MVM 正在运行 Postgres Leader pod。这是要清空并重新启动的最后一个节点:
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
  1. 打开 MVM3 的终端。运行以下命令:
kubectl get nodes
  1. 标记 MVM3 以进行维护:
kubectl label node pfmp-mvm03 cmo.maintenance.mode=true
  1. 释放节点 MVM03,其中正在运行的 Pod 将从节点中正常逐出。Pod 在不同的节点上调度和运行。清空过程完成后,节点将重新启动。等待节点恢复正常运行。
提醒:在 Linux 中,如果运行两个由 && &(AND 运算符)连接的命令,并且第一个命令失败(以非零退出代码退出),则不会执行第二个命令。此行为是由于 shell 中的短路评估所致。
 
  1. 运行以下命令以 清空节点
kubectl drain pfmp-mvm03 --ignore-daemonsets --delete-emptydir-data
  1. 节点耗尽后, 重新启动节点
sudo reboot
  1. 通过 SSH 连接到 MVM02 并运行以下命令,以监视您重新启动的节点,使其状态为 Ready
watch kubectl get nodes
  1. MVM03 报告就绪状态后,通过 SSH 连接到 MVM03 并执行以下命令以 取消警戒并移除维护 标签。
kubectl uncordon pfmp-mvm03 ; kubectl label node pfmp-mvm03 cmo.maintenance.mode-

提醒:后面的“-” cmo.maintenance.mode 在上面的命令中非常重要。不要忘记包含 DASH 符号。这是从节点中删除标签所必需的。
 
  1. 等待 5 分钟,然后运行步骤 1 中的命令以查看数据库群集运行状况。一旦输出与下面的 运行状况良好的数据库示例匹配,您可以对下一个 MVM 重复这些步骤。 
  2. 在 MVM02 上重复步骤 3-8,然后在 MVM01 上重复步骤 3-8。 
 
提醒:在 MVM02 上执行此过程时,请在步骤 6 中使用 MVM03 以监视 MVM02 节点状态。在 MVM01 上工作时,将步骤 6 中的 MVM02 用于监视 MVM01 节点状态。Kubectl 命令不适用于未处于就绪状态的节点。
 
提醒:执行此过程时,合规性捆绑包可能会进入 ERROR 状态。登录到 PFxM UI,单击 设置 >合规性版本。如果合规性捆绑包处于 ERROR 状态,则必须重新同步。

在所有三个 MVM 上完成该过程后,运行步骤 1 中的命令以验证 postgres 数据库运行状况。一个 Pod 应为 Leader 并处于 正在运行状态。应有 0MB 延迟,并且两个同步待机成员都应具有 流式处理状态。

运行状况良好的数据库示例:
+ 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 |
+-------------------------+------------------------------------------+--------------+-----------+----+-----------+

Affected Products

PowerFlex appliance R640

Products

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 ...
Article Properties
Article Number: 000225550
Article Type: How To
Last Modified: 19 Jun 2025
Version:  12
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.