Skip to main content
Une version plus récente de ce produit est disponible.
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Installer le centre de contrôle Astra en suivant la procédure standard

Contributeurs

Pour installer le centre de contrôle Astra, téléchargez le bundle d’installation sur le site de support NetApp et effectuez les opérations suivantes pour installer l’opérateur du centre de contrôle Astra et le centre de contrôle Astra dans votre environnement. Vous pouvez utiliser cette procédure pour installer Astra Control Center dans des environnements connectés à Internet ou équipés d’un filtre à air.

Pour les environnements Red Hat OpenShift, vous pouvez utiliser un "autre procédure" Pour installer Astra Control Center à l’aide d’OpenShift OperatorHub.

Ce dont vous avez besoin
  • "Avant de commencer l’installation, préparez votre environnement pour le déploiement d’Astra Control Center".

  • Si vous avez configuré ou que vous souhaitez configurer des stratégies de sécurité de pod dans votre environnement, familiarisez-vous avec les stratégies de sécurité de pod et leur incidence sur l’installation d’Astra Control Center. Voir "Comprendre les restrictions de la stratégie de sécurité du pod".

  • S’assurer que tous les opérateurs du groupe d’instruments sont en état de fonctionnement et disponibles.

    kubectl get clusteroperators
  • Assurez-vous que tous les services API sont en état de santé et disponibles :

    kubectl get apiservices
  • Assurez-vous que le FQDN Astra que vous prévoyez d’utiliser est routable vers ce cluster. Cela signifie que vous avez une entrée DNS dans votre serveur DNS interne ou que vous utilisez une route URL de base déjà enregistrée.

  • Si un cert-Manager existe déjà dans le cluster, vous devez en effectuer certaines "étapes préalables" Pour qu’Astra Control Center n’installe pas son propre cert-Manager.

Description de la tâche

La procédure d’installation d’Astra Control Center est la suivante :

  • Installe les composants Astra dans le netapp-acc (ou espace de nom personnalisé).

  • Crée un compte par défaut.

  • Définit une adresse e-mail d’utilisateur administratif par défaut et un mot de passe unique par défaut. Ce rôle propriétaire est attribué à cet utilisateur dans le système qui est nécessaire pour la première connexion à l’interface utilisateur.

  • Vous aide à déterminer que toutes les POD Astra Control Center sont en cours d’exécution.

  • Installe l’interface utilisateur Astra.

Important (Applicable uniquement à la version EAP (Data Store Early Access Program) d’Astra) si vous prévoyez de gérer le magasin de données Astra à l’aide d’Astra Control Center et d’activer les flux de travail VMware, déployez Astra Control Center uniquement sur le pcloud et pas sur le netapp-acc espace de noms ou espace de noms personnalisé décrits dans les étapes de cette procédure.
Important N’exécutez pas la commande suivante pendant l’intégralité du processus d’installation pour éviter de supprimer toutes les pods Astra Control Center : kubectl delete -f astra_control_center_operator_deploy.yaml
Remarque Si vous utilisez le Podman de Red Hat au lieu de Docker Engine, vous pouvez utiliser les commandes Podman à la place des commandes Docker.
Étapes

Pour installer le centre de contrôle Astra, procédez comme suit :

Téléchargez et déballez le pack Astra Control Center

  1. Téléchargez le pack Astra Control Center (astra-control-center-[version].tar.gz) du "Site de support NetApp".

  2. Téléchargez le code postal des certificats et clés Astra Control Center sur le "Site de support NetApp".

  3. (Facultatif) utilisez la commande suivante pour vérifier la signature du pack :

    openssl dgst -sha256 -verify AstraControlCenter-public.pub -signature astra-control-center-[version].tar.gz.sig astra-control-center-[version].tar.gz
  4. Extraire les images :

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

Installez le plug-in NetApp Astra kubectl

NetApp Astra kubectl Le plug-in de ligne de commande permet de gagner du temps lors de l’exécution des tâches courantes associées au déploiement et à la mise à niveau d’Astra Control Center.

Ce dont vous avez besoin

