Instale Astra Control Center mediante el proceso estándar
Para instalar Astra Control Center, descargue el paquete de instalación desde el sitio de soporte de NetApp y realice los siguientes pasos para instalar Astra Control Center Operator y Astra Control Center en su entorno. Puede utilizar este procedimiento para instalar Astra Control Center en entornos conectados a Internet o con conexión por aire.
Para entornos Red Hat OpenShift, también puede utilizar un "procedimiento alternativo" Para instalar Astra Control Center con OpenShift OperatorHub.
-
Asegurarse de que todos los operadores del clúster se encuentren en estado correcto y estén disponibles.
Ejemplo de OpenShift:
oc get clusteroperators
-
Asegúrese de que todos los servicios de API se encuentren en buen estado y estén disponibles:
Ejemplo de OpenShift:
oc get apiservices
-
Ha creado una dirección FQDN para Astra Control Center en su centro de datos.
El proceso de instalación de Astra Control Center realiza lo siguiente:
-
Instala los componentes de Astra en
netapp-acc
(o espacio de nombres personalizado). -
Crea una cuenta predeterminada.
-
Establece una dirección de correo electrónico de usuario administrativo predeterminada y una contraseña única predeterminada de
ACC-<UUID_of_installation>
Por este ejemplo de Astra Control Center. A este usuario se le asigna el rol de propietario del sistema y es necesario iniciar sesión por primera vez en la interfaz de usuario. -
Le ayuda a determinar que se están ejecutando todas las pods de Astra Control Center.
-
Instala la interfaz de usuario de Astra.
Los comandos de Podman se pueden utilizar en lugar de los comandos de Docker si está utilizando Podman de Red Hat en lugar de Docker Engine. |
No ejecute el siguiente comando durante todo el proceso de instalación para evitar eliminar todas las POD de Astra Control Center: kubectl delete -f astra_control_center_operator_deploy.yaml
|
Para instalar Astra Control Center, lleve a cabo los siguientes pasos:
Complete la implementación llevando a cabo "tareas de configuración".
Descargue el paquete Astra Control Center
-
Descargue el paquete Astra Control Center (
astra-control-center-[version].tar.gz
) del "Sitio de soporte de NetApp". -
Descargue el archivo zip de los certificados y claves de Astra Control Center de "Sitio de soporte de NetApp".
-
(Opcional) Use el siguiente comando para verificar la firma del paquete:
openssl dgst -sha256 -verify astra-control-center[version].pub -signature <astra-control-center[version].sig astra-control-center[version].tar.gz
Desembale el paquete y cambie el directorio
-
Extraiga las imágenes:
tar -vxzf astra-control-center-[version].tar.gz
-
Cambie al directorio Astra.
cd astra-control-center-[version]
Agregue las imágenes al registro local
-
Agregue los archivos del directorio imagen de Astra Control Center al registro local.
Consulte secuencias de comandos de ejemplo para la carga automática de imágenes a continuación. -
Inicie sesión en su registro:
Docker:
docker login [your_registry_path]
Podman:
podman login [your_registry_path]
-
Utilice la secuencia de comandos adecuada para cargar las imágenes, etiquetar las imágenes y empuje las imágenes en el registro local:
Docker:
export REGISTRY=[Docker_registry_path] for astraImageFile in $(ls images/*.tar) ; do # Load to local cache. And store the name of the loaded image trimming the 'Loaded images: ' astraImage=$(docker load --input ${astraImageFile} | sed 's/Loaded image: //') astraImage=$(echo ${astraImage} | sed 's!localhost/!!') # Tag with local image repo. docker tag ${astraImage} ${REGISTRY}/${astraImage} # Push to the local repo. docker push ${REGISTRY}/${astraImage} done
Podman:
export REGISTRY=[Registry_path] for astraImageFile in $(ls images/*.tar) ; do # Load to local cache. And store the name of the loaded image trimming the 'Loaded images: ' astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image(s): //') astraImage=$(echo ${astraImage} | sed 's!localhost/!!') # Tag with local image repo. podman tag ${astraImage} ${REGISTRY}/${astraImage} # Push to the local repo. podman push ${REGISTRY}/${astraImage} done
-
Configurar espacio de nombres y secreto para registros con requisitos de autenticación
-
Si utiliza un registro que requiere autenticación, debe hacer lo siguiente:
-
Cree el
netapp-acc-operator
espacio de nombres:kubectl create ns netapp-acc-operator
Respuesta:
namespace/netapp-acc-operator created
-
Cree un secreto para
netapp-acc-operator
espacio de nombres. Añada información sobre Docker y ejecute el siguiente comando:kubectl create secret docker-registry astra-registry-cred -n netapp-acc-operator --docker-server=[your_registry_path] --docker-username=[username] --docker-password=[token]
Respuesta de ejemplo:
secret/astra-registry-cred created
-
Cree el
netapp-acc
(o espacio de nombres personalizado).kubectl create ns [netapp-acc or custom namespace]
Respuesta de ejemplo:
namespace/netapp-acc created
-
Cree un secreto para
netapp-acc
(o espacio de nombres personalizado). Añada información sobre Docker y ejecute el siguiente comando:kubectl create secret docker-registry astra-registry-cred -n [netapp-acc or custom namespace] --docker-server=[your_registry_path] --docker-username=[username] --docker-password=[token]
Respuesta
secret/astra-registry-cred created
-
Instale el operador de Astra Control Center
-
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 la línea predeterminada de
imagePullSecrets: []
con lo siguiente:imagePullSecrets: - name: <name_of_secret_with_creds_to_local_registry>
-
Cambiar
[your_registry_path]
para lakube-rbac-proxy
imagen a la ruta del registro en la que se insertó la imagen en un paso anterior. -
Cambiar
[your_registry_path]
para laacc-operator-controller-manager
imagen a la ruta del registro en la que se insertó la imagen en un paso anterior. -
(Para instalaciones que utilizan la vista previa de Astra Data Store) Consulte este problema conocido con respecto a "Los aprovisionadores de clases de almacenamiento y los cambios adicionales que deberá realizar en la 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 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: [your_registry_path]/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 command: - /manager env: - name: ACCOP_LOG_LEVEL value: "2" image: [your_registry_path]/acc-operator:[version x.y.z] imagePullPolicy: IfNotPresent imagePullSecrets: []
-
-
Instale el operador de Astra Control Center:
kubectl apply -f astra_control_center_operator_deploy.yaml
Respuesta de ejemplo:
namespace/netapp-acc-operator created customresourcedefinition.apiextensions.k8s.io/astracontrolcenters.astra.netapp.io created role.rbac.authorization.k8s.io/acc-operator-leader-election-role created clusterrole.rbac.authorization.k8s.io/acc-operator-manager-role created clusterrole.rbac.authorization.k8s.io/acc-operator-metrics-reader created clusterrole.rbac.authorization.k8s.io/acc-operator-proxy-role created rolebinding.rbac.authorization.k8s.io/acc-operator-leader-election-rolebinding created clusterrolebinding.rbac.authorization.k8s.io/acc-operator-manager-rolebinding created clusterrolebinding.rbac.authorization.k8s.io/acc-operator-proxy-rolebinding created configmap/acc-operator-manager-config created service/acc-operator-controller-manager-metrics-service created deployment.apps/acc-operator-controller-manager created
Configurar Astra Control Center
-
Edite el archivo de recursos personalizados (CR) del Centro de control de Astra (
astra_control_center_min.yaml
) Para realizar las configuraciones de cuenta, AutoSupport, Registro y otras necesarias:Si se requieren personalizaciones adicionales para su entorno, puede utilizar astra_control_center.yaml
Como CR alternativo.astra_control_center_min.yaml
Es la CR predeterminada y es adecuada para la mayoría de las instalaciones.vim astra_control_center_min.yaml
Las propiedades configuradas por la CR no se pueden cambiar tras la implementación inicial de Astra Control Center. Si está utilizando un registro que no requiere autorización, debe eliminar secret
línea dentroimageRegistry
o se producirá un error en la instalación.-
Cambiar
[your_registry_path]
a la ruta de acceso del registro en la que ha insertado las imágenes en el paso anterior. -
Cambie el
accountName
cadena al nombre que desea asociar a la cuenta. -
Cambie el
astraAddress
Cadena al FQDN que desea utilizar en su navegador para acceder a Astra. No utilizarhttp://
o.https://
en la dirección. Copie este FQDN para utilizarlo en un paso posterior. -
Cambie el
email
cadena en la dirección inicial predeterminada del administrador. Copie esta dirección de correo electrónico para su uso en un paso posterior. -
Cambiar
enrolled
Para AutoSupport a.false
para sitios sin conexión a internet o retencióntrue
para sitios conectados. -
(Opcional) Añada un nombre
firstName
y apellidoslastName
del usuario asociado con la cuenta. Este paso se puede realizar ahora o una versión posterior dentro de la interfaz de usuario. -
(Opcional) cambie el
storageClass
Valor añadido con otro recurso Astra Trident StorageClass si así lo requiere su instalación. -
(Para instalaciones que utilizan la vista previa de Astra Data Store) Consulte este problema conocido para "cambios adicionales necesarios" A la AYLMA.
apiVersion: astra.netapp.io/v1 kind: AstraControlCenter metadata: name: astra spec: accountName: "Example" astraVersion: "ASTRA_VERSION" astraAddress: "astra.example.com" autoSupport: enrolled: true email: "[admin@example.com]" firstName: "SRE" lastName: "Admin" imageRegistry: name: "[your_registry_path]" secret: "astra-registry-cred" storageClass: "ontap-gold"
-
Complete la instalación del centro de control de Astra y del operador
-
Si todavía no lo ha hecho en un paso anterior, cree el
netapp-acc
espacio de nombres (o personalizado):kubectl create ns [netapp-acc or custom namespace]
Respuesta de ejemplo:
namespace/netapp-acc created
-
Instale Astra Control Center en
netapp-acc
(o su espacio de nombres personalizado):kubectl apply -f astra_control_center_min.yaml -n [netapp-acc or custom namespace]
Respuesta de ejemplo:
astracontrolcenter.astra.netapp.io/astra created
Comprobar el estado del sistema
Si prefiere utilizar OpenShift, puede utilizar comandos de OC comparables para realizar los pasos de verificación. |
-
Compruebe que todos los componentes del sistema se han instalado correctamente.
kubectl get pods -n [netapp-acc or custom namespace]
Cada pod debe tener el estado de
Running
. Pueden tardar varios minutos en implementar los pods del sistema.Respuesta de ejemplo:
NAME READY STATUS RESTARTS AGE acc-helm-repo-5f75c5f564-bzqmt 1/1 Running 0 11m activity-6b8f7cccb9-mlrn4 1/1 Running 0 9m2s api-token-authentication-6hznt 1/1 Running 0 8m50s api-token-authentication-qpfgb 1/1 Running 0 8m50s api-token-authentication-sqnb7 1/1 Running 0 8m50s asup-5578bbdd57-dxkbp 1/1 Running 0 9m3s authentication-56bff4f95d-mspmq 1/1 Running 0 7m31s bucketservice-6f7968b95d-9rrrl 1/1 Running 0 8m36s cert-manager-5f6cf4bc4b-82khn 1/1 Running 0 6m19s cert-manager-cainjector-76cf976458-sdrbc 1/1 Running 0 6m19s cert-manager-webhook-5b7896bfd8-2n45j 1/1 Running 0 6m19s cloud-extension-749d9f684c-8bdhq 1/1 Running 0 9m6s cloud-insights-service-7d58687d9-h5tzw 1/1 Running 2 8m56s composite-compute-968c79cb5-nv7l4 1/1 Running 0 9m11s composite-volume-7687569985-jg9gg 1/1 Running 0 8m33s credentials-5c9b75f4d6-nx9cz 1/1 Running 0 8m42s entitlement-6c96fd8b78-zt7f8 1/1 Running 0 8m28s features-5f7bfc9f68-gsjnl 1/1 Running 0 8m57s fluent-bit-ds-h88p7 1/1 Running 0 7m22s fluent-bit-ds-krhnj 1/1 Running 0 7m23s fluent-bit-ds-l5bjj 1/1 Running 0 7m22s fluent-bit-ds-lrclb 1/1 Running 0 7m23s fluent-bit-ds-s5t4n 1/1 Running 0 7m23s fluent-bit-ds-zpr6v 1/1 Running 0 7m22s graphql-server-5f5976f4bd-vbb4z 1/1 Running 0 7m13s identity-56f78b8f9f-8h9p9 1/1 Running 0 8m29s influxdb2-0 1/1 Running 0 11m krakend-6f8d995b4d-5khkl 1/1 Running 0 7m7s license-5b5db87c97-jmxzc 1/1 Running 0 9m login-ui-57b57c74b8-6xtv7 1/1 Running 0 7m10s loki-0 1/1 Running 0 11m monitoring-operator-9dbc9c76d-8znck 2/2 Running 0 7m33s nats-0 1/1 Running 0 11m nats-1 1/1 Running 0 10m nats-2 1/1 Running 0 10m nautilus-6b9d88bc86-h8kfb 1/1 Running 0 8m6s nautilus-6b9d88bc86-vn68r 1/1 Running 0 8m35s openapi-b87d77dd8-5dz9h 1/1 Running 0 9m7s polaris-consul-consul-5ljfb 1/1 Running 0 11m polaris-consul-consul-s5d5z 1/1 Running 0 11m polaris-consul-consul-server-0 1/1 Running 0 11m polaris-consul-consul-server-1 1/1 Running 0 11m polaris-consul-consul-server-2 1/1 Running 0 11m polaris-consul-consul-twmpq 1/1 Running 0 11m polaris-mongodb-0 2/2 Running 0 11m polaris-mongodb-1 2/2 Running 0 10m polaris-mongodb-2 2/2 Running 0 10m polaris-ui-84dc87847f-zrg8w 1/1 Running 0 7m12s polaris-vault-0 1/1 Running 0 11m polaris-vault-1 1/1 Running 0 11m polaris-vault-2 1/1 Running 0 11m public-metrics-657698b66f-67pgt 1/1 Running 0 8m47s storage-backend-metrics-6848b9fd87-w7x8r 1/1 Running 0 8m39s storage-provider-5ff5868cd5-r9hj7 1/1 Running 0 8m45s telegraf-ds-dw4hg 1/1 Running 0 7m23s telegraf-ds-k92gn 1/1 Running 0 7m23s telegraf-ds-mmxjl 1/1 Running 0 7m23s telegraf-ds-nhs8s 1/1 Running 0 7m23s telegraf-ds-rj7lw 1/1 Running 0 7m23s telegraf-ds-tqrkb 1/1 Running 0 7m23s telegraf-rs-9mwgj 1/1 Running 0 7m23s telemetry-service-56c49d689b-ffrzx 1/1 Running 0 8m42s tenancy-767c77fb9d-g9ctv 1/1 Running 0 8m52s traefik-5857d87f85-7pmx8 1/1 Running 0 6m49s traefik-5857d87f85-cpxgv 1/1 Running 0 5m34s traefik-5857d87f85-lvmlb 1/1 Running 0 4m33s traefik-5857d87f85-t2xlk 1/1 Running 0 4m33s traefik-5857d87f85-v9wpf 1/1 Running 0 7m3s trident-svc-595f84dd78-zb8l6 1/1 Running 0 8m54s vault-controller-86c94fbf4f-krttq 1/1 Running 0 9m24s
-
(Opcional) para asegurarse de que la instalación ha finalizado, puede ver el
acc-operator
registra utilizando el siguiente comando.kubectl logs deploy/acc-operator-controller-manager -n netapp-acc-operator -c manager -f
-
Cuando todos los pods estén en ejecución, verifique que la instalación se haya realizado correctamente. Para ello, recupere el
AstraControlCenter
Instancia instalada por el operador del Centro de control Astra.kubectl get acc -o yaml -n [netapp-acc or custom namespace]
-
Compruebe la
status.deploymentState
en la respuesta paraDeployed
valor. Si la implementación no se realizó correctamente, aparece en su lugar un mensaje de error.Utilizará la uuid
en el siguiente paso.name: astra namespace: netapp-acc resourceVersion: "104424560" selfLink: /apis/astra.netapp.io/v1/namespaces/netapp-acc/astracontrolcenters/astra uid: 9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f spec: accountName: Example astraAddress: astra.example.com astraVersion: 21.12.60 autoSupport: enrolled: true url: https://support.netapp.com/asupprod/post/1.0/postAsup crds: {} email: admin@example.com firstName: SRE imageRegistry: name: registry_name/astra secret: astra-registry-cred lastName: Admin status: accConditionHistory: items: - astraVersion: 21.12.60 condition: lastTransitionTime: "2021-11-23T02:23:59Z" message: Deploying is currently in progress. reason: InProgress status: "False" type: Ready generation: 2 observedSpec: accountName: Example astraAddress: astra.example.com astraVersion: 21.12.60 autoSupport: enrolled: true url: https://support.netapp.com/asupprod/post/1.0/postAsup crds: {} email: admin@example.com firstName: SRE imageRegistry: name: registry_name/astra secret: astra-registry-cred lastName: Admin timestamp: "2021-11-23T02:23:59Z" - astraVersion: 21.12.60 condition: lastTransitionTime: "2021-11-23T02:23:59Z" message: Deploying is currently in progress. reason: InProgress status: "True" type: Deploying generation: 2 observedSpec: accountName: Example astraAddress: astra.example.com astraVersion: 21.12.60 autoSupport: enrolled: true url: https://support.netapp.com/asupprod/post/1.0/postAsup crds: {} email: admin@example.com firstName: SRE imageRegistry: name: registry_name/astra secret: astra-registry-cred lastName: Admin timestamp: "2021-11-23T02:23:59Z" - astraVersion: 21.12.60 condition: lastTransitionTime: "2021-11-23T02:29:41Z" message: Post Install was successful observedGeneration: 2 reason: Complete status: "True" type: PostInstallComplete generation: 2 observedSpec: accountName: Example astraAddress: astra.example.com astraVersion: 21.12.60 autoSupport: enrolled: true url: https://support.netapp.com/asupprod/post/1.0/postAsup crds: {} email: admin@example.com firstName: SRE imageRegistry: name: registry_name/astra secret: astra-registry-cred lastName: Admin timestamp: "2021-11-23T02:29:41Z" - astraVersion: 21.12.60 condition: lastTransitionTime: "2021-11-23T02:29:41Z" message: Deploying succeeded. reason: Complete status: "False" type: Deploying generation: 2 observedGeneration: 2 observedSpec: accountName: Example astraAddress: astra.example.com astraVersion: 21.12.60 autoSupport: enrolled: true url: https://support.netapp.com/asupprod/post/1.0/postAsup crds: {} email: admin@example.com firstName: SRE imageRegistry: name: registry_name/astra secret: astra-registry-cred lastName: Admin observedVersion: 21.12.60 timestamp: "2021-11-23T02:29:41Z" - astraVersion: 21.12.60 condition: lastTransitionTime: "2021-11-23T02:29:41Z" message: Astra is deployed reason: Complete status: "True" type: Deployed generation: 2 observedGeneration: 2 observedSpec: accountName: Example astraAddress: astra.example.com astraVersion: 21.12.60 autoSupport: enrolled: true url: https://support.netapp.com/asupprod/post/1.0/postAsup crds: {} email: admin@example.com firstName: SRE imageRegistry: name: registry_name/astra secret: astra-registry-cred lastName: Admin observedVersion: 21.12.60 timestamp: "2021-11-23T02:29:41Z" - astraVersion: 21.12.60 condition: lastTransitionTime: "2021-11-23T02:29:41Z" message: Astra is deployed reason: Complete status: "True" type: Ready generation: 2 observedGeneration: 2 observedSpec: accountName: Example astraAddress: astra.example.com astraVersion: 21.12.60 autoSupport: enrolled: true url: https://support.netapp.com/asupprod/post/1.0/postAsup crds: {} email: admin@example.com firstName: SRE imageRegistry: name: registry_name/astra secret: astra-registry-cred lastName: Admin observedVersion: 21.12.60 timestamp: "2021-11-23T02:29:41Z" certManager: deploy cluster: type: OCP vendorVersion: 4.7.5 version: v1.20.0+bafe72f conditions: - lastTransitionTime: "2021-12-08T16:19:55Z" message: Astra is deployed reason: Complete status: "True" type: Ready - lastTransitionTime: "2021-12-08T16:19:55Z" message: Deploying succeeded. reason: Complete status: "False" type: Deploying - lastTransitionTime: "2021-12-08T16:19:53Z" message: Post Install was successful observedGeneration: 2 reason: Complete status: "True" type: PostInstallComplete - lastTransitionTime: "2021-12-08T16:19:55Z" message: Astra is deployed reason: Complete status: "True" type: Deployed deploymentState: Deployed observedGeneration: 2 observedSpec: accountName: Example astraAddress: astra.example.com astraVersion: 21.12.60 autoSupport: enrolled: true url: https://support.netapp.com/asupprod/post/1.0/postAsup crds: {} email: admin@example.com firstName: SRE imageRegistry: name: registry_name/astra secret: astra-registry-cred lastName: Admin observedVersion: 21.12.60 postInstall: Complete uuid: 9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f kind: List metadata: resourceVersion: "" selfLink: ""
-
Para obtener la contraseña única que utilizará cuando inicie sesión en Astra Control Center, copie la
status.uuid
valor de la respuesta en el paso anterior. La contraseña esACC-
Seguido del valor UUID (ACC-[UUID]
o, en este ejemplo,ACC-c49008a5-4ef1-4c5d-a53e-830daf994116
).
Inicie sesión en la interfaz de usuario de Astra Control Center
Después de instalar Astra Control Center, cambiará la contraseña del administrador predeterminado e inicie sesión en el panel de interfaz de usuario de Astra Control Center.
-
En un explorador, introduzca el FQDN que utilizó en
astraAddress
en laastra_control_center_min.yaml
CR cuando Ha instalado Astra Control Center. -
Acepte los certificados autofirmados cuando se le solicite.
Se puede crear un certificado personalizado después de iniciar sesión. -
En la página de inicio de sesión de Astra Control Center, introduzca el valor utilizado
email
pulgastra_control_center_min.yaml
CR cuando Ha instalado Astra Control Center, seguido de la contraseña única (ACC-[UUID]
).Si introduce una contraseña incorrecta tres veces, la cuenta de administrador se bloqueará durante 15 minutos. -
Seleccione Iniciar sesión.
-
Cambie la contraseña cuando se le solicite.
Si este es su primer inicio de sesión y olvida la contraseña y aún no se han creado otras cuentas de usuario administrativas, comuníquese con el servicio de soporte de NetApp para obtener ayuda para la recuperación de contraseñas. -
(Opcional) quite el certificado TLS autofirmado existente y sustitúyalo por un "Certificado TLS personalizado firmado por una entidad de certificación (CA)".
Solucione los problemas de instalación
Si alguno de los servicios está en Error
puede inspeccionar los registros. Busque códigos de respuesta API en la gama 400 a 500. Esos indican el lugar donde ocurrió un fracaso.
-
Para inspeccionar los registros del operador de Astra Control Center, introduzca lo siguiente:
kubectl logs --follow -n netapp-acc-operator $(kubectl get pods -n netapp-acc-operator -o name) -c manager
El futuro
Complete la implementación llevando a cabo "tareas de configuración".