Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official.

Migrando para SUSE Storage

É recomendado criar um backup do sistema Longhorn antes de fazer upgrade. Isso garante que todos os recursos críticos, como volumes e imagens de apoio, sejam incluídos no backup e possam ser restaurados caso surjam problemas.

Pré-requisitos

gerenciamento

Autenticação

Migrando Longhorn implantado via Helm para SUSE Storage

Se sua instalação existente do Longhorn foi implantada via Helm, você pode verificar isso executando helm list --all-namespaces. Por padrão, o release do Helm usado para instalar o Longhorn é nomeado longhorn, mas também pode ser um nome personalizado definido pelo usuário.

Em seguida, opcionalmente crie um arquivo values.yaml com quaisquer configurações personalizadas que você deseja aplicar durante o upgrade.

Prossiga com a atualização para SUSE Storage usando o chart SUSE Storage:

helm upgrade longhorn oci://dp.apps.rancher.io/charts/suse-storage \
    --namespace longhorn-system \
    --version <version> \ # Replace with the version you would like to upgrade to
    --set global.imagePullSecrets=<PULL_IMAGE_SECRET>

Opcionalmente, se você tiver um arquivo values.yaml com configurações personalizadas, inclua-o com a flag -f:

helm upgrade longhorn oci://dp.apps.rancher.io/charts/suse-storage \
    --namespace longhorn-system \
    --version <version> \ # Replace with the version you would like to upgrade to
    --set global.imagePullSecrets=<PULL_IMAGE_SECRET> \
    -f values.yaml

Migrando Longhorn implantado via Marketplace de Apps do Rancher para SUSE Storage

Se sua instalação existente do Longhorn foi implantada via Marketplace de Apps do Rancher, você verá dois releases do Helm associados ao Longhorn ao executar helm list --all-namespaces | grep longhorn.

O exemplo a seguir mostra a migração do Longhorn v1.10.1, instalado via charts do Rancher, para SUSE Storage v1.10.1.

$ helm list --all-namespaces | grep longhorn
longhorn                                             longhorn-system        1           2025-11-12 02:58:40.877484249 +0000 UTC    deployed    108.2.0+up1.10.1                                                                                   v1.10.1
longhorn-crd                                         longhorn-system        1           2025-11-12 02:58:38.192579711 +0000 UTC    deployed    longhorn-crd-108.2.0+up1.10.1                                                                               v1.10.1

Para migrar a instalação existente do Rancher Longhorn para SUSE Storage, você precisa excluir o release do Helm longhorn-crd sem remover os CRDs, e então fazer upgrade do release do Helm longhorn seguindo os passos abaixo.

Remover o release do Helm longhorn-crd mantendo os CRDs

