PowerFlex: Vyčištění MVM a opětovné získání místa

Oversigt: Tento článek vysvětluje, jak uvolnit místo na virtuálním počítači pro správu (MVM).

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

VÝSTRAHA: Před provedením úloh popsaných v tomto článku znalostní databáze pořiďte snapshot modulů MVM. To poskytne metodu vrácení zpět v případě, že při čištění PVC dockeru dojde k chybě. 

Snímky MVM je možné pořizovat, když jsou spuštěné fondy MVM. Tyto kroky použijte pro všechny tři nástroje MVM.

  • Přihlaste se do nástroje vCenter.
  • Pro každý MVM proveďte následující kroky:
  • Klikněte na MVM –> klikněte na Snapshots –> klikněte na TAKE SNAPSHOT....
    Zdřímnout si
  • Klikněte na VYTVOŘIT.

Vyčištění zastaralých PVC docker-registry

Postup

  1. Následující příkaz vypíše pody "docker-registry" a zobrazí MVM, na kterém je pod spuštěný.

    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. Když si prohlédnete výstup nakonfigurovaných deklarací identity trvalých svazků pro docker-registry, zobrazí se ID PVC pro aktivní PVC. Data PVC jsou uložena v /opt/platform-provisioner/.

    Příklad:

    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. Když se podíváme na výše uvedený výstup adresáře, zjistíte, že existují dva adresáře pro "docker-registry-1". Aktuální ID PVC pro docker registry 1 je "pvc-0f689062-a700-48ad-8d10-65b985477e1a". Protože pro "docker-registry-1" jsou uvedeny dva adresáře.

  4. Existuje jeden zastaralý adresář, který lze odstranit a uvolnit tak místo. V závislosti na tom, kolik zastaralých adresářů v průběhu času zbylo, jich může být mnohem více.

    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. Zastaralý adresář spotřebovává 60 GB a tento adresář je možné odstranit. Zastaralý identifikátor PVC je "pvc-8a5f3651-dbd5-40a9-8252-51fd18539fc3".

    Místo využité před vyčištěním zastaralého adresáře

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

    Příklad:
    Zastaralý adresář spotřebovává 60 GB místa na disku.

    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. Odstranění zastaralého adresáře "docker-registry"

  7. Když se zastaralý adresář odstraní, uvolní se 60 GB.

    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% /

Vyčistěte staré adresáře úložiště IC/RCM

  • Spuštěním následujícího příkazu z libovolného nástroje MVM získejte identifikátory UUID IC/RCM a přidružený název. Na výchozí hodnotu může být nastaven pouze jeden IC/RCM. Starší balíčky souladu IC/RCM je možné odebrat.

    Příklad:
    Verze souladu

    Příklad:
    Vzhledem k tomu, že v uživatelském rozhraní PFMP je do verzí souladu přidán pouze jeden IC/RCM, databáze hlásí pouze jednu.

    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)
  • Balíčky pro dodržování předpisů se ukládají /opt/platform/fileshare na všech třech MVM. Jakékoli UUID, které není přidružené k aktuální výchozí verzi souladu v uživatelském rozhraní PFMP, je možné odstranit, pokud vidíte balíčky dodržování předpisů s příponou .zip. Ověřte, zda v uživatelském rozhraní PFMP neprobíhá žádná synchronizace IC/RCM.

  • Pokud jsou všechny balíčky ve stavu "Available". Soubory .zip lze uvolnit místo odstraněním.

    Příklad:

    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

    Příklad:

  • Tento MVM pfmpn1 obsahuje balíček kompatibility v .zip z úlohy synchronizace IC/RCM, která se nedokončila. Tento soubor lze odstranit a uvolnit tak místo.

    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
  • Tento příklad ukazuje, že pfmpn3 obsahuje starý adresář verze souladu IC/RCM, který již není potřeba, protože v uživatelském rozhraní PFMP je přidána pouze jedna verze souladu IC/RCM.

    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
  • Místo spotřebované na disku pro staré 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     .
  • Spuštěním následujícího příkazu můžete identifikovat název IC/RCM přidruženého k tomuto starému adresáři. Upravte příkaz tak, aby zahrnoval UUID platné pro vaše prostředí.

    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">
  • Tento starý adresář pro kompatibilitu IC/RCM spotřebovává 53 GB, protože aktuální výchozí verze IC/RCM v tomto příkladu je 46.382.00. Pokud uživatelské rozhraní neodkazuje na starý IC/RCM, lze tento adresář odstranit. Pokud je IC/RCM stále uveden v uživatelském rozhraní, nejprve jej odeberte z uživatelského rozhraní. Poté zkontrolujte, zda je adresář vyčištěn. Pokud tomu tak není, můžete adresář odstranit ručně.

  • Vyčištění zastaralých PVC pro docker a vyčištění starých balíčků IC/RCM by mělo být vše, co je potřeba k tomu, aby se využití disku MVM snížilo na úroveň stavu.

