PowerFlex: MVM Opruimen en ruimte vrijmaken

Oversigt: In dit artikel wordt uitgelegd hoe u ruimte kunt vrijmaken op de Management Virtual Machine (MVM's).

Denne artikel gælder for Denne artikel gælder ikke for Denne artikel er ikke knyttet til et bestemt produkt. Det er ikke alle produktversioner, der er identificeret i denne artikel.

Instruktioner

WAARSCHUWING: Voordat u de taken uitvoert die in deze KB worden behandeld, maakt u een snapshot van de MVM's. Dit biedt een rollback-methode voor het geval er een fout wordt gemaakt bij het opschonen van de docker-PVC's. 

MVM-snapshots kunnen worden gemaakt terwijl de MVM's actief zijn. Pas deze stappen toe op alle drie de MVM's

  • Aanmelden bij vCenter
  • Voer voor elke MVM de volgende stappen uit
  • Klik op de MVM --> Klik op Snapshots --> Klik op TAKE SNAPSHOT....
    Neem een dutje
  • Klik op MAKEN

Verouderde docker-register-PVC's opschonen

Stappen

  1. De volgende opdracht geeft een overzicht van de pods "docker-registry" en de MVM die de pod uitvoert.

    delladmin@pfmpn2:/opt/platform-provisioner> kubectl get pods -n powerflex -o wide | grep docker | grep -v sync
    docker-registry-0                                             1/1     Running             0              16h    192.168.21.154   pfmpn3   <none>           <none>
    docker-registry-1                                             1/1     Running             0              16h    192.168.23.40    pfmpn2   <none>           <none>
  2. Wanneer u de uitvoer van de geconfigureerde Persistent Volume Claims voor docker-register bekijkt, worden de PVC-ID's vermeld voor de actieve PVC's. De PVC-gegevens worden opgeslagen in /opt/platform-provisioner/.

    Voorbeeld:

    delladmin@pfmpn2:~> kubectl get pvc -n powerflex | grep docker
    docker-registry-data-docker-registry-0                                       Bound    pvc-648ed95b-0393-4c6d-b500-03a4b162dda5   20Gi       RWO            local-path                  46h
    docker-registry-data-docker-registry-1                                       Bound    pvc-0f689062-a700-48ad-8d10-65b985477e1a   20Gi       RWO            local-path                  19d
  3. Als we naar de bovenstaande directory-uitvoer kijken, kunt u zien dat er twee directory's zijn voor "docker-registry-1". De huidige PVC-ID voor "docker registry 1" is "pvc-0f689062-a700-48ad-8d10-65b985477e1a". Omdat er twee mappen worden vermeld voor "docker-registry-1".

  4. Er is één verouderde map die kan worden verwijderd om ruimte vrij te maken. Er kunnen er nog veel meer zijn, afhankelijk van het aantal verouderde mappen dat in de loop van de tijd is overgebleven.

    delladmin@pfmpn2:~> ls -al /opt/platform-provisioner/ | grep docker
    drwxrwxrwx 1 root root    12 Jul 22 15:47 pvc-0f689062-a700-48ad-8d10-65b985477e1a_powerflex_docker-registry-data-docker-registry-1
    drwxrwxrwx 1 root root    12 May 17 00:44 pvc-8a5f3651-dbd5-40a9-8252-51fd18539fc3_powerflex_docker-registry-data-docker-registry-1
  5. De verouderde map verbruikt 60 GB en deze map kan worden verwijderd. De verouderde PVC-ID is "pvc-8a5f3651-dbd5-40a9-8252-51fd18539fc3"

    Ruimte die wordt gebruikt vóór het opschonen van verouderde mappen

    delladmin@pfmpn2:~> df -h /dev/sda2
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda2       600G  273G  326G  46% /

    Voorbeeld:
    De verouderde map neemt 60 GB schijfruimte in beslag.

    delladmin@pfmpn2:~> du -h --max-depth=1 /opt/platform-provisioner/pvc-8a5f3651-dbd5-40a9-8252-51fd18539fc3_powerflex_docker-registry-data-docker-registry-1
    60G     /opt/platform-provisioner/pvc-8a5f3651-dbd5-40a9-8252-51fd18539fc3_powerflex_docker-registry-data-docker-registry-1/docker
    60G     /opt/platform-provisioner/pvc-8a5f3651-dbd5-40a9-8252-51fd18539fc3_powerflex_docker-registry-data-docker-registry-1
  6. De verouderde directory "docker-registry" verwijderen

  7. Wanneer de verouderde map wordt verwijderd, komt er 60 GB vrij.

    delladmin@pfmpn2:/opt/platform-provisioner> sudo rm -rf pvc-8a5f3651-dbd5-40a9-8252-51fd18539fc3_powerflex_docker-registry-data-docker-registry-1
    delladmin@pfmpn2:/opt/platform-provisioner> df -h /dev/sda2
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda2       600G  213G  385G  36% /

Oude IC/RCM Repository directory's opschonen

  • Voer de volgende opdracht uit vanuit een MVM om de IC/RCM-UUID's en de bijbehorende naam op te halen. Er kan slechts één IC/RCM op standaard worden ingesteld. Oudere IC/RCM-nalevingsbundels kunnen worden verwijderd.

    Voorbeeld:
    Conforme versies

    Voorbeeld:
    Aangezien er slechts één IC/RCM is toegevoegd aan nalevingsversies in de PFMP-gebruikersinterface, rapporteert de database er op zijn beurt slechts één.

    delladmin@pfmpn2:/opt/platform/fileshare> kubectl exec -it -n powerflex $(kubectl get pods -n powerflex | grep -i asmm | awk '{print $1}') -- bash -c 'PGPASSWORD=$CONNECTION_USER_PASSWORD psql -h postgres-ha-pgbouncer -p 5432 -U asmmanageruser -d asm_manager -w -c "SELECT id,name FROM firmware_repository;"'
                    id                |             name
    ----------------------------------+-------------------------------
    402897a59688313b01968c2d859e4732 | Intelligent Catalog 46.382.00
    (1 row)
  • De nalevingsbundels worden opgeslagen in /opt/platform/fileshare op alle drie de MVM's. Elke UUID die niet is gekoppeld aan de huidige standaard nalevingsversie in de PFMP-gebruikersinterface kan worden verwijderd Als u nalevingsbundels met een .zip-extensie ziet. Controleer of er geen IC/RCM-synchronisatie wordt uitgevoerd in de PFMP-gebruikersinterface.

  • Als alle bundels de status Beschikbaar hebben. De .zip bestanden kunnen worden verwijderd om ruimte vrij te maken.

    Voorbeeld:

    delladmin@pfmpn2:/opt/platform/fileshare> pwd
    /opt/platform/fileshare
    delladmin@pfmpn2:/opt/platform/fileshare> ls -al | grep 402897a59688313b01968c2d859e4732
    drwxr-xr-x 1 delladmin users     14184 May 30 16:41 402897a59688313b01968c2d859e4732

    Voorbeeld:

  • Deze MVM pfmpn1 bevat een nalevingsbundel in .zip van een IC/RCM-synchronisatietaak die niet is voltooid. Dit bestand kan worden verwijderd om ruimte vrij te maken.

    delladmin@pfmp452n1:/opt/platform/fileshare> ls -alh | grep 402897
    drwxr-xr-x 1 delladmin users  14K May 30 16:41 402897a59688313b01968c2d859e4732
    -rw-r--r-- 1 delladmin users  28G Jul 17 14:06 402897a59688313b01968c2d859e4732.zip
    
    delladmin@pfmp452n1:/opt/platform/fileshare> sudo rm -rf /opt/platform/fileshare/402897a59688313b01968c2d859e4732.zip
    
    Result
    delladmin@pfmp452n1:/opt/platform/fileshare> ls -alh | grep 402897
    drwxr-xr-x 1 delladmin users  14K May 30 16:41 402897a59688313b01968c2d859e4732
  • In dit voorbeeld ziet u dat pfmpn3 een oude directory met IC/RCM-complianceversies bevat die niet meer nodig is omdat er slechts één IC/RCM-complianceversie is toegevoegd in de PFMP-gebruikersinterface.

    delladmin@pfmp452n3:~> ls -al /opt/platform/fileshare/ | grep 402897
    drwxr-xr-x 1 delladmin users     11798 Feb 13 17:16 4028979594e191650195014584d93692
    drwxr-xr-x 1 delladmin users     14184 May 30 16:41 402897a59688313b01968c2d859e4732
  • Ruimte verbruikt op schijf voor oude IC/RCM

    delladmin@pfmpn3:/opt/platform/fileshare/4028979594e191650195014584d93692> du -h --max-depth=1 .
    1.3G    ./modified
    47G     ./os
    2.8M    ./rpm s
    5.8M    ./slesrpms
    15M     ./vibs70
    53G     .
  • U kunt de volgende opdracht uitvoeren om de naam te identificeren van de IC/RCM die aan deze oude map is gekoppeld. Wijzig de opdracht om de UUID op te nemen die van toepassing is op uw omgeving.

    delladmin@pfmp452n3:/opt/platform/fileshare/4028979594e191650195014584d93692> head /opt/platform/fileshare/4028979594e191650195014584d93692/catalog.xml | grep name
    <Manifest baseLocation="" dateTime="2020-08-06T15:05:13" name="Intelligent Catalog 46.376.00" identifier="d70a21a1-116e-4a3c-95ec-52a24603b684" releaseID="MW3KN" version="1.28">
  • Deze oude IC/RCM-nalevingsdirectory verbruikt 53 GB, aangezien de huidige standaard IC/RCM-versie in dit voorbeeld 46.382.00 is. Als er in de gebruikersinterface niet naar de oude IC/RCM wordt verwezen, kan deze map worden verwijderd. Als er nog steeds een IC/RCM wordt vermeld in de gebruikersinterface, verwijdert u deze eerst uit de gebruikersinterface. Controleer vervolgens of de directory is opgeschoond. Als dit niet het geval is, kunt u de map handmatig verwijderen.

  • Het opruimen van verouderde PVC's voor docker en het opschonen van oude IC/RCM-bundels zou alles moeten zijn wat nodig is om het MVM-schijfgebruik terug te brengen tot een statusniveau.

PFMP-upgradedirectory's opschonen

Er zijn drie mappen die worden gemaakt tijdens de PFMP-upgrade. Als u PFMP hebt bijgewerkt, maar mogelijk een upgradefase handmatig hebt moeten voltooien, zijn de mappen niet opgeschoond. Het is ook mogelijk dat de directory's niet worden opgeschoond als er problemen zijn met de eigendomsrechten. De mappen bevinden zich in /opt/platform/fileshare op elke MVM. De map die de meeste ruimte biedt om vrij te maken is "PFMPUpgradeBundle"

Directorynamen

  • PFMPUpgradeBundle
  • Platform
  • Upgrade
delladmin@pfmp452n3:/opt/platform/fileshare> ls -alh /opt/platform/fileshare/ | grep -Ei 'upgrade|platform'
drwxr-xr-x 1 delladmin root   362 Jul 22 15:23 PFMPUpgradeBundle
drwxr-xr-x 1 delladmin users    0 Nov  7  2024 platform
drwxr-xr-x 1 delladmin root    92 Jul 22 15:23 Upgrade

Voer de volgende opdrachten uit om deze mappen te verwijderen.

sudo rm -rf /opt/platform/fileshare/PFMPUpgradeBundle
sudo rm -rf /opt/platform/fileshare/Upgrade
sudo rm -rf /opt/platform/fileshare/platform

Logbestanden van grote pods opschonen

  • Als er meer ruimte nodig is, controleert u deze en verwijdert u indien nodig:

  • Op elke PFMP-server (MVM) met ruimteproblemen voert u de volgende zoekopdrachten uit om te controleren hoe groot de logbestanden zijn:

    sudo find /opt/platform-provisioner -type d -name "pvc-*_*_logging-rsyslog-data-*" -exec ls -lh {} \;
    sudo find /opt/platform-provisioner -iname "docker-registry.stdout.log" -exec du -h {} \;
    sudo find /opt/platform-provisioner -iname "supportassist-vxflexappliance.stdout.log" -exec du -h {} \;
    sudo find /opt/platform-provisioner -iname "temporal-history.stdout.log" -exec du -h {} \;
  • Met de volgende opdrachten worden deze grote logbestanden automatisch verwijderd:

    Opmerking: U hoeft de onderstaande verwijderopdrachten niet uit te voeren als de bestanden klein zijn ( < 300 MB). Als ze groot zijn, kan de grootte variëren tussen 1 GB en 100 + GB
    sudo find /opt/platform-provisioner -type d -name "pvc-*_*_logging-rsyslog-data-*" -exec sh -c 'for log in "$1"/*.log; do [ -e "$log" ] && echo "clean" > "$log"; done' _ {} \;
    sudo find /opt/platform-provisioner -iname "docker-registry.stdout.log" -exec sh -c 'echo "clean" > "$1"' _ {} \;
    sudo find /opt/platform-provisioner -iname "supportassist-vxflexappliance.stdout.log" -exec sh -c 'echo "clean" > "$1"' _ {} \;
    sudo find /opt/platform-provisioner -iname "temporal-history.stdout.log" -exec sh -c 'echo "clean" > "$1"' _ {} \;

Validering

Controleer met behulp van de volgende opdracht of het schijfgebruik is afgenomen. Wanneer het opschonen is voltooid met slechts één nalevingsbundel, kan het gebruik variëren van 35% tot 55%.

df -h /dev/sda2

Ex.
delladmin@pfmpn2:/opt> df -h /dev/sda2
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2       600G  218G  381G  37% /

sudo du -h --max-depth=1 /opt

Ex.
delladmin@pfmpn2:/opt> sudo du -h --max-depth=1 /opt
45G     ./platform
146M    ./rke2
294M    ./cni
84G     ./platform-provisioner
129G    .

Voer de volgende opdracht uit en controleer of alle pods actief zijn.

kubectl get pods -o wide -n powerflex

Houd het PFMP-cluster 24 uur in de gaten. Vervolgens kunnen de MVM-snapshots worden verwijderd.

Flere oplysninger

Ook kan het onderstaande script worden gebruikt voor het opruimen van PVC.

Het is veilig om het script te gebruiken omdat het de verwijderingen niet uitvoert. Het biedt de opdrachten die nodig zijn om te verwijderen. Het is echter een script dat niet door Dell wordt ondersteund; De aanbeveling is om de handmatige methode te gebruiken die in deze KB wordt behandeld. Het gebruik van dit script wordt niet ondersteund.

Een scriptbestand maken op een MVM.  Deze procedure zou moeten worden herhaald op de andere twee MVM's

 

#Create een leeg bestand
touch /home/delladmin/dockerpvcclean.sh

#Give de machtiging voor het uitvoeren van het bestand
chmod +x /home/dellamdin/dockerpvcclean.sh

#Use het volgende commando om het bestand te openen met de vi-editor
vi /home/delladmin/dockerpvcclean.sh

Met de vi-editor open, ga je in de invoegmodus door op de "i"-toets
te drukken#Copy de inhoud van het scriptbestand aan het einde van deze sectie. 
Klik met de rechtermuisknop in de terminal om de inhoud in het bestand te plakken.

#Save het bestand
{Druk op Esc om de invoegmodus te verlaten. Druk op {Shift}: 
Druk vervolgens op wq
Druk vervolgens op Enter (dit zal schrijven en de vi-editor afsluiten en terugkeren naar de opdrachtprompt)

#Confirm het bestand de inhoud van het script bevat
cat /home/delladmin/dockerpvcclean.sh

#To het script uit te voeren, voert u de volgende opdrachten uit.

sudo -s
/home/delladmin/dockerpvcclean.sh

Inhoud van scriptbestand

#!/bin/bash
# Set this node name
MYNODENAME=$(kubectl get node -o yaml |grep host |awk '{print $2}' |grep $(hostname))
echo "$MYNODENAME Free space on root partition:"
df -h /
#
DOCKER0PV=$(kubectl get pvc -n powerflex  docker-registry-data-docker-registry-0 -o json  | jq .spec.volumeName | sed 's/"//g')
DOCKER1PV=$(kubectl get pvc -n powerflex  docker-registry-data-docker-registry-1 -o json  | jq .spec.volumeName | sed 's/"//g')
echo Currently used docker-registry-0 PV is $DOCKER0PV
echo Currently used docker-registry-1 PV is $DOCKER1PV
#
# Show which hosts have the current running set of docker-registry pods
for DOCKPOD in $(kubectl get pods -A -o name | grep docker-registry | grep -v sync); do
REGHOST=$(kubectl get $DOCKPOD -n powerflex -o jsonpath='{.spec.nodeName}');
echo $REGHOST has $DOCKPOD;
done

#Check for the good/valid PV directories on this host
DOCKER0PVDIR=$(find /opt/platform-provisioner/ -type d -name $DOCKER0PV*)
DOCKER1PVDIR=$(find /opt/platform-provisioner/ -type d -name $DOCKER1PV*)
if [ -n "$DOCKER0PVDIR" ];
then
echo Keeping $DOCKER0PVDIR which is on this node
fi
if [ -n "$DOCKER1PVDIR" ];
then
echo Keeping $DOCKER1PVDIR which is on this node
fi

STALEDOCKERPVDIRS=$(find /opt/platform-provisioner/ -type d -name *docker-registry-data* | grep -v $DOCKER1PV | grep -v $DOCKER0PV; echo )

if [ -n "$STALEDOCKERPVDIRS" ];
then
echo ##################################
echo Found $(echo $STALEDOCKERPVDIRS | wc -w ) Stale PVs on $HOSTNAME;
  for CHECKSPACE in $(echo $STALEDOCKERPVDIRS); do
  echo
  echo $CHECKSPACE uses;
  du -hcs $CHECKSPACE;
  echo "#Please Run the following:"
  echo "rm -rf $CHECKSPACE"
  done
echo "A total of $(du -hcs $STALEDOCKERPVDIRS | grep total) can be saved"
else
        echo "Good news: No stale PVs related to docker-registry found!"
fi

 

Berørte produkter

PowerFlex rack connectivity, PowerFlex rack RCM Software, PowerFlex Software

Produkter

PowerFlex rack
Artikelegenskaber
Artikelnummer: 000348682
Artikeltype: How To
Senest ændret: 21 jan. 2026
Version:  5
Find svar på dine spørgsmål fra andre Dell-brugere
Supportservices
Kontrollér, om din enhed er dækket af supportservices.