Skip to main content
È disponibile una versione più recente di questo prodotto.
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Installare Astra Control Center utilizzando il processo standard

Collaboratori

Per installare Astra Control Center, scaricare il pacchetto di installazione dal NetApp Support Site ed eseguire la procedura seguente per installare Astra Control Center Operator e Astra Control Center nel proprio ambiente. È possibile utilizzare questa procedura per installare Astra Control Center in ambienti connessi a Internet o con connessione ad aria.

Per gli ambienti Red Hat OpenShift, è possibile utilizzare anche un "procedura alternativa" Per installare Astra Control Center utilizzando OpenShift OperatorHub.

Di cosa hai bisogno
  • "Prima di iniziare l’installazione, preparare l’ambiente per l’implementazione di Astra Control Center".

  • Assicurarsi che tutti gli operatori del cluster siano in buono stato e disponibili.

    Esempio di OpenShift:

    oc get clusteroperators
  • Assicurarsi che tutti i servizi API siano in buono stato e disponibili:

    Esempio di OpenShift:

    oc get apiservices
  • L’FQDN Astra che si intende utilizzare deve essere instradabile a questo cluster. Ciò significa che si dispone di una voce DNS nel server DNS interno o si sta utilizzando un percorso URL principale già registrato.

A proposito di questa attività

Il processo di installazione di Astra Control Center esegue le seguenti operazioni:

  • Installa i componenti Astra in netapp-acc namespace (o personalizzato).

  • Crea un account predefinito.

  • Stabilisce un indirizzo e-mail predefinito per l’utente amministrativo e una password monouso predefinita di ACC-<UUID_of_installation> Per questo caso di Astra Control Center. A questo utente viene assegnato il ruolo Owner (Proprietario) nel sistema ed è necessario per il primo accesso all’interfaccia utente.

  • Consente di determinare se tutti i pod Astra Control Center sono in esecuzione.

  • Installa l’interfaccia utente Astra.

Importante (Valido solo per la release Astra Data Store Early Access Program (EAP)). Se si intende gestire Astra Data Store utilizzando Astra Control Center e abilitare i flussi di lavoro VMware, implementare Astra Control Center solo su pcloud namespace e non su netapp-acc namespace o uno spazio dei nomi personalizzato descritto nei passaggi di questa procedura.
Importante Non eseguire il seguente comando durante l’intero processo di installazione per evitare di eliminare tutti i pod di Astra Control Center: kubectl delete -f astra_control_center_operator_deploy.yaml
Nota Se si utilizza Podman di Red Hat invece di Docker Engine, è possibile utilizzare i comandi Podman al posto dei comandi Docker.
Fasi

Per installare Astra Control Center, procedere come segue:

Scarica e disimballa il bundle Astra Control Center

  1. Scarica il bundle Astra Control Center (astra-control-center-[version].tar.gz) da "Sito di supporto NetApp".

  2. Scarica la zip dei certificati e delle chiavi di Astra Control Center dal "Sito di supporto NetApp".

  3. (Facoltativo) utilizzare il seguente comando per verificare la firma del bundle:

    openssl dgst -sha256 -verify astra-control-center[version].pub -signature <astra-control-center[version].sig astra-control-center[version].tar.gz
  4. Estrarre le immagini:

    tar -vxzf astra-control-center-[version].tar.gz

Installare il plug-in NetApp Astra kubectl

NetApp Astra kubectl Il plug-in della riga di comando consente di risparmiare tempo durante l’esecuzione di attività comuni associate all’implementazione e all’aggiornamento di Astra Control Center.

Di cosa hai bisogno

NetApp fornisce binari per il plug-in per diverse architetture CPU e sistemi operativi. Prima di eseguire questa attività, è necessario conoscere la CPU e il sistema operativo in uso. Sui sistemi operativi Linux e Mac, è possibile utilizzare uname -a per raccogliere queste informazioni.