NetApp fournit des binaires pour différents systèmes d’exploitation et architectures CPU. Avant d’effectuer cette tâche, vous devez savoir quelle unité centrale et quel système d’exploitation vous possédez. Sur les systèmes d’exploitation Linux et Mac, vous pouvez utiliser uname -a commande permettant de collecter ces informations.

Étapes
  1. Répertoriez l’Astra de NetApp disponible kubectl Les binaires du plug-in, et notez le nom du fichier dont vous avez besoin pour votre système d’exploitation et l’architecture de l’UC :

    ls kubectl-astra/
  2. Copiez le fichier au même emplacement que la norme kubectl informatique. Dans cet exemple, le kubectl l’utilitaire se trouve dans le /usr/local/bin répertoire. Remplacement <binary-name> avec le nom du fichier dont vous avez besoin :

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

Ajoutez les images à votre registre local

  1. Suivez la séquence d’étapes appropriée pour votre moteur de mise en conteneurs :

Docker
  1. Passez au répertoire Astra :

    cd acc
  2. placez les images du paquet dans le répertoire d’images Astra Control Center dans votre registre local. Exécutez les substitutions suivantes avant d’exécuter la commande :

    • Remplacez BUNDLE_FILE par le nom du fichier bundle Astra Control (par exemple, acc.manifest.yaml).

    • Remplacez MON_REGISTRE par l’URL du référentiel Docker.

    • Remplacez MON_REGISTRE_UTILISATEUR par le nom d’utilisateur.

    • Remplacez MON_REGISTRY_TOKEN par un jeton autorisé pour le Registre.

      kubectl astra packages push-images -m BUNDLE_FILE -r MY_REGISTRY -u MY_REGISTRY_USER -p MY_REGISTRY_TOKEN
Podman
  1. Connectez-vous à votre registre :

    podman login [your_registry_path]
  2. Exécutez le script suivant, en procédant à la substitution <YOUR_REGISTRY> comme indiqué dans les commentaires :

    # You need to be at the root of the tarball.
    # You should see these files to confirm correct location:
    #   acc.manifest.yaml
    #   acc/
    
    # Replace <YOUR_REGISTRY> with your own registry (e.g registry.customer.com or registry.customer.com/testing, etc..)
    export REGISTRY=<YOUR_REGISTRY>
    export PACKAGENAME=acc
    export PACKAGEVERSION=22.08.1-26
    export DIRECTORYNAME=acc
    for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do
      # Load to local cache
      astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image(s): //')
    
      # Remove path and keep imageName.
      astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::')
    
      # Tag with local image repo.
      podman tag ${astraImage} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    
      # Push to the local repo.
      podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    done

Configurez l’espace de noms et le secret pour les registres avec les exigences d’authentification

  1. Exporter le KUBECONFIG pour le groupe hôte du centre de contrôle Astra :

    export KUBECONFIG=[file path]
  2. Si vous utilisez un registre qui nécessite une authentification, vous devez procéder comme suit :

    1. Créer le netapp-acc-operator espace de noms :

      kubectl create ns netapp-acc-operator

      Réponse :

      namespace/netapp-acc-operator created
    2. Créez un secret pour le netapp-acc-operator espace de noms. Ajoutez des informations sur Docker et exécutez la commande suivante :

      Remarque Le paramètre fictif your_registry_path doit correspondre à l’emplacement des images que vous avez téléchargées précédemment (par exemple, [Registry_URL]/netapp/astra/astracc/22.08.1-26).
      kubectl create secret docker-registry astra-registry-cred -n netapp-acc-operator --docker-server=[your_registry_path] --docker-username=[username] --docker-password=[token]

      Exemple de réponse :

      secret/astra-registry-cred created
      Remarque Si vous supprimez l’espace de noms après la génération du secret, vous devez régénérer le secret pour l’espace de noms après la recréation de l’espace de noms.
    3. Créer le netapp-acc (ou espace de nom personnalisé).

      kubectl create ns [netapp-acc or custom namespace]

      Exemple de réponse :

      namespace/netapp-acc created
    4. Créez un secret pour le netapp-acc (ou espace de nom personnalisé). Ajoutez des informations sur Docker et exécutez la commande suivante :

      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]

      Réponse

    secret/astra-registry-cred created
    1. (Facultatif) si vous souhaitez que le cluster soit automatiquement géré par Astra Control Center après l’installation, assurez-vous de fournir le kubeconfig comme secret dans l’espace de noms de l’Astra Control Center que vous souhaitez déployer à l’aide de cette commande :

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

