Драйвер CSI для PowerScale показує, що "не вдалося скопіювати обсяг"

Resumo: Драйвер інтерфейсу зберігання контейнерів (CSI) для PowerScale показує, що «не вдалося скопіювати обсяг» під час використання функції клонування тому.

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

У цьому сценарії збою в журналі контейнера драйверів контролера відображаються такі повідомлення. Дедлайн настає через дві хвилини з моменту первинного запиту 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"
 
 
 

Causa

У сценарії клонування томів є каталогами в PowerScale. Для клонування томів з існуючих (PVC) використовується інтерфейс прикладного програмування (API) копії PowerScale. При цьому виконується звичайне копіювання всіх файлів з одного каталогу в новий каталог. Час на виконання копії збільшується в міру збільшення розміру обсягу. Навантаження на масив також може вплинути на процес копіювання. Виклик API для виконання копії є синхронним викликом, тому запит HTTP PUT очікує завершення операції копіювання.
 
Тайм-аут ініціалізації за замовчуванням становить дві хвилини. Копіювання великих файлів і каталогів може зайняти більше двох хвилин. Коли досягається двохвилинний термін, виклик API завершується, а операція CreateVolume завершується помилкою. ПВХ залишається в стані очікування.

Resolução

Тайм-аут за замовчуванням для контейнера ініціалізації може бути змінено під час встановлення драйвера. Як діаграма Керма, так і зразки оператора підтверджують використання «--timeout=<interval>Варіант. Якщо проблема виникає, то визначте відповідне значення часу очікування на основі найбільших розмірів файлу або каталогу. Рекомендація становить від п'ятнадцяти до тридцяти хвилин.
 
Обережність: Збільшення тайм-ауту впливає на всі операції ініціалізації, включаючи create, extents, delete тощо. Ця зміна призначена як крайній захід і повинна використовуватися лише тоді, коли немає інших варіантів. Альтернативним вибором для клонування є створення знімка ПВХ, а потім створення тома, який можна монтувати лише для читання (RO) з цього знімка. Потім користувач може скопіювати файли з тому, якщо це необхідно. Використання знімків є кращим, ніж клонування томів, які можуть бути у використанні, і копіювання активного тому може створити неоднорідні копії.
 
Встановлення штурвала
Якщо ви встановлюєте драйвер за допомогою Helm, ви можете використовувати - "--timeout=30m" опція для встановлення тайм-ауту.
У цьому каталозі:
helm-charts/charts/csi-xxxxx/templates
Відредагуйте файл controller.yaml.
Замініть - "--timeout=120s" опція з функцією - "--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"
Потім з директорії інсталятора:
dell-csi-helm-installer
Інсталюйте з опцією оновлення.
./csi-install.sh --namespace xxxxx --values my-xxxxx-settings.yaml --upgrade
 
 
Інсталяція оператора
Якщо драйвер інстальовано за допомогою оператора, «--timeout" може бути додана до списку args коляски провайера:

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

Значення за замовчуванням:

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

Значення за замовчуванням з доданим тайм-аутом: 

        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.