Fasi
  1. Elencare NetApp Astra disponibile kubectl Binari del plug-in e annotare il nome del file necessario per il sistema operativo e l’architettura della CPU:

    ls kubectl-astra/
  2. Copiare il file nella stessa posizione dello standard kubectl utility. In questo esempio, il kubectl l’utility si trova in /usr/local/bin directory. Sostituire <binary-name> con il nome del file desiderato:

    cp kubectl-astra/<binary-name> /usr/local/bin/kubectl-astra

Aggiungere le immagini al registro locale

  1. Passare alla directory Astra:

    cd acc
  2. Aggiungere i file nella directory dell’immagine di Astra Control Center al registro locale.

    Nota Vedere gli script di esempio per il caricamento automatico delle immagini di seguito.
    1. Accedere al Registro di sistema:

      Docker:

      docker login [your_registry_path]

      Podman:

      podman login [your_registry_path]
    2. Utilizzare lo script appropriato per caricare le immagini, contrassegnare le immagini e inviare le immagini al registro locale:

      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

Impostare namespace e secret per i registri con requisiti di autenticazione

  1. Se si utilizza un registro che richiede l’autenticazione, è necessario effettuare le seguenti operazioni:

    1. Creare il netapp-acc-operator spazio dei nomi:

      kubectl create ns netapp-acc-operator

      Risposta:

      namespace/netapp-acc-operator created
    2. Creare un segreto per netapp-acc-operator namespace. Aggiungere informazioni su Docker ed eseguire il seguente comando:

      kubectl create secret docker-registry astra-registry-cred -n netapp-acc-operator --docker-server=[your_registry_path] --docker-username=[username] --docker-password=[token]

      Esempio di risposta:

      secret/astra-registry-cred created
    3. Creare il netapp-acc namespace (o personalizzato).

      kubectl create ns [netapp-acc or custom namespace]

      Esempio di risposta:

      namespace/netapp-acc created
    4. Creare un segreto per netapp-acc namespace (o personalizzato). Aggiungere informazioni su Docker ed eseguire il seguente 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]

      Risposta

    secret/astra-registry-cred created
    1. (opzionale) se si desidera che il cluster venga gestito automaticamente da Astra Control Center dopo l’installazione, assicurarsi di fornire il kubeconfig come segreto all’interno dello spazio dei nomi di Astra Control Center in cui si intende eseguire la distribuzione utilizzando questo comando:

      kubectl create secret generic [acc-kubeconfig-cred or custom secret name] --from-file=<path-to-your-kubeconfig> -n [netapp-acc or custom namespace]

Installare l’operatore del centro di controllo Astra

  1. Modificare l’YAML di implementazione dell’operatore di Astra Control Center (astra_control_center_operator_deploy.yaml) per fare riferimento al registro locale e al segreto.

    vim astra_control_center_operator_deploy.yaml
    1. Se si utilizza un registro che richiede l’autenticazione, sostituire la riga predefinita di imagePullSecrets: [] con i seguenti elementi:

      imagePullSecrets:
      - name: <name_of_secret_with_creds_to_local_registry>
    2. Cambiare [your_registry_path] per kube-rbac-proxy al percorso del registro in cui sono state inviate le immagini in a. passaggio precedente.

    3. Cambiare [your_registry_path] per acc-operator-controller-manager al percorso del registro in cui sono state inviate le immagini in a. passaggio precedente.

    4. (Per le installazioni che utilizzano l’anteprima di Astra Data Store) vedere questo problema noto relativo a. "Provisioning delle classi di storage e modifiche aggiuntive da apportare al programma 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: []
  2. Installare l’operatore del centro di controllo Astra:

    kubectl apply -f astra_control_center_operator_deploy.yaml

    Esempio di risposta:

    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