Poser le conducteur du centre de commande Astra

  1. Modifier le répertoire :

    cd manifests
  2. Modifiez le YAML de déploiement de l’opérateur Astra Control Center (astra_control_center_operator_deploy.yaml) pour faire référence à votre registre local et à votre secret.

    vim astra_control_center_operator_deploy.yaml
    Remarque Un échantillon annoté YAML suit ces étapes.
    1. Si vous utilisez un registre qui nécessite une authentification, remplacez la ligne par défaut de imagePullSecrets: [] avec les éléments suivants :

      imagePullSecrets:
      - name: <astra-registry-cred>
    2. Changer [your_registry_path] pour le kube-rbac-proxy image dans le chemin du registre où vous avez poussé les images dans un étape précédente.

    3. Changer [your_registry_path] pour le acc-operator-controller-manager image dans le chemin du registre où vous avez poussé les images dans un étape précédente.

    4. (Pour les installations utilisant l’aperçu d’Astra Data Store) Découvrez ce problème connu concernant "Les spécialistes en provisionnement de classe de stockage et les changements supplémentaires que vous devrez apporter au 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: []
  3. Poser le conducteur du centre de commande Astra :

    kubectl apply -f astra_control_center_operator_deploy.yaml

    Exemple de réponse :

    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
  4. Vérifiez que les pods sont en cours d’exécution :

    kubectl get pods -n netapp-acc-operator

Configurer le centre de contrôle Astra

  1. Modifiez le fichier de ressources personnalisées (CR) Astra Control Center (astra_control_center_min.yaml) Pour créer des comptes, AutoSupport, registre et autres configurations nécessaires :

    Remarque astra_control_center_min.yaml Est le CR par défaut et convient à la plupart des installations. Familiarisez-vous avec tous "Les options CR et leurs valeurs potentielles" Pour vous assurer de déployer le centre de contrôle Astra correctement pour votre environnement. Si d’autres personnalisations sont nécessaires pour votre environnement, vous pouvez l’utiliser astra_control_center.yaml En tant que CR alternatif.
    vim astra_control_center_min.yaml
    Important Si vous utilisez un registre qui ne requiert pas d’autorisation, vous devez supprimer le secret ligne comprise entre imageRegistry sinon, l’installation échouera.
    1. Changer [your_registry_path] vers le chemin du registre où vous avez poussé les images à l’étape précédente.

    2. Modifiez le accountName chaîne du nom que vous souhaitez associer au compte.

    3. Modifiez le astraAddress Chaîne du FQDN que vous souhaitez utiliser dans votre navigateur pour accéder à Astra. Ne pas utiliser http:// ou https:// dans l’adresse. Copier ce FQDN pour l’utiliser dans un plus tard.

    4. Modifiez le email chaîne à l’adresse d’administrateur initiale par défaut. Copiez cette adresse e-mail pour l’utiliser dans un plus tard.

    5. Changer enrolled Pour AutoSupport à false pour les sites sans connexion internet ou sans conservation true pour les sites connectés.

    6. Si vous utilisez un cert-Manager externe, ajoutez les lignes suivantes à spec:

      spec:
        crds:
          externalCertManager: true
    7. (Facultatif) Ajouter un prénom firstName et nom lastName de l’utilisateur associé au compte. Vous pouvez effectuer cette étape maintenant ou plus tard dans l’interface utilisateur.

    8. (Facultatif) modifiez le storageClass Valeur ajoutée pour une autre ressource de stockage Trident si votre installation l’exige.

    9. (Facultatif) si vous souhaitez que le cluster soit géré automatiquement par Astra Control Center après l’installation et que vous l’ayez déjà fait créé le secret contenant le kubecconfig pour ce cluster, Indiquez le nom du secret en ajoutant un nouveau champ à ce fichier YAML appelé astraKubeConfigSecret: "acc-kubeconfig-cred or custom secret name"

    10. Effectuez l’une des opérations suivantes :

      • Autre contrôleur d’entrée (ingressType:Generic): Il s’agit de l’action par défaut avec Astra Control Center. Après le déploiement du centre de contrôle Astra, vous devrez configurer le contrôleur d’entrée pour exposer le centre de contrôle Astra à une URL.

        L’installation par défaut d’Astra Control Center configure sa passerelle (service/traefik) pour être du type ClusterIP. Avec cette installation par défaut, vous devez également configurer une entrée/un contrôleur Kubernetes IngressController pour y acheminer le trafic. Si vous souhaitez utiliser une entrée, reportez-vous à la section "Configurer l’entrée pour l’équilibrage de charge".

      • Équilibreur de charge de service (ingressType:AccTraefik): Si vous ne souhaitez pas installer un IngressController ou créer une ressource d’entrée, définissez ingressType à AccTraefik.

        Ceci déploie le centre de contrôle Astra traefik Passerelle en tant que service de type Kubernetes LoadBalancer.

        Le centre de contrôle Astra utilise un service de type « équilibreur de charge » (svc/traefik Dans l’espace de noms du centre de contrôle Astra), et exige qu’il se voit attribuer une adresse IP externe accessible. Si des équilibreurs de charge sont autorisés dans votre environnement et que vous n’en avez pas encore configuré, vous pouvez utiliser MetalLB ou un autre équilibreur de charge de service externe pour attribuer une adresse IP externe au service. Dans la configuration du serveur DNS interne, pointez le nom DNS choisi pour Astra Control Center vers l’adresse IP à équilibrage de charge.

      Remarque Pour plus de détails sur le type de service « LoadBalancer » et l’entrée, voir "De formation".
    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"