Para remover o release do Helm longhorn-crd do seu sistema enquanto garante que os CRDs do Longhorn sejam preservados, siga estes passos:

  1. Verifique a versão atual do seu release do Helm longhorn-crd:

    helm list --all-namespaces | grep longhorn-crd

    A saída mostra os detalhes do seu release longhorn-crd, por exemplo:

    longhorn-crd                                         longhorn-system        1           2025-11-12 02:58:38.192579711 +0000 UTC    deployed    longhorn-crd-108.2.0+up1.10.1+up1.11.0                                                                               v1.10.1

    Neste exemplo, a versão do release é 108.2.0+up1.10.1.

  2. Clone o repositório rancher/charts contendo a versão específica do chart longhorn-crd que corresponde ao seu release atual (por exemplo, 108.2.0+up1.10.1 para Longhorn v1.10.1):

    git clone https://github.com/rancher/charts.git

    Navegue até o diretório correspondente à versão do chart longhorn-crd dentro do repositório clonado.

    Ou, você pode executar este script para o chart longhorn-crd.

    Após executar o comando bash ./download-longhorn-crd-chart.sh 108.2.0+up1.10.1, o chart longhorn-crd é baixado para o diretório local 108.2.0+up1.10.1. Em seguida, abra 108.2.0+up1.10.1/Chart.yaml para verificar se a versão do chart corresponde a 108.2.0+up1.10.1.

  3. Corrija manualmente a anotação helm.sh/resource-policy: keep para cada uma das definições de recursos personalizados (CRDs) em templates/crds.yaml dentro do chart longhorn-crd que você clonou. Isso garante que o Helm não exclua os CRDs quando o release for desinstalado. Alternativamente, você pode usar o script para corrigir automaticamente a anotação:

    bash ./patch-resource-policy-annotation.sh 108.2.0+up1.10.1/templates/crds.yaml

    Para verificar se os CRDs foram corrigidos corretamente, execute:

    vimdiff /tmp/crds.yaml.original 108.2.0+up1.10.1/templates/crds.yaml
  4. Atualize o release do Helm longhorn-crd usando o chart corrigido localmente:

    helm upgrade longhorn-crd -n longhorn-system ./108.2.0+up1.10.1
  5. Desinstale o release do Helm longhorn-crd do seu sistema. Devido ao patch aplicado, os CRDs permanecem intactos.

    helm uninstall longhorn-crd --namespace longhorn-system

    Você pode ver que os CRDs são mantidos enquanto desinstala o release do Helm longhorn-crd.

    $ helm uninstall longhorn-crd --namespace longhorn-system
    These resources were kept due to the resource policy:
    [CustomResourceDefinition] backingimagedatasources.longhorn.io
    [CustomResourceDefinition] backingimagemanagers.longhorn.io
    [CustomResourceDefinition] nodes.longhorn.io
    [CustomResourceDefinition] orphans.longhorn.io
    [CustomResourceDefinition] recurringjobs.longhorn.io
    [CustomResourceDefinition] replicas.longhorn.io
    [CustomResourceDefinition] settings.longhorn.io
    [CustomResourceDefinition] sharemanagers.longhorn.io
    [CustomResourceDefinition] snapshots.longhorn.io
    [CustomResourceDefinition] supportbundles.longhorn.io
    [CustomResourceDefinition] systembackups.longhorn.io
    [CustomResourceDefinition] systemrestores.longhorn.io
    [CustomResourceDefinition] backingimages.longhorn.io
    [CustomResourceDefinition] volumeattachments.longhorn.io
    [CustomResourceDefinition] volumes.longhorn.io
    [CustomResourceDefinition] backupbackingimages.longhorn.io
    [CustomResourceDefinition] backups.longhorn.io
    [CustomResourceDefinition] backuptargets.longhorn.io
    [CustomResourceDefinition] backupvolumes.longhorn.io
    [CustomResourceDefinition] engineimages.longhorn.io
    [CustomResourceDefinition] engines.longhorn.io
    [CustomResourceDefinition] instancemanagers.longhorn.io

Substitua longhorn-crd por longhorn nos CRDs do Longhorn

Após garantir que o release do Helm longhorn-crd está desinstalado, mas os CRDs são mantidos, você precisa atualizar os rótulos de propriedade nos CRDs do Longhorn existentes para se preparar para o chart principal do Helm longhorn. Aplique o shell script para realizar a substituição.

Faça upgrade para SUSE Storage

Após a preparação dos CRDs, você pode prosseguir com o upgrade da sua instalação do Longhorn para SUSE Storage:

helm upgrade longhorn oci://dp.apps.rancher.io/charts/suse-storage \
    --namespace longhorn-system \
    --version <version> \ # Replace with the version you would like to upgrade to
    --set global.imagePullSecrets=<PULL_IMAGE_SECRET>

Opcionalmente, se você tiver um arquivo values.yaml com configurações personalizadas, inclua-o com a flag -f:

helm upgrade longhorn oci://dp.apps.rancher.io/charts/suse-storage \
    --namespace longhorn-system \
    --version <version> \ # Replace with the version you would like to upgrade to
    --set global.imagePullSecrets=<PULL_IMAGE_SECRET> \
    -f values.yaml