Vyčištění adresářů pro upgrade PFMP

Existují tři adresáře, které se vytvoří během upgradu PFMP. Pokud jste úspěšně aktualizovali PFMP, ale museli jste ručně dokončit fázi aktualizace, adresáře nebyly vyčištěny. Adresáře se také nemusí podařit vyčistit, pokud došlo k problémům s vlastnickými oprávněními. Adresáře jsou v /opt/platform/fileshare na každém MVM. Adresář, který poskytuje nejvíce místa k uvolnění, je "PFMPUpgradeBundle"

Názvy adresářů

  • PFMPUpgradeBundle
  • Platforma
  • 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

Spuštěním následujících příkazů tyto adresáře odstraňte.

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

Vyčištění velkých souborů protokolu podů

  • Pokud je potřeba více místa, zkontrolujte a v případě potřeby odstraňte:

  • Na každém serveru PFMP (MVM), u kterého dochází k problémům s místem, spusťte následující příkazy find a zkontrolujte, jak velké jsou soubory protokolu:

    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 {} \;
  • Následující příkazy automaticky odeberou tyto velké soubory protokolu:

    Poznámka: Níže uvedené příkazy pro odstranění není nutné spouštět, pokud jsou soubory malé a mají velikost < 300 MB. Pokud jsou velké, velikost se může pohybovat mezi 1 GB a 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"' _ {} \;

Ověření

Pomocí následujícího příkazu ověřte, zda se snížilo využití disku. Po dokončení čištění pouze s jedním balíčkem dodržování předpisů může být využití v rozsahu od 35 % do 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    .

Spusťte následující příkaz a ověřte, že jsou všechny pody ve stavu Spuštěno.

kubectl get pods -o wide -n powerflex

Monitorujte cluster PFMP po dobu 24 hodin. Pak je možné snímky MVM odstranit.

Flere oplysninger

Pro vyčištění PVC lze také použít níže uvedený skript.

Použití skriptu je bezpečné, protože neprovádí odstranění. Poskytuje příkazy potřebné k odstranění. Jedná se však o nepodporovaný skript společností Dell. Doporučujeme použít ruční metodu popsanou v tomto článku znalostní databáze. Použití tohoto skriptu není podporováno.

Jak vytvořit soubor skriptu v MVM.  Tento postup by bylo nutné zopakovat u dalších dvou MVM

 

#Create prázdného souboru
touch /home/delladmin/dockerpvcclean.sh

#Give oprávnění k provádění souborů.
chmod +x /home/dellamdin/dockerpvcclean.sh

#Use následující příkaz a otevřete soubor pomocí editoru
vivi /home/delladmin/dockerpvcclean.sh

Otevřete editor vi a stisknutím klávesy
"i" přejděte do režimu vkládání#Copy části Obsah souboru skriptu na konci této části. 
Kliknutím pravým tlačítkem myši do terminálu vložíte obsah do souboru.

#Save soubor
{Stisknutím klávesy Esc ukončete režim vkládání. Stiskněte klávesu {Shift}: 
Poté stiskněte wq
Poté stiskněte Enter (tímto napíšete a ukončíte editor vi a vrátíte se do příkazového řádku)

#Confirm soubor obsahuje obsah skriptu
cat /home/delladmin/dockerpvcclean.sh

#To provedení skriptu spusťte následující příkazy.

sudo -s
/home/delladmin/dockerpvcclean.sh

Obsah souboru skriptu

#!/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.