PowerFlex: MVM Temizleme ve Alan Geri Kazanımı

Oversigt: Bu makalede, Yönetim Sanal Makinesi'nde (MVM'ler) nasıl alan kazanılacağı açıklanmaktadır.

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

UYARI: Bu KB de açıklanan görevleri gerçekleştirmeden önce MVM'lerin anlık görüntüsünü alın. Bu, docker PVC'lerini temizlerken bir hata yapılması ihtimaline karşı bir geri alma yöntemi sağlar. 

MVM Anlık Görüntüleri, MVM'ler çalışırken alınabilir. Bu adımları üç MVM için de uygulayın

  • vCenter'da oturum açın
  • Her MVM için aşağıdaki adımları uygulayın
  • MVM'ye tıklayın -->Anlık Görüntüler'e tıklayın -->ANLIK GÖRÜNTÜ AL...'a tıklayın.
    Şekerleme yapın
  • OLUŞTUR öğesine tıklayın

Eski docker-registry PVC'lerini temizleme

Adımlar

  1. Aşağıdaki komut "docker-registry" pod'larını ve podu çalıştıran MVM'yi listeler.

    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. Docker kayıt defteri için yapılandırılmış Kalıcı Disk Bölümü Taleplerinin çıktısını gözden geçirirken etkin PVC'ler için PVC kimlikleri listelenir. PVC verileri /opt/platform-provisioner/.

    Örneğin:

    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. Yukarıdaki dizin çıktısına baktığımızda "docker-registry-1" için iki dizin olduğunu görebilirsiniz. Docker registry 1" için geçerli PVC kimliği "pvc-0f689062-a700-48ad-8d10-65b985477e1a"dır. "docker-registry-1" için listelenen iki dizin olduğundan.

  4. Yer açmak için silinebilecek eski bir dizin var. Zaman içinde kaç tane eski dizin kaldığına bağlı olarak çok daha fazlası olabilir.

    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. Eski dizin 60 GB tüketiyor ve bu dizin silinebilir. Eski PVC kimliği "pvc-8a5f3651-dbd5-40a9-8252-51fd18539fc3"

    Eski dizin temizlemeden önce kullanılan alan

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

    Örneğin:
    Eski dizin 60 GB disk alanı tüketiyor.

    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. Eski "docker-registry" dizinini silme

  7. Eski dizin silindiğinde, 60 GB yer açar.

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

Eski IC/RCM Depo dizinlerini temizleme

  • IC/RCM UUID'lerini ve ilişkili adı almak için herhangi bir MVM'den aşağıdaki komutu çalıştırın. Varsayılan olarak yalnızca bir IC/RCM ayarlanabilir. Eski IC/RCM uyumluluk paketleri kaldırılabilir.

    Örneğin:
    Uyumluluk Sürümleri

    Örneğin:
    PFMP kullanıcı arayüzünde Uyumluluk Sürümlerine yalnızca bir IC/RCM eklendiğinden, veritabanı yalnızca bir tane raporlar.

    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)
  • Uyumluluk paketleri şurada depolanır: /opt/platform/fileshare üç MVM'de de. PFMP kullanıcı arayüzünde geçerli varsayılan Uyumluluk Sürümü ile ilişkili olmayan herhangi bir UUID, .zip uzantısına sahip uyumluluk paketleri görürseniz silinebilir. PFMP kullanıcı arayüzünde devam eden bir IC/RCM Senkronizasyonu olmadığını doğrulayın.

  • Tüm paketler Available durumundaysa. Yer açmak için .zip dosyaları silinebilir.

    Örneğin:

    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

    Örneğin:

  • Bu MVM pfmpn1, tamamlanmayan bir IC/RCM senkronizasyon görevinden .zip bir uyumluluk paketine sahiptir. Yer açmak için bu dosya silinebilir.

    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
  • Bu örnek, pfmpn3'ün, PFMP kullanıcı arayüzüne yalnızca bir IC/RCM Uyumluluk sürümü eklendiğinden artık gerekli olmayan eski bir IC/RCM uyumluluk sürümü dizini içerdiğini gösterir.

    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
  • Eski IC/RCM için diskte kullanılan alan

    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     .
  • Bu eski dizinle ilişkili IC/RCM'nin adını belirlemek için aşağıdaki komutu çalıştırabilirsiniz. Ortamınız için geçerli olan UUID'yi dahil etmek için komutu değiştirin.

    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">
  • Bu örnekteki geçerli varsayılan IC/RCM sürümü 46.382.00 olduğundan bu eski IC/RCM uyumluluk dizini 53 GB tüketmektedir. Kullanıcı arayüzünde eski IC/RCM referans alınmıyorsa bu dizin silinebilir. Bir IC/RCM kullanıcı arayüzünde hâlâ listeleniyorsa önce bunu kullanıcı arayüzünden kaldırın. Ardından dizinin temizlenip temizlenmediğini kontrol edin. Görünmüyorsa dizini manuel olarak silebilirsiniz.

  • MVM disk kullanımını sistem durumuna düşürmek için docker için eski PVC'leri temizlemek ve eski IC/RCM paketlerini temizlemek gerekir.

