Ovladač CSI pro zařízení PowerScale zobrazuje chybu "copy volume failed"

Shrnutí: Ovladač CSI (Container Storage Interface) pro zařízení PowerScale zobrazuje při použití funkce klonování svazku zprávu "copy volume failed".

Tento článek se vztahuje na Tento článek se nevztahuje na Tento článek není vázán na žádný konkrétní produkt. V tomto článku nejsou uvedeny všechny verze produktu.

Příznaky

V tomto scénáři selhání se v protokolu kontejneru ovladače podu řadiče zobrazí následující zprávy. Konečný termín nastane po dvou minutách od počátečního požadavku PUT:
time="2025-02-24T21:30:33Z" level=debug clusterName=bolt-pscale runid=32 msg="begin to copy volume 'csivol-6084568f01'" file="/go/src/service/isiService.go:58"
[DEBUG]
    -------------------------- GOISILON HTTP REQUEST -------------------------
    PUT /namespace/ifs/data/csi/csivol-c9fce250bd?merge=True HTTP/1.1
    Host: 10.247.100.10:8080
    Authorization: admin:******
    X-Isi-Ifs-Copy-Source: /namespace/ifs/data/csi/csivol-6084568f01
    X-Isi-Ifs-Mode-Mask: preserve
time="2025-02-24T21:32:33Z" level=error clusterName=<clustername> runid=32 msg="copy volume failed, 'Put "https://<IP>:8080/namespace/ifs/data/csi/csivol-c9fce250bd?merge=True": context deadline exceeded'" file="/go/src/service/isiService.go:63"
time="2025-02-24T21:32:33Z" level=debug clusterName=bolt-pscale runid=32 msg="begin to delete volume directory 'csivol-c9fce250bd'" file="/go/src/service/isiService.go:358"

Příčina

Ve scénáři klonování svazku jsou svazky adresáře v PowerScale. Klonování svazků ze stávajících svazků (PVC) využívá kopírovací rozhraní API (Application Programming Interface) PowerScale. Tím se provede normální kopie všech souborů v jednom adresáři do nového adresáře. Se zvětšující se velikostí svazku se prodlužuje doba potřebná k dokončení kopírování. Zatížení pole může také ovlivnit proces kopírování. Volání rozhraní API k provedení kopírování je synchronní volání, takže požadavek HTTP PUT čeká na dokončení operace kopírování.
 
Výchozí časový limit zřizování jsou dvě minuty. Kopírování velkých souborů a adresářů může trvat déle než dvě minuty. Po dosažení dvouminutového termínu se volání rozhraní API ukončí a operace CreateVolume se nezdařila. PVC zůstává ve stavu Čeká na vyřízení.

Řešení

Výchozí časový limit zřizovacího kontejneru lze změnit při instalaci ovladače. Ukázky diagramu Helm i operátoru podporují použití "--timeout=<interval>“. Pokud k problému dochází, určete vhodnou hodnotu časového limitu na základě největších velikostí souborů nebo adresářů. Doporučení je patnáct až třicet minut.
 
Upozornění: Zvýšení časového limitu má vliv na všechny operace zřizování, včetně vytvoření, rozsahů, odstranění atd. Tato změna je zamýšlena jako poslední možnost a měla by být použita pouze v případě, že nejsou k dispozici žádné jiné možnosti. Alternativní možností klonování je pořídit snapshot PVC a poté z něj vytvořit svazek pouze pro čtení (RO). Uživatel pak může v případě potřeby kopírovat soubory ze svazku. Použití snapshotů je lepší než klonování svazků, které se mohou používat, a kopírování aktivního svazku může vytvářet nekonzistentní kopie.
 
Instalace kormidla
Pokud instalujete ovladač pomocí Helm, můžete použít - "--timeout=30m" možnost nastavení časového limitu.
V tomto adresáři:
helm-charts/charts/csi-xxxxx/templates
Upravte soubor controller.yaml.
Nahraďte soubor - "--timeout=120s" s parametrem - "--timeout=30m" .
 
 - name: provisioner{{ $csiSidecarSuffix }}
          image: {{ required "Must provide the CSI provisioner container image." .Values.images.provisioner }}
          imagePullPolicy: {{ .Values.imagePullPolicy }}
          args:
            - "--csi-address={{ $driverSockPath }}"
            - "--volume-name-prefix={{ required "Must provide a value to prefix to driver created volume names" .Values.controller.volumeNamePrefix }}"
            - "--volume-name-uuid-length=10"
            - "--worker-threads=5"
            - "--timeout=120s"                     #<<<<Modify this value
            - "--v=5"
Poté z instalačního adresáře:
dell-csi-helm-installer
Instalace s možností upgradu.
./csi-install.sh --namespace xxxxx --values my-xxxxx-settings.yaml --upgrade
 
 
Instalace operátora
Pokud instalujete ovladač s obsluhou, zobrazí se "--timeout" lze přidat do seznamu args sajdkáry zřizovatele:

https://github.com/dell/csm-operator/blob/d3a934c216db4d2f2f044ec08d004a85c00b1fcf/samples/storage_csm_powerscale_v2130.yaml#L243

Výchozí hodnota:

       image: registry.k8s.io/sig-storage/csi-provisioner:v5.1.0
        args: ["--volume-name-prefix=csivol"]

Výchozí hodnota s přidaným časovým limitem: 

        image: registry.k8s.io/sig-storage/csi-provisioner:v5.1.0
        args: ["--volume-name-prefix=csivol","--timeout=30m"]

 

Produkty

Container Storage Modules Family, Container Storage Interface (CSI) Family, Container Storage Modules
Vlastnosti článku
Číslo článku: 000289749
Typ článku: Solution
Poslední úprava: 30 čvn 2026
Verze:  4
Najděte odpovědi na své otázky od ostatních uživatelů společnosti Dell
Služby podpory
Zkontrolujte, zda se na vaše zařízení vztahují služby podpory.