Configurare Astra Control Center

  1. Modificare il file delle risorse personalizzate (CR) di Astra Control Center (astra_control_center_min.yaml) Per creare account, AutoSupport, Registro di sistema e altre configurazioni necessarie:

    Nota Se sono necessarie personalizzazioni aggiuntive per il proprio ambiente, è possibile utilizzare astra_control_center.yaml Come CR alternativa. astra_control_center_min.yaml È il CR predefinito ed è adatto per la maggior parte delle installazioni.
    vim astra_control_center_min.yaml
    Nota Le proprietà configurate dal CR non possono essere modificate dopo l’implementazione iniziale di Astra Control Center.
    Importante Se si utilizza un registro che non richiede autorizzazione, è necessario eliminare secret linea entro imageRegistry in caso negativo, l’installazione non riesce.
    1. Cambiare [your_registry_path] al percorso del registro di sistema in cui sono state inviate le immagini nel passaggio precedente.

    2. Modificare il accountName stringa al nome che si desidera associare all’account.

    3. Modificare il astraAddress Stringa all’FQDN che si desidera utilizzare nel browser per accedere ad Astra. Non utilizzare http:// oppure https:// nell’indirizzo. Copiare questo FQDN per utilizzarlo in un passo successivo.

    4. Modificare il email stringa all’indirizzo iniziale predefinito dell’amministratore. Copiare questo indirizzo e-mail per utilizzarlo in passo successivo.

    5. Cambiare enrolled Per AutoSupport a. false per i siti senza connettività internet o senza retain true per i siti connessi.

    6. (Facoltativo) aggiungere un nome firstName e cognome lastName dell’utente associato all’account. È possibile eseguire questo passaggio ora o in un secondo momento all’interno dell’interfaccia utente.

    7. (Facoltativo) modificare storageClass Valore per un’altra risorsa Trident storageClass, se richiesto dall’installazione.

    8. (Facoltativo) se si desidera che il cluster venga gestito automaticamente da Astra Control Center dopo l’installazione e si è già provveduto creato il segreto contenente il kubeconfig per questo cluster, Fornire il nome del segreto aggiungendo un nuovo campo a questo file YAML chiamato astraKubeConfigSecret: "acc-kubeconfig-cred or custom secret name"

    9. Completare una delle seguenti operazioni:

      • Other ingress controller (ingressType:Generic): Questa è l’azione predefinita con Astra Control Center. Dopo l’implementazione di Astra Control Center, è necessario configurare il controller di ingresso per esporre Astra Control Center con un URL.

        L’installazione predefinita di Astra Control Center imposta il gateway (service/traefik) per essere del tipo ClusterIP. Questa installazione predefinita richiede l’impostazione di Kubernetes IngressController/Ingress per instradare il traffico verso di essa. Se si desidera utilizzare un ingresso, vedere "Impostare l’ingresso per il bilanciamento del carico".

      • Service load balancer (ingressType:AccTraefik): Se non si desidera installare un IngressController o creare una risorsa Ingress, impostare ingressType a. AccTraefik.

        In questo modo viene implementato l’Astra Control Center traefik Gateway come servizio di tipo Kubernetes LoadBalancer.

        Astra Control Center utilizza un servizio del tipo "LoadBalancer" (svc/traefik Nello spazio dei nomi di Astra Control Center) e richiede l’assegnazione di un indirizzo IP esterno accessibile. Se nel proprio ambiente sono consentiti i bilanciatori di carico e non ne è già configurato uno, è possibile utilizzare MetalLB o un altro servizio di bilanciamento del carico esterno per assegnare un indirizzo IP esterno al servizio. Nella configurazione del server DNS interno, puntare il nome DNS scelto per Astra Control Center sull’indirizzo IP con bilanciamento del carico.

      Nota Per ulteriori informazioni sul tipo di servizio "LoadBalancer" e sull’ingresso, vedere "Requisiti".
    apiVersion: astra.netapp.io/v1
    kind: AstraControlCenter
    metadata:
      name: astra
    spec:
      accountName: "Example"
      astraVersion: "ASTRA_VERSION"
      astraAddress: "astra.example.com"
      astraKubeConfigSecret: "acc-kubeconfig-cred or custom secret name"
      ingressType: "Generic"
      autoSupport:
        enrolled: true
      email: "[admin@example.com]"
      firstName: "SRE"
      lastName: "Admin"
      imageRegistry:
        name: "[your_registry_path]"
        secret: "astra-registry-cred"
      storageClass: "ontap-gold"

