CSI-driver voor PowerScale geeft aan dat "copy volume failed"

Resumo: De CSI-driver (Container Storage Interface) voor PowerScale geeft aan dat "copy volume failed" bij gebruik van de functie voor het klonen van volumes.

Este artigo aplica-se a Este artigo não se aplica a Este artigo não está vinculado a nenhum produto específico. Nem todas as versões do produto estão identificadas neste artigo.

Sintomas

In dit foutscenario worden de volgende berichten weergegeven in het drivercontainerlogboek van de controllerpod. De deadline vindt plaats na twee minuten na het eerste PUT-verzoek:
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"
 
 
 

Causa

In het scenario voor het klonen van volumes zijn volumes mappen in PowerScale. Het klonen van bestaande volumes (PVC's) maakt gebruik van de PowerScale copy Application Programming Interface (API's). Hiermee wordt een normale kopie van alle bestanden in één map naar de nieuwe map uitgevoerd. De tijd die nodig is om de kopie te voltooien neemt toe naarmate het volume groter wordt. De belasting van de array kan ook van invloed zijn op het kopieerproces. De API-aanroep om de kopie uit te voeren is een synchrone aanroep, dus de HTTP PUT-aanvraag wacht tot de kopieerbewerking is voltooid.
 
De standaard time-out voor provisioning is twee minuten. Het kopiëren van grote bestanden en mappen kan langer dan twee minuten duren. Wanneer de deadline van twee minuten is bereikt, wordt de API-aanroep afgebroken en mislukt de bewerking CreateVolume. Het PVC blijft in de status In behandeling.

Resolução

De standaard time-out voor de provisioning-container kan worden gewijzigd tijdens de installatie van de driver. Zowel de Helm-kaart als de Operator-voorbeelden ondersteunen het gebruik van de "--timeout=<interval>" optie. Als het probleem zich voordoet, bepaal dan een geschikte time-outwaarde op basis van de grootste bestands- of mapgroottes. De aanbeveling is vijftien tot dertig minuten.
 
Let op: Het verhogen van de time-out heeft invloed op alle inrichtingsbewerkingen, waaronder maken, bereiken, verwijderen, enzovoort. Deze wijziging is bedoeld als laatste redmiddel en mag alleen worden gebruikt als er geen andere opties beschikbaar zijn. Een alternatieve keuze voor klonen is om een snapshot van een PVC te maken en vervolgens een alleen-lezen (RO) koppelbaar volume te maken van die snapshot. De gebruiker kan vervolgens indien nodig bestanden van het volume kopiëren. Het gebruik van snapshots is superieur aan het klonen van volumes die mogelijk in gebruik zijn en het kopiëren van een actief volume kan inconsistente kopieën maken.
 
Roerinstallatie
Als u de driver via Helm installeert, kunt u de - "--timeout=30m" Optie om de time-out in te stellen.
In deze directory:
helm-charts/charts/csi-xxxxx/templates
Bewerk het bestand controller.yaml.
Plaats de - "--timeout=120s" optie met de - "--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"
Vervolgens vanuit de map met het installatieprogramma:
dell-csi-helm-installer
Installeer met de upgradeoptie.
./csi-install.sh --namespace xxxxx --values my-xxxxx-settings.yaml --upgrade
 
 
Installatie door operator
Als u de driver installeert met de operator, wordt de "--timeout" optie kan worden toegevoegd aan de ARGS-lijst van de provisioner sidecar:

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

De standaardwaarde:

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

De standaardwaarde met de time-out toegevoegd: 

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

 

Produtos

Container Storage Modules Family, Container Storage Modules
Propriedades do artigo
Número do artigo: 000289749
Tipo de artigo: Solution
Último modificado: 03 set. 2025
Versão:  2
Encontre as respostas de outros usuários da Dell para suas perguntas.
Serviços de suporte
Verifique se o dispositivo está coberto pelos serviços de suporte.