PowerFlex 4.X: Sådan udføres en kontrolleret genstart på PFMP MVM-administrations-VM'er

Summary: Beskriver den kontrolleret genstart af PowerFlex Management Platform (PFMP) VM'er til version 4.X, herunder mærkning, dræning og genstart af MVM'er, mens to noder holdes aktive og kontrollerer PostgreSQL-tilstanden. Inden for rammerne af denne procedure er MVM1 postgres Leader. Det drænes og genstartes sidst. ...

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

Bemærk: Vær forsigtig, når du udfører denne procedure. To MVM-noder (Management Virtual Machine) skal være oppe at køre for at opretholde PFMP-funktionaliteten. 

 

Genstart af MVM VM'er kan løse nogle Pod-problemer, implementeringsfejl og andre fejl

Kommandoerne i denne procedure køres fra en root bash-shell. For at spejle nedenstående trin skal du logge på MVM'erne ved hjælp af delladmin Kør derefter sudo -s for at skifte til en ny rodskal.

Eksempel:

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

 

 

  1. Angiv en liste over alle Postgres-databaseforekomster , og identificer podnavnet med lederrollen. Ledernoden skal være den sidste node, der skal drænes og genstartes:  
    1. 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'

 

Kør følgende kommando for at identificere, hvilken MVM der kører Postgres Leader Pod. Dette er den sidste node, der skal drænes og genstartes:

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. 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

Eksempel på output 

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

 

  1. Åbn en terminal til MVM3 (en af de ikke-førende noder). Kør følgende kommando:
kubectl get nodes

 

  1. Etiket MVM3 til vedligeholdelse:
kubectl label node pfmp-mvm03 cmo.maintenance.mode=true

 

  1. Dræn node MVM03, hvor kørende Pods elegant fjernes fra noden. Pods planlægger og kører på en anden node. Når dræningsprocessen er fuldført, genstarter noden. Vent på, at noden kommer op igen.
Bemærk: I Linux, hvis du kører to kommandoer, der er forbundet med && (AND-operatør), og den første kommando mislykkes (afsluttes med en ikke-nul exit-kode), udføres den anden kommando ikke. Denne adfærd skyldes kortslutningsevaluering i skallen.
 
  1. Kør følgende kommando for at dræne noden:
kubectl drain pfmp-mvm03 --ignore-daemonsets --delete-emptydir-data

 

  1. Når noden er drænet, skal du genstarte noden:
sudo reboot

 

  1. SSH til MVM02 og køre følgende kommando for at overvåge den node, du genstartede, for at opnå en STATUS som Klar:
watch kubectl get nodes

 

  1. Når MVM03 rapporterer en klar-STATUS, skal du SSH til MVM03 og udføre følgende kommando for at fjerne vedligeholdelsesmærkaten .
kubectl uncordon pfmp-mvm03 ; kubectl label node pfmp-mvm03 cmo.maintenance.mode-

Bemærk: "-" efter cmo.maintenance.mode I kommandoen ovenfor er meget vigtigt. Glem ikke at inkludere DASH-symbolet . Dette er nødvendigt for at fjerne etiketten fra noden.

 

  1. Vent 5 til 20 minutter, og kør derefter kommandoen i trin 1 for at få vist databaseklyngens tilstand. Du kan gentage trinnene for den næste MVM, når outputtet matcher eksemplet på sund database nedenfor. 
  2. Gentag trin 3-8MVM02 og derefter MVM01

 

Bemærk: Når du udfører denne procedure på MVM02, skal du bruge MVM03 til trin 6 for at overvåge MVM02-nodestatus. Når du arbejder på MVM01, skal du bruge MVM02 til trin 6 for at overvåge MVM01-nodestatus. Kubectl kommandoer virker IKKE på en node, der ikke er i tilstanden Klar.

 

Bemærk: Når du udfører denne procedure, kan pakken Overholdelse muligvis gå i en ERROR-tilstand. Log på PFxM-brugergrænsefladen , klik på >Indstillinger Overholdelsesversioner. Overholdelsespakken skal synkroniseres igen, hvis den er i tilstanden ERROR.


Når du har fuldført proceduren på alle tre MVM'er, skal du køre kommandoen i trin 1 for at kontrollere postgres-databasens tilstand. En pod skal være leder og i en tilstand af løb. Der skal være 0 MB forsinkelse, og begge Sync Standby-medlemmer skal have en streamingtilstand.

Eksempel på sund database 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 |
+-------------------------+------------------------------------------+--------------+-----------+----+-----------+

Affected 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 R640, PowerFlex appliance R740XD, PowerFlex appliance R7525, PowerFlex appliance R840 ...

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: 11 محرم 1448
Version:  18
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.