Actualice Astra Control Center
Para actualizar Astra Control Center, descargue las imágenes de instalación y complete estas instrucciones. Puede utilizar este procedimiento para actualizar Astra Control Center en entornos conectados a Internet o con conexión por aire.
Estas instrucciones describen el proceso de actualización de Astra Control Center desde la segunda versión más reciente a esta versión actual. No puede actualizar directamente desde una versión que tenga dos o más versiones de la versión actual. Si la versión de Astra Control Center que tienes instalada es varias versiones detrás de la última versión, es posible que debas realizar actualizaciones en cadena a versiones más recientes hasta que el Astra Control Center instalado esté a solo una versión de la última versión. Para obtener una lista completa de las versiones lanzadas, consulte "notas de la versión".
Antes de actualizar, asegúrese de que su entorno siga cumpliendo con el "Requisitos mínimos para la puesta en marcha de Astra Control Center". Su entorno debe tener lo siguiente:
-
Un habilitado "Aprovisionador de Astra Control" Con Astra Trident Running
-
Determine la versión de Astra Trident que ejecuta:
kubectl get tridentversion -n trident
Si utiliza Astra Trident 23,01 o una versión anterior, utilice estos "instrucciones" Para actualizar a una versión más reciente de Astra Trident antes de actualizar a Astra Control Provisioner. Puede realizar una actualización directa a Astra Control Provisioner 24,02 si tu Astra Trident está en una ventana de cuatro versiones de la versión 24,02. Por ejemplo, puedes actualizar directamente de Astra Trident 23,04 a Astra Control Provisioner 24,02. -
Comprueba que el aprovisionador de Astra Control se ha realizado "activado". El aprovisionador de Astra Control no funcionará con versiones de Astra Control Center anteriores a la 23,10. Actualiza tu aprovisionador de Astra Control para que tenga la misma versión que Astra Control Center que actualizas para acceder a la funcionalidad más reciente.
-
-
Una distribución de Kubernetes soportada
Determine la versión de Kubernetes que ejecuta:
kubectl get nodes -o wide
-
Recursos suficientes del cluster
Determine los recursos de clúster disponibles:
kubectl describe node <node name>
-
Una clase de almacenamiento predeterminada
Determine su clase de almacenamiento predeterminada:
kubectl get storageclass
-
Servicios API saludables y disponibles
Asegúrese de que todos los servicios de API se encuentren en buen estado y estén disponibles:
kubectl get apiservices
-
(Solo registros locales) Un registro local que puedes usar para insertar y cargar imágenes de Astra Control Center
-
(Solo OpenShift) Operadores de clúster sanos y disponibles
Asegurarse de que todos los operadores del clúster se encuentren en estado correcto y estén disponibles.
kubectl get clusteroperators
También debe tener en cuenta lo siguiente:
Realice actualizaciones en una ventana de mantenimiento cuando no se estén ejecutando las programaciones, los backups y las snapshots. |
-
Acceso al registro de imágenes de NetApp Astra Control:
Tiene la opción de obtener imágenes de instalación y mejoras de funcionalidades para Astra Control, como Astra Control Provisioner, desde el registro de imágenes de NetApp.-
Registra tu ID de cuenta de Astra Control que tendrás que iniciar sesión en el registro.
Puedes ver tu ID de cuenta en la interfaz de usuario web de Astra Control Service. Selecciona el icono de la figura en la parte superior derecha de la página, selecciona Acceso API y escribe tu ID de cuenta.
-
En la misma página, selecciona Generar token de API y copia la cadena de token de API en el portapapeles y guárdalo en tu editor.
-
Inicia sesión en el Registro de Astra Control:
docker login cr.astra.netapp.io -u <account-id> -p <api-token>
-
-
Istio service mesh despliegues
Si instalaste una malla de servicio de Istio durante la instalación de Astra Control Center, esta actualización de Astra Control Center incluirá la malla de servicio de Istio. Si aún no tiene una malla de servicio, sólo puede instalar una durante un "puesta en marcha inicial" De Astra Control Center.
El proceso de actualización del Centro de control de Astra le guiará por los siguientes pasos de alto nivel:
Cierre la sesión de la interfaz de usuario de Astra Control Center antes de comenzar la actualización. |
No elimine el operador Astra Control Center (por ejemplo, kubectl delete -f astra_control_center_operator_deploy.yaml ) En cualquier momento durante la actualización o el funcionamiento de Astra Control Center para evitar la eliminación de las dosis.
|
Descargue y extraiga Astra Control Center
Descargue las imágenes del Centro de control de Astra de una de las siguientes ubicaciones:
-
Registro de imágenes del Servicio de control de Astra: Utilice esta opción si no utiliza un registro local con las imágenes del Centro de control de Astra o si prefiere este método a la descarga del paquete desde el Sitio de soporte de NetApp.
-
Sitio de soporte de NetApp: Utilice esta opción si utiliza un registro local con las imágenes del Centro de control de Astra.
-
Inicia sesión en el servicio Astra Control.
-
En el Dashboard, selecciona Desplegar una instancia autogestionada de Astra Control.
-
Sigue las instrucciones para iniciar sesión en el registro de imágenes de Astra Control, extraer la imagen de instalación de Astra Control Center y extraer la imagen.
-
Descargue el paquete que contiene Astra Control Center (
astra-control-center-[version].tar.gz
) del "Página de descargas de Astra Control Center". -
(Recomendado pero opcional) Descargue el paquete de certificados y firmas para Astra Control Center (
astra-control-center-certs-[version].tar.gz
) para verificar la firma del paquete.tar -vxzf astra-control-center-certs-[version].tar.gz
openssl dgst -sha256 -verify certs/AstraControlCenter-public.pub -signature certs/astra-control-center-[version].tar.gz.sig astra-control-center-[version].tar.gz
Se mostrará la salida
Verified OK
después de una verificación correcta. -
Extraiga las imágenes del paquete Astra Control Center:
tar -vxzf astra-control-center-[version].tar.gz
Complete los pasos adicionales si utiliza un registro local
Si tiene pensado enviar el paquete Centro de control de Astra a su registro local, debe usar el complemento de la línea de comandos kubectl de Astra de NetApp.
Elimine el complemento Astra kubectl de NetApp y vuelva a instalarlo
Debes usar la versión más reciente del complemento de línea de comandos kubectl de Astra de NetApp para insertar imágenes en un repositorio local de Docker.
-
Determine si tiene instalado el plugin:
kubectl astra
-
Realice una de estas acciones:
-
Si el plugin está instalado, el comando debe devolver la ayuda del plugin kubectl y puede eliminar la versión existente de kubectl-astra:
delete /usr/local/bin/kubectl-astra
. -
Si el comando devuelve un error, el plugin no está instalado y puede continuar con el siguiente paso para instalarlo.
-
-
Instale el complemento:
-
Enumere los binarios disponibles del complemento Astra kubectl de NetApp, y anote el nombre del archivo que necesita para el sistema operativo y la arquitectura de CPU:
La biblioteca de complementos kubectl forma parte del paquete tar y se extrae en la carpeta kubectl-astra
.
ls kubectl-astra/
-
Mueva el binario correcto a la ruta actual y cambie el nombre a.
kubectl-astra
:cp kubectl-astra/<binary-name> /usr/local/bin/kubectl-astra
-
Agregue las imágenes a su registro
-
Si planeas enviar el paquete Astra Control Center a tu registro local, completa la secuencia de pasos apropiada para tu motor de contenedores:
Docker-
Cambie al directorio raíz del tarball. Debería ver el
acc.manifest.bundle.yaml
archivo y estos directorios:acc/
kubectl-astra/
acc.manifest.bundle.yaml
-
Inserte las imágenes del paquete en el directorio de imágenes de Astra Control Center en su registro local. Realice las siguientes sustituciones antes de ejecutar el
push-images
comando:-
Sustituya <BUNDLE_FILE> por el nombre del archivo Astra Control Bundle (
acc.manifest.bundle.yaml
). -
Sustituya <MY_FULL_REGISTRY_PATH> por la URL del repositorio de Docker; por ejemplo, "https://<docker-registry>".
-
Reemplace <MY_REGISTRY_USER> por el nombre de usuario.
-
Sustituya <MY_REGISTRY_TOKEN> por un token autorizado para el registro.
kubectl astra packages push-images -m <BUNDLE_FILE> -r <MY_FULL_REGISTRY_PATH> -u <MY_REGISTRY_USER> -p <MY_REGISTRY_TOKEN>
-
Podman-
Cambie al directorio raíz del tarball. Debería ver este archivo y directorio:
acc/
kubectl-astra/
acc.manifest.bundle.yaml
-
Inicie sesión en su registro:
podman login <YOUR_REGISTRY>
-
Prepare y ejecute una de las siguientes secuencias de comandos personalizadas para la versión de Podman que utilice. Sustituya <MY_FULL_REGISTRY_PATH> por la URL del repositorio que incluye cualquier subdirectorio.
Podman 4
export REGISTRY=<MY_FULL_REGISTRY_PATH> export PACKAGENAME=acc export PACKAGEVERSION=24.02.0-69 export DIRECTORYNAME=acc for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //') astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::') podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath} podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath} done
Podman 3
export REGISTRY=<MY_FULL_REGISTRY_PATH> export PACKAGENAME=acc export PACKAGEVERSION=24.02.0-69 export DIRECTORYNAME=acc for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //') astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::') podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath} podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath} done
La ruta de acceso de imagen que crea el script debe parecerse a la siguiente, dependiendo de la configuración del Registro: https://downloads.example.io/docker-astra-control-prod/netapp/astra/acc/24.02.0-69/image:version
-
-
Cambie el directorio:
cd manifests
Instale el operador actualizado de Astra Control Center
-
(Solo registros locales) Si está utilizando un registro local, complete estos pasos:
-
Abra el YAML de implementación del operador de Astra Control Center:
vim astra_control_center_operator_deploy.yaml
Una muestra anotada de AYLMA sigue estos pasos. -
Si utiliza un registro que requiere autenticación, reemplace o edite la línea predeterminada de
imagePullSecrets: []
con lo siguiente:imagePullSecrets: [{name: astra-registry-cred}]
-
Cambiar
ASTRA_IMAGE_REGISTRY
para lakube-rbac-proxy
imagen a la ruta del registro en la que se insertó la imagen en un paso anterior. -
Cambiar
ASTRA_IMAGE_REGISTRY
para laacc-operator
imagen a la ruta del registro en la que se insertó la imagen en un paso anterior. -
Añada los siguientes valores a la
env
sección:- name: ACCOP_HELM_UPGRADETIMEOUT value: 300m
apiVersion: apps/v1 kind: Deployment metadata: labels: control-plane: controller-manager name: acc-operator-controller-manager namespace: netapp-acc-operator spec: replicas: 1 selector: matchLabels: control-plane: controller-manager strategy: type: Recreate template: metadata: labels: control-plane: controller-manager spec: containers: - args: - --secure-listen-address=0.0.0.0:8443 - --upstream=http://127.0.0.1:8080/ - --logtostderr=true - --v=10 image: ASTRA_IMAGE_REGISTRY/kube-rbac-proxy:v4.8.0 name: kube-rbac-proxy ports: - containerPort: 8443 name: https - args: - --health-probe-bind-address=:8081 - --metrics-bind-address=127.0.0.1:8080 - --leader-elect env: - name: ACCOP_LOG_LEVEL value: "2" - name: ACCOP_HELM_UPGRADETIMEOUT value: 300m image: ASTRA_IMAGE_REGISTRY/acc-operator:24.02.68 imagePullPolicy: IfNotPresent livenessProbe: httpGet: path: /healthz port: 8081 initialDelaySeconds: 15 periodSeconds: 20 name: manager readinessProbe: httpGet: path: /readyz port: 8081 initialDelaySeconds: 5 periodSeconds: 10 resources: limits: cpu: 300m memory: 750Mi requests: cpu: 100m memory: 75Mi securityContext: allowPrivilegeEscalation: false imagePullSecrets: [] securityContext: runAsUser: 65532 terminationGracePeriodSeconds: 10
-
-
Instale el operador actualizado de Astra Control Center:
kubectl apply -f astra_control_center_operator_deploy.yaml
Respuesta de ejemplo:
namespace/netapp-acc-operator unchanged customresourcedefinition.apiextensions.k8s.io/astracontrolcenters.astra.netapp.io configured role.rbac.authorization.k8s.io/acc-operator-leader-election-role unchanged clusterrole.rbac.authorization.k8s.io/acc-operator-manager-role configured clusterrole.rbac.authorization.k8s.io/acc-operator-metrics-reader unchanged clusterrole.rbac.authorization.k8s.io/acc-operator-proxy-role unchanged rolebinding.rbac.authorization.k8s.io/acc-operator-leader-election-rolebinding unchanged clusterrolebinding.rbac.authorization.k8s.io/acc-operator-manager-rolebinding configured clusterrolebinding.rbac.authorization.k8s.io/acc-operator-proxy-rolebinding unchanged configmap/acc-operator-manager-config unchanged service/acc-operator-controller-manager-metrics-service unchanged deployment.apps/acc-operator-controller-manager configured
-
Verifique que los pods se estén ejecutando:
kubectl get pods -n netapp-acc-operator
Actualice Astra Control Center
-
Edite el recurso personalizado de Astra Control Center (CR):
kubectl edit AstraControlCenter -n [netapp-acc or custom namespace]
Una muestra anotada de AYLMA sigue estos pasos. -
Cambie el número de versión de Astra (
astraVersion
dentro despec
) de23.10.0
para24.02.0
:No puede actualizar directamente desde una versión que tenga dos o más versiones de la versión actual. Para obtener una lista completa de las versiones lanzadas, consulte "notas de la versión". spec: accountName: "Example" astraVersion: "[Version number]"
-
Cambie el registro de imágenes:
-
(Sólo registros locales) Si está utilizando un registro local, compruebe que la ruta de acceso del registro de imágenes coincide con la ruta de registro en la que ha insertado las imágenes en un paso anterior. Actualizar
imageRegistry
dentro despec
si el registro local ha cambiado desde la última instalación. -
(Registro de imágenes de Astra Control) Utiliza el registro de imágenes de Astra Control (
cr.astra.netapp.io
) Utilizó para descargar el bundle de Astra Control actualizado.imageRegistry: name: "[cr.astra.netapp.io or your_registry_path]"
-
-
Añada lo siguiente a su
crds
configuración dentro despec
:crds: shouldUpgrade: true
-
Añada las siguientes líneas dentro de
additionalValues
dentro despec
En el Centro de control de Astra CR:additionalValues: nautilus: startupProbe: periodSeconds: 30 failureThreshold: 600 keycloak-operator: livenessProbe: initialDelaySeconds: 180 readinessProbe: initialDelaySeconds: 180
-
Guarde y salga del editor de archivos. Se aplicarán los cambios y comenzará la actualización.
-
(Opcional) Verifique que los POD terminan y estén disponibles de nuevo:
watch kubectl get pods -n [netapp-acc or custom namespace]
-
Espere a que las condiciones de estado de Astra Control indiquen que la actualización está completa y lista (
True
):kubectl get AstraControlCenter -n [netapp-acc or custom namespace]
Respuesta:
NAME UUID VERSION ADDRESS READY astra 9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f 24.02.0-69 10.111.111.111 True
Para supervisar el estado de actualización durante la operación, ejecute el siguiente comando: kubectl get AstraControlCenter -o yaml -n [netapp-acc or custom namespace]
Para inspeccionar los registros del operador de Astra Control Center, ejecute el siguiente comando:
kubectl logs deploy/acc-operator-controller-manager -n netapp-acc-operator -c manager -f
Comprobar el estado del sistema
-
Inicie sesión en Astra Control Center.
-
Compruebe que la versión se ha actualizado. Consulte la página Soporte de la interfaz de usuario.
-
Compruebe que todos los clústeres y aplicaciones gestionados siguen presentes y protegidos.