Installation complète du centre de contrôle Astra et du conducteur

  1. Si vous ne l’avez pas déjà fait dans une étape précédente, créez le netapp-acc (ou personnalisée) espace de noms :

    kubectl create ns [netapp-acc or custom namespace]

    Exemple de réponse :

    namespace/netapp-acc created
  2. Poser le centre de contrôle Astra dans le netapp-acc (ou votre espace de noms personnalisé) :

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

    Exemple de réponse :

    astracontrolcenter.astra.netapp.io/astra created

Vérifiez l’état du système

Remarque Si vous préférez utiliser OpenShift, vous pouvez utiliser des commandes oc comparables pour les étapes de vérification.
  1. Vérifiez que tous les composants du système sont correctement installés.

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

    Chaque pod doit avoir un statut de Running. Le déploiement des modules du système peut prendre plusieurs minutes.

    Exemple de réponse
    NAME                                     READY  STATUS   RESTARTS AGE
    acc-helm-repo-6b44d68d94-d8m55           1/1    Running  0        13m
    activity-78f99ddf8-hltct                 1/1    Running  0        10m
    api-token-authentication-457nl           1/1    Running  0        9m28s
    api-token-authentication-dgwsz           1/1    Running  0        9m28s
    api-token-authentication-hmqqc           1/1    Running  0        9m28s
    asup-75fd554dc6-m6qzh                    1/1    Running  0        9m38s
    authentication-6779b4c85d-92gds          1/1    Running  0        8m11s
    bucketservice-7cc767f8f8-lqwr8           1/1    Running  0        9m31s
    certificates-549fd5d6cb-5kmd6            1/1    Running  0        9m56s
    certificates-549fd5d6cb-bkjh9            1/1    Running  0        9m56s
    cloud-extension-7bcb7948b-hn8h2          1/1    Running  0        10m
    cloud-insights-service-56ccf86647-fgg69  1/1    Running  0        9m46s
    composite-compute-677685b9bb-7vgsf       1/1    Running  0        10m
    composite-volume-657d6c5585-dnq79        1/1    Running  0        9m49s
    credentials-755fd867c8-vrlmt             1/1    Running  0        11m
    entitlement-86495cdf5b-nwhh2             1/1    Running  2        10m
    features-5684fb8b56-8d6s8                1/1    Running  0        10m
    fluent-bit-ds-rhx7v                      1/1    Running  0        7m48s
    fluent-bit-ds-rjms4                      1/1    Running  0        7m48s
    fluent-bit-ds-zf5ph                      1/1    Running  0        7m48s
    graphql-server-66d895f544-w6hjd          1/1    Running  0        3m29s
    identity-744df448d5-rlcmm                1/1    Running  0        10m
    influxdb2-0                              1/1    Running  0        13m
    keycloak-operator-75c965cc54-z7csw       1/1    Running  0        8m16s
    krakend-798d6df96f-9z2sk                 1/1    Running  0        3m26s
    license-5fb7d75765-f8mjg                 1/1    Running  0        9m50s
    login-ui-7d5b7df85d-l2s7s                1/1    Running  0        3m20s
    loki-0                                   1/1    Running  0        13m
    metrics-facade-599b9d7fcc-gtmgl          1/1    Running  0        9m40s
    monitoring-operator-67cc74f844-cdplp     2/2    Running  0        8m11s
    nats-0                                   1/1    Running  0        13m
    nats-1                                   1/1    Running  0        13m
    nats-2                                   1/1    Running  0        12m
    nautilus-769f5b74cd-k5jxm                1/1    Running  0        9m42s
    nautilus-769f5b74cd-kd9gd                1/1    Running  0        8m59s
    openapi-84f6ccd8ff-76kvp                 1/1    Running  0        9m34s
    packages-6f59fc67dc-4g2f5                1/1    Running  0        9m52s
    polaris-consul-consul-server-0           1/1    Running  0        13m
    polaris-consul-consul-server-1           1/1    Running  0        13m
    polaris-consul-consul-server-2           1/1    Running  0        13m
    polaris-keycloak-0                       1/1    Running  0        8m7s
    polaris-keycloak-1                       1/1    Running  0        5m49s
    polaris-keycloak-2                       1/1    Running  0        5m15s
    polaris-keycloak-db-0                    1/1    Running  0        8m6s
    polaris-keycloak-db-1                    1/1    Running  0        5m49s
    polaris-keycloak-db-2                    1/1    Running  0        4m57s
    polaris-mongodb-0                        2/2    Running  0        13m
    polaris-mongodb-1                        2/2    Running  0        12m
    polaris-mongodb-2                        2/2    Running  0        12m
    polaris-ui-565f56bf7b-zwr8b              1/1    Running  0        3m19s
    polaris-vault-0                          1/1    Running  0        13m
    polaris-vault-1                          1/1    Running  0        13m
    polaris-vault-2                          1/1    Running  0        13m
    public-metrics-6d86d66444-2wbzl          1/1    Running  0        9m30s
    storage-backend-metrics-77c5d98dcd-dbhg5 1/1    Running  0        9m44s
    storage-provider-78c885f57c-6zcv4        1/1    Running  0        9m36s
    telegraf-ds-2l2m9                        1/1    Running  0        7m48s
    telegraf-ds-qfzgh                        1/1    Running  0        7m48s
    telegraf-ds-shrms                        1/1    Running  0        7m48s
    telegraf-rs-bjpkt                        1/1    Running  0        7m48s
    telemetry-service-6684696c64-qzfdf       1/1    Running  0        10m
    tenancy-6596b6c54d-vmpsm                 1/1    Running  0        10m
    traefik-7489dc59f9-6mnst                 1/1    Running  0        3m19s
    traefik-7489dc59f9-xrkgg                 1/1    Running  0        3m4s
    trident-svc-6c8dc458f5-jswcl             1/1    Running  0        10m
    vault-controller-6b954f9b76-gz9nm        1/1    Running  0        11m
  2. (Facultatif) pour vous assurer que l’installation est terminée, vous pouvez regarder le acc-operator journaux utilisant la commande suivante.

    kubectl logs deploy/acc-operator-controller-manager -n netapp-acc-operator -c manager -f
    Remarque accHost l’enregistrement du cluster est l’une des dernières opérations. en cas de défaillance, le déploiement ne pourra pas échouer. Dans l’éventualité où un échec d’enregistrement de cluster était indiqué dans les journaux, vous pouvez réessayer d’enregistrer via le flux de production Add cluster "Dans l’interface utilisateur" Ou API.
  3. Lorsque tous les modules sont en cours d’exécution, vérifiez que l’installation a réussi (READY est True) Et obtenez le mot de passe unique que vous utiliserez lorsque vous vous connectez à Astra Control Center :

    kubectl get AstraControlCenter -n netapp-acc

    Réponse :

    NAME    UUID                                      VERSION     ADDRESS         READY
    astra   ACC-9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f  22.08.1-26  10.111.111.111  True
    Important Copiez la valeur UUID. Le mot de passe est ACC- Suivi de la valeur UUID (ACC-[UUID] ou, dans cet exemple, ACC-9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f).

