Actualice Astra Control Center
Para actualizar Astra Control Center, descargue el paquete de instalación desde el sitio de soporte de NetApp 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:
-
A "compatible" Versión Astra Trident
Expanda para obtener los pasos
Determine la versión de Trident que ejecuta:
kubectl get tridentversion -n trident
Actualiza Astra Trident, si es necesario, mediante estos "instrucciones".
La versión 23,10 es la última versión de Astra Control Center que será compatible con Astra Trident. Se recomienda encarecidamente que usted "Habilita el aprovisionador de Astra Control" Para acceder a funciones avanzadas de aprovisionamiento de almacenamiento y gestión más allá de las que ofrece Astra Trident. Ambos tendrás que actualizar a Astra Control Center 23,10 y habilitar Astra Control Provisioner para utilizar esta funcionalidad ampliada. El aprovisionador de Astra Control no funcionará con versiones anteriores de Astra Control Center. |
-
Una distribución de Kubernetes soportada
Expanda para obtener los pasos
Determine la versión de Kubernetes que ejecuta:
kubectl get nodes -o wide
-
Recursos suficientes del cluster
Expanda para obtener los pasos
Determine los recursos de clúster disponibles:
kubectl describe node <node name>
-
Un registro que puedes usar para insertar y cargar imágenes de Astra Control Center
-
Una clase de almacenamiento predeterminada
Expanda para obtener los pasos
Determine su clase de almacenamiento predeterminada:
kubectl get storageclass
-
Servicios API saludables y disponibles
Expanda para obtener los pasos
Asegúrese de que todos los servicios de API se encuentren en buen estado y estén disponibles:
kubectl get apiservices
-
(Solo OpenShift) Operadores de clúster sanos y disponibles
Expanda para obtener los pasos
Asegurarse de que todos los operadores del clúster se encuentren en estado correcto y estén disponibles.
kubectl get clusteroperators
-
Acceda 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.Expanda para obtener los pasos
-
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>
-
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.
|
Realice actualizaciones en una ventana de mantenimiento cuando no se estén ejecutando las programaciones, los backups y las snapshots. |
Descargue y extraiga Astra Control Center
Puede elegir descargar el paquete Astra Control Center desde el sitio de soporte de NetApp o utilizar Docker para extraer el paquete del registro de imágenes del servicio de control de Astra.
-
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.Amplíe para obtener más detalles
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
-
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.
Elimine el complemento Astra kubectl de NetApp y vuelva a instalarlo
Puede utilizar el complemento de línea de comandos kubectl de Astra de NetApp para insertar imágenes en un repositorio de Docker local.
-
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 al registro local
-
Complete la secuencia de pasos apropiada para el motor del contenedor:
-
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>
-
-
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=23.10.0-68 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=23.10.0-68 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/23.10.0-68/image:version
Instale el operador actualizado de Astra Control Center
-
Cambie el directorio:
cd manifests
-
Edite la implementación del operador de Astra Control Center yaml (
astra_control_center_operator_deploy.yaml
) para referirse a su registro local y secreto.vim astra_control_center_operator_deploy.yaml
-
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
Ejemplo de astra_control_center_operator_deploy.yaml:
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:23.10.72 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]
-
Cambie el número de versión de Astra (
astraVersion
dentro despec
) de23.07.0
para23.10.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]"
-
Compruebe que la ruta del Registro de imágenes coincide con la ruta del Registro a la que ha insertado las imágenes en paso anterior. Actualizar
imageRegistry
dentro despec
si el registro ha cambiado desde la última instalación.imageRegistry: name: "[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 23.10.0-68 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.