Completare l’installazione dell’Astra Control Center e dell’operatore

  1. Se non lo si è già fatto in un passaggio precedente, creare il netapp-acc namespace (o personalizzato):

    kubectl create ns [netapp-acc or custom namespace]

    Esempio di risposta:

    namespace/netapp-acc created
  2. Installare Astra Control Center in netapp-acc spazio dei nomi (o personalizzato):

    kubectl apply -f astra_control_center_min.yaml -n [netapp-acc or custom namespace]

    Esempio di risposta:

    astracontrolcenter.astra.netapp.io/astra created

Verificare lo stato del sistema

Nota Se preferisci utilizzare OpenShift, puoi utilizzare comandi oc paragonabili per le fasi di verifica.
  1. Verificare che tutti i componenti del sistema siano installati correttamente.

    kubectl get pods -n [netapp-acc or custom namespace]

    Ogni pod deve avere uno stato di Running. L’implementazione dei pod di sistema potrebbe richiedere alcuni minuti.

    Esempio di risposta:

    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
  2. (Facoltativo) per assicurarsi che l’installazione sia completata, è possibile guardare acc-operator registra usando il seguente comando.

    kubectl logs deploy/acc-operator-controller-manager -n netapp-acc-operator -c manager -f
    Nota accHost la registrazione del cluster è una delle ultime operazioni e, in caso di errore, la distribuzione non avrà esito negativo. In caso di errore di registrazione del cluster indicato nei registri, è possibile tentare di nuovo la registrazione attraverso il flusso di lavoro add cluster "Nell’interfaccia utente" O API.
  3. Una volta eseguiti tutti i pod, verificare che l’installazione sia riuscita recuperando AstraControlCenter Istanza installata dall’operatore di Astra Control Center.

    kubectl get acc -o yaml -n [netapp-acc or custom namespace]
  4. Nell’YAML, selezionare status.deploymentState nella risposta per Deployed valore. Se l’implementazione non ha avuto esito positivo, viene visualizzato un messaggio di errore.

  5. Per ottenere la password monouso da utilizzare quando si accede ad Astra Control Center, copiare il status.uuid valore. La password è ACC- Seguito dal valore UUID (ACC-[UUID] oppure, in questo esempio, ACC-9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f).

Dettagli YAML di esempio
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: ""

Impostare l’ingresso per il bilanciamento del carico

È possibile configurare un controller di ingresso Kubernetes che gestisce l’accesso esterno ai servizi, come il bilanciamento del carico in un cluster.

Questa procedura spiega come configurare un controller di ingresso (ingressType:Generic). Questa è l’azione predefinita con Astra Control Center. Dopo l’implementazione di Astra Control Center, è necessario configurare il controller di ingresso per esporre Astra Control Center con un URL.

Nota Se non si desidera configurare un controller di ingresso, è possibile impostarlo ingressType:AccTraefik). Astra Control Center utilizza un servizio del tipo "LoadBalancer" (svc/traefik Nello spazio dei nomi di Astra Control Center) e richiede l’assegnazione di un indirizzo IP esterno accessibile. Se nel proprio ambiente sono consentiti i bilanciatori di carico e non ne è già configurato uno, è possibile utilizzare MetalLB o un altro servizio di bilanciamento del carico esterno per assegnare un indirizzo IP esterno al servizio. Nella configurazione del server DNS interno, puntare il nome DNS scelto per Astra Control Center sull’indirizzo IP con bilanciamento del carico. Per ulteriori informazioni sul tipo di servizio "LoadBalancer" e sull’ingresso, vedere "Requisiti".

I passaggi variano a seconda del tipo di controller di ingresso utilizzato:

  • Controller di ingresso nginx

  • Controller di ingresso OpenShift

Di cosa hai bisogno
  • Il necessario "controller di ingresso" dovrebbe essere già implementato.

  • Il "classe di ingresso" corrispondente al controller di ingresso dovrebbe già essere creato.

  • Si stanno utilizzando versioni di Kubernetes comprese tra v1.19 e v1.22.