Configurer l’entrée pour l’équilibrage de charge

Vous pouvez configurer un contrôleur d’entrée Kubernetes qui gère l’accès externe aux services, comme l’équilibrage de la charge dans un cluster.

Cette procédure explique comment configurer un contrôleur d’entrée (ingressType:Generic). Il s’agit de l’action par défaut avec Astra Control Center. Après le déploiement du centre de contrôle Astra, vous devrez configurer le contrôleur d’entrée pour exposer le centre de contrôle Astra à une URL.

Remarque Si vous ne souhaitez pas configurer un contrôleur d’entrée, vous pouvez le configurer ingressType:AccTraefik). Le centre de contrôle Astra utilise un service de type « équilibreur de charge » (svc/traefik Dans l’espace de noms du centre de contrôle Astra), et exige qu’il se voit attribuer une adresse IP externe accessible. Si des équilibreurs de charge sont autorisés dans votre environnement et que vous n’en avez pas encore configuré, vous pouvez utiliser MetalLB ou un autre équilibreur de charge de service externe pour attribuer une adresse IP externe au service. Dans la configuration du serveur DNS interne, pointez le nom DNS choisi pour Astra Control Center vers l’adresse IP à équilibrage de charge. Pour plus de détails sur le type de service « LoadBalancer » et l’entrée, voir "De formation".

