|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Migrando a SUSE Storage
|
Se recomienda crear una copia de seguridad del sistema Longhorn antes de realizar la actualización. Esto asegura que todos los recursos críticos, como volúmenes y backing images, estén respaldados y puedan ser restaurados en caso de que surjan problemas. |
Requisitos previos
Herramientas
-
Helm v3.0 o posterior es necesario.
-
La herramienta shell de Longhorn se puede utilizar para comprobar el entorno SUSE Storage en busca de problemas potenciales.
Autenticación
-
Para autenticar Helm con el repositorio OCI de gráficos de SUSE Application Collection, consulta la documentación de autenticación de Helm.
-
Para permitir que Kubernetes extraiga imágenes del registro, sigue la documentación de autenticación de Kubernetes para crear un secreto y establecer el valor del gráfico
global.imagePullSecrets.
Migrando Longhorn desplegado a través de Helm a SUSE Storage
Si tu instalación existente de Longhorn fue desplegada a través de Helm, puedes verificarlo ejecutando helm list --all-namespaces. Por defecto, el lanzamiento de Helm utilizado para instalar Longhorn se llama longhorn, pero también puede ser un nombre personalizado definido por el usuario.
A continuación, opcionalmente crea un archivo values.yaml con cualquier configuración personalizada que desees aplicar durante la actualización.
Procede con la actualización a SUSE Storage utilizando el gráfico 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, si tienes un archivo values.yaml con configuraciones personalizadas, inclúyelo con la bandera -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 desplegado a través del Mercado de Aplicaciones de Rancher a SUSE Storage
Si tu instalación existente de Longhorn fue desplegada a través del Mercado de Aplicaciones de Rancher, verás dos lanzamientos de Helm asociados con Longhorn al ejecutar helm list --all-namespaces | grep longhorn.
El siguiente ejemplo es migrar Longhorn v1.10.1 instalado a través de gráficos de Rancher a 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 la instalación existente de Rancher Longhorn a SUSE Storage, necesitas eliminar el lanzamiento de Helm longhorn-crd sin eliminar los CRDs, y luego actualizar el lanzamiento de Helm longhorn siguiendo los pasos a continuación.
Eliminar el lanzamiento de Helm longhorn-crd mientras se mantienen los CRDs
Para eliminar el lanzamiento de Helm longhorn-crd de tu sistema mientras aseguras que los CRDs de Longhorn se conserven, sigue estos pasos:
-
Verifica la versión actual de tu lanzamiento de Helm
longhorn-crd:helm list --all-namespaces | grep longhorn-crdLa salida muestra los detalles de tu lanzamiento
longhorn-crd, por ejemplo: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.1En este ejemplo, la versión del lanzamiento es
108.2.0+up1.10.1. -
Clona el repositorio
rancher/chartsque contiene la versión específica del gráficolonghorn-crdque coincide con tu lanzamiento actual (por ejemplo,108.2.0+up1.10.1para Longhorn v1.10.1):git clone https://github.com/rancher/charts.gitNavega al directorio correspondiente a la versión de tu gráfico
longhorn-crddentro del repositorio clonado.O, puedes ejecutar este guion para el gráfico
longhorn-crd.Después de ejecutar el comando
bash ./download-longhorn-crd-chart.sh 108.2.0+up1.10.1, el gráficolonghorn-crdse descarga en el directorio local108.2.0+up1.10.1. Luego, abre108.2.0+up1.10.1/Chart.yamlpara verificar que la versión del gráfico coincida con108.2.0+up1.10.1. -
Parchea manualmente la anotación
helm.sh/resource-policy: keepen cada definición de recurso personalizada (CRD) entemplates/crds.yamldentro del gráficolonghorn-crdque clonaste. Esto asegura que Helm no elimine los CRDs cuando se desinstale el lanzamiento. Alternativamente, puedes usar el script para parchear automáticamente la anotación:bash ./patch-resource-policy-annotation.sh 108.2.0+up1.10.1/templates/crds.yamlPara verificar que los CRDs han sido parcheados correctamente, ejecuta:
vimdiff /tmp/crds.yaml.original 108.2.0+up1.10.1/templates/crds.yaml -
Actualiza el lanzamiento de Helm
longhorn-crdutilizando el gráfico parcheado localmente:helm upgrade longhorn-crd -n longhorn-system ./108.2.0+up1.10.1 -
Desinstala el lanzamiento de Helm
longhorn-crdde tu sistema. Debido al parche aplicado, los CRDs permanecen intactos.helm uninstall longhorn-crd --namespace longhorn-systemPuedes ver que los CRDs se mantienen mientras desinstalas el lanzamiento de 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
Reemplaza longhorn-crd con longhorn en los CRDs de Longhorn
Después de asegurarte de que el lanzamiento de Helm longhorn-crd está desinstalado, pero se han conservado los CRDs, necesitas actualizar las etiquetas de propiedad en los CRDs de Longhorn existentes para el gráfico principal de Helm longhorn. Aplica el guion de shell para realizar el reemplazo.
Actualiza la versión a SUSE Storage
Una vez que se hayan preparado los CRDs, puedes proceder a actualizar la versión de tu instalación de Longhorn a 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, si tienes un archivo values.yaml con configuraciones personalizadas, inclúyelo con la bandera -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