Procedura per il controller di ingresso Nginx
  1. Creare un segreto di tipo[kubernetes.io/tls] Per una chiave privata TLS e un certificato in netapp-acc (o con nome personalizzato) come descritto in "Segreti TLS".

  2. Implementare una risorsa income in netapp-acc (o con nome personalizzato) namespace utilizzando v1beta1 (Obsoleto in Kubernetes versione inferiore a o 1.22) o. v1 tipo di risorsa per uno schema obsoleto o nuovo:

    1. Per a. v1beta1 schema obsoleto, seguire questo esempio:

      apiVersion: extensions/v1beta1
      kind: Ingress
      metadata:
        name: ingress-acc
        namespace: [netapp-acc or custom namespace]
        annotations:
          kubernetes.io/ingress.class: [class name for nginx controller]
      spec:
        tls:
        - hosts:
          - <ACC address>
          secretName: [tls secret name]
        rules:
        - host: [ACC address]
          http:
            paths:
            - backend:
              serviceName: traefik
              servicePort: 80
              pathType: ImplementationSpecific
    2. Per v1 nuovo schema, seguire questo esempio:

      apiVersion: networking.k8s.io/v1
      kind: Ingress
      metadata:
        name: netapp-acc-ingress
        namespace: [netapp-acc or custom namespace]
      spec:
        ingressClassName: [class name for nginx controller]
        tls:
        - hosts:
          - <ACC address>
          secretName: [tls secret name]
        rules:
        - host: <ACC addess>
          http:
            paths:
              - path:
                backend:
                  service:
                    name: traefik
                    port:
                      number: 80
                pathType: ImplementationSpecific
Procedura per il controller di ingresso OpenShift
  1. Procurarsi il certificato e ottenere la chiave, il certificato e i file CA pronti per l’uso con il percorso OpenShift.

  2. Creare il percorso OpenShift:

    oc create route edge --service=traefik
    --port=web -n [netapp-acc or custom namespace]
    --insecure-policy=Redirect --hostname=<ACC address>
    --cert=cert.pem --key=key.pem

Accedere all’interfaccia utente di Astra Control Center

Dopo aver installato Astra Control Center, si modifica la password dell’amministratore predefinito e si accede alla dashboard dell’interfaccia utente di Astra Control Center.

Fasi
  1. In un browser, immettere l’FQDN utilizzato in astraAddress in astra_control_center_min.yaml CR quando Astra Control Center è stato installato.

  2. Accettare i certificati autofirmati quando richiesto.

    Nota È possibile creare un certificato personalizzato dopo l’accesso.
  3. Nella pagina di accesso di Astra Control Center, inserire il valore utilizzato per email poll astra_control_center_min.yaml CR quando Astra Control Center è stato installato, seguito dalla password monouso (ACC-[UUID]).

    Nota Se si immette una password errata per tre volte, l’account admin viene bloccato per 15 minuti.
  4. Selezionare Login.

  5. Modificare la password quando richiesto.

    Nota Se si tratta del primo accesso e si dimentica la password e non sono ancora stati creati altri account utente amministrativi, contattare il supporto NetApp per assistenza per il recupero della password.
  6. (Facoltativo) rimuovere il certificato TLS autofirmato esistente e sostituirlo con un "Certificato TLS personalizzato firmato da un’autorità di certificazione (CA)".

Risolvere i problemi di installazione

Se uno dei servizi è in Error stato, è possibile esaminare i registri. Cercare i codici di risposta API nell’intervallo da 400 a 500. Questi indicano il luogo in cui si è verificato un guasto.

Fasi
  1. Per esaminare i registri dell’operatore di Astra Control Center, immettere quanto segue:

    kubectl logs --follow -n netapp-acc-operator $(kubectl get pods -n netapp-acc-operator -o name)  -c manager

Cosa succederà

Completare l’implementazione eseguendo "attività di installazione".