Les étapes diffèrent en fonction du type de contrôleur d’entrée utilisé :

  • Entrée Istio

  • Contrôleur d’entrée Nginx

  • Contrôleur d’entrée OpenShift

Ce dont vous avez besoin
  • Le requis "contrôleur d’entrée" doit déjà être déployé.

  • Le "classe d’entrée" correspondant au contrôleur d’entrée doit déjà être créé.

  • Vous utilisez les versions de Kubernetes entre et, y compris v1.19 et v1.22.

Étapes pour l’entrée Istio
  1. Configurer l’entrée Istio.

    Remarque Cette procédure suppose que Istio est déployé à l’aide du profil de configuration par défaut. 
  2. Rassemblez ou créez le certificat et le fichier de clé privée souhaités pour la passerelle d’entrée.

    Vous pouvez utiliser un certificat signé par une autorité de certification ou auto-signé. Le nom commun doit être l’adresse Astra (FQDN).

    Exemple de commande : 

    openssl req -x509 -nodes -days 365 -newkey rsa:2048 
    -keyout tls.key -out tls.crt
  3. Créez un secret tls secret name de type kubernetes.io/tls Pour une clé privée TLS et un certificat dans istio-system namespace Comme décrit dans les secrets TLS.

    Exemple de commande : 

    kubectl create secret tls [tls secret name] 
    --key="tls.key"
    --cert="tls.crt" -n istio-system
    Astuce Le nom du secret doit correspondre au spec.tls.secretName fourni dans istio-ingress.yaml fichier.
  4. Déployez une ressource entrée dans netapp-acc (Ou espace de noms personnalisé) utilisant soit l’espace de noms v1beta1 (obsolète dans la version Kubernetes inférieure à ou 1.22) soit le type de ressource v1 pour un schéma obsolète ou un nouveau schéma :

    Résultat :

    apiVersion: networking.k8s.io/v1beta1
    kind: IngressClass
    metadata:
      name: istio
    spec:
      controller: istio.io/ingress-controller
    ---
    apiVersion: networking.k8s.io/v1beta1
    kind: Ingress
    metadata:
      name: ingress
      namespace: istio-system
    spec:
      ingressClassName: istio
      tls:
      - hosts:
        - <ACC addess>
        secretName: [tls secret name]
      rules:
      - host: [ACC addess]
        http:
          paths:
          - path: /
            pathType: Prefix
            backend:
              serviceName: traefik
              servicePort: 80

    Pour le nouveau schéma v1, suivez cet exemple :

    kubectl apply -f istio-Ingress.yaml

    Résultat :

    apiVersion: networking.k8s.io/v1
    kind: IngressClass
    metadata:
      name: istio
    spec:
      controller: istio.io/ingress-controller
    ---
    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: ingress
      namespace: istio-system
    spec:
      ingressClassName: istio
      tls:
      - hosts:
        - <ACC addess>
        secretName: [tls secret name]
      rules:
      - host: [ACC addess]
        http:
          paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: traefik
                port:
                  number: 80
  5. Déployez Astra Control Center comme d’habitude.

  6. Vérifier l’état de l’entrée :

    kubectl get ingress -n netapp-acc

    Réponse :

    NAME    CLASS HOSTS             ADDRESS         PORTS   AGE
    ingress istio astra.example.com 172.16.103.248  80, 443 1h