PFMP Yükseltme dizinlerini temizleme

PFMP yükseltmesi sırasında oluşturulan üç dizin vardır. PFMP yi başarıyla yükselttiyseniz ancak bir yükseltme aşamasını manuel olarak tamamlamak zorunda kalmışsanız dizinler temizlenmemiştir. Sahiplik izni sorunları varsa dizinler temizlenemeyebilir. Dizinler, her MVM'de /opt/platform/fileshare konumundadır. Geri kazanmak için en fazla alan sağlayan dizin "PFMPUpgradeBundle" dizinidir

Dizin Adları

  • PFMPUpgradeBundle
  • Platform
  • Yükseltme
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

Bu dizinleri silmek için aşağıdaki komutları çalıştırın.

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

Büyük pod günlüğü dosyalarını temizleme

  • Daha fazla alana ihtiyaç varsa kontrol edin ve gerekirse silin:

  • Alan sorunları olan herhangi bir PFMP (MVM) sunucusunda, günlük dosyalarının ne kadar büyük olduğunu kontrol etmek için aşağıdaki bulma komutlarını çalıştırın:

    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 {} \;
  • Aşağıdaki komutlar bu büyük günlük dosyalarını otomatik olarak kaldırır:

    Not: Dosyaların boyutu < 300 MB küçükse aşağıdaki silme komutlarını çalıştırmanız gerekmez. Büyüklerse, boyut 1 GB ile 100 + GB arasında değişebilir
    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"' _ {} \;

Geçerlilik

Aşağıdaki komutu kullanarak disk kullanımının azaldığını doğrulayın. Temizleme işlemi yalnızca bir uyumluluk paketiyle tamamlandığında kullanım %35 ile %55 arasında değişebilir.

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    .

Aşağıdaki komutu çalıştırın ve tüm bölmelerin Running durumunda olduğunu doğrulayın.

kubectl get pods -o wide -n powerflex

PFMP kümesini 24 saat izleyin. Ardından MVM anlık görüntüleri silinebilir.

Flere oplysninger

Ayrıca, PVC temizleme için aşağıdaki komut dosyası kullanılabilir.

Silme işlemlerini gerçekleştirmediği için komut dosyasını kullanmak güvenlidir. Silmek için gereken komutları sağlar. Ancak bu, Dell tarafından desteklenmeyen bir komut dosyasıdır; Bu KB de ele alınan manuel yöntemin kullanılması önerilir. Bu komut dosyasının kullanımı desteklenmemektedir.

MVM'de komut dosyası oluşturma.  Bu prosedürün diğer iki MVM'de tekrarlanması gerekir

 

Boş dosya #Create
touch /home/delladmin/dockerpvcclean.sh

#Give dosyaya izin verme işlemi
chmod +x /home/dellamdin/dockerpvcclean.sh

Dosyayı vi editor
vi /home/delladmin/ ile açmak için şu komutu #Use dockerpvcclean.sh

vi düzenleyicisi açıkken, bu bölümün sonundaki Komut Dosyası İçeriği #Copy "i" tuşuna
basarak ekleme moduna geçin. 
İçeriği dosyaya yapıştırmak için terminale sağ tıklayın.

Dosyayı
#Save {Ekleme modundan çıkmak için Esc tuşuna basın. {Shift} tuşuna basın: 
Ardından wq
tuşuna basın Ardından Enter tuşuna basın (Bu, vi düzenleyicisini yazıp çıkacak ve komut istemine dönecektir)

#Confirm dosya komut dosyası içeriğini içerir
cat /home/delladmin/dockerpvcclean.sh

Komut dosyasını gerçekleştirmek #To aşağıdaki komutları çalıştırın.

sudo -s
/home/delladmin/dockerpvcclean.sh

Script File Content

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