Étapes du contrôleur d’entrée Nginx
  1. Créer un secret de type[kubernetes.io/tls] Pour une clé privée TLS et un certificat dans netapp-acc (ou espace de noms personnalisé) comme décrit dans "Secrets TLS".

  2. Déployez une ressource entrée dans netapp-acc (ou espace de nom personnalisé) utilisant l’un ou l’autre v1beta1 (Obsolète dans la version Kubernetes inférieure à ou 1.22) ou v1 type de ressource pour un schéma obsolète ou nouveau :

    1. Pour un v1beta1 schéma obsolète, suivre cet exemple :

      apiVersion: extensions/v1beta1
      Kind: IngressClass
      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. Pour le v1 nouveau schéma, suivez cet exemple :

      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
Étapes du contrôleur d’entrée OpenShift
  1. Procurez-vous votre certificat et obtenez les fichiers de clé, de certificat et d’autorité de certification prêts à l’emploi par la route OpenShift.

  2. Création de la route 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

Connectez-vous à l’interface utilisateur du centre de contrôle Astra

Après avoir installé Astra Control Center, vous modifierez le mot de passe de l’administrateur par défaut et vous connecterez au tableau de bord de l’interface utilisateur de Astra Control Center.

Étapes
  1. Dans un navigateur, entrez le FQDN que vous avez utilisé dans le astraAddress dans le astra_control_center_min.yaml CR quand Vous avez installé Astra Control Center.

  2. Acceptez les certificats auto-signés lorsque vous y êtes invité.

    Remarque Vous pouvez créer un certificat personnalisé après la connexion.
  3. Dans la page de connexion à Astra Control Center, entrez la valeur que vous avez utilisée email dans astra_control_center_min.yaml CR quand Vous avez installé Astra Control Center, suivi du mot de passe à usage unique (ACC-[UUID]).

    Remarque Si vous saisissez trois fois un mot de passe incorrect, le compte admin est verrouillé pendant 15 minutes.
  4. Sélectionnez connexion.

  5. Modifiez le mot de passe lorsque vous y êtes invité.

    Remarque Si c’est votre premier login et que vous oubliez le mot de passe et qu’aucun autre compte utilisateur administratif n’a encore été créé, contactez le support NetApp pour obtenir de l’aide pour la récupération de mot de passe.
  6. (Facultatif) supprimez le certificat TLS auto-signé existant et remplacez-le par un "Certificat TLS personnalisé signé par une autorité de certification".

Dépanner l’installation

Si l’un des services est dans Error état, vous pouvez inspecter les journaux. Rechercher les codes de réponse API dans la plage 400 à 500. Ceux-ci indiquent l’endroit où un échec s’est produit.

Étapes
  1. Pour inspecter les journaux de l’opérateur de l’Astra Control Center, entrez ce qui suit :

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

Et la suite

Terminez le déploiement en effectuant le processus "tâches de configuration".