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.

Configurer le centre de contrôle Astra après l'installation

Contributeurs

En fonction de votre environnement, une configuration supplémentaire peut être nécessaire après l'installation d'Astra Control Center.

Supprimer les limitations de ressources

Certains environnements utilisent les objets ResourceQuotas et LimitRanges pour empêcher les ressources d'un namespace de consommer l'ensemble des CPU et de la mémoire disponibles sur le cluster. Le centre de contrôle Astra ne fixe pas de limites maximales, il ne sera donc pas conforme à ces ressources. Si votre environnement est configuré de cette façon, vous devez supprimer ces ressources des espaces de noms où vous prévoyez d'installer Astra Control Center.

Vous pouvez suivre les étapes suivantes pour récupérer et supprimer ces quotas et ces limites. Dans ces exemples, la sortie de la commande est affichée immédiatement après la commande.

Étapes
  1. Obtenez les quotas de ressources dans netapp-acc (ou nom-personnalisé) espace de noms :

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

    Réponse :

    NAME          AGE   REQUEST                                        LIMIT
    pods-high     16s   requests.cpu: 0/20, requests.memory: 0/100Gi   limits.cpu: 0/200, limits.memory: 0/1000Gi
    pods-low      15s   requests.cpu: 0/1, requests.memory: 0/1Gi      limits.cpu: 0/2, limits.memory: 0/2Gi
    pods-medium   16s   requests.cpu: 0/10, requests.memory: 0/20Gi    limits.cpu: 0/20, limits.memory: 0/200Gi
  2. Supprimez tous les quotas de ressources par nom :

    kubectl delete resourcequota pods-high -n [netapp-acc or custom namespace]
    kubectl delete resourcequota pods-low -n [netapp-acc or custom namespace]
    kubectl delete resourcequota pods-medium -n [netapp-acc or custom namespace]
  3. Obtenez les limites de la netapp-acc (ou nom-personnalisé) espace de noms :

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

    Réponse :

    NAME              CREATED AT
    cpu-limit-range   2022-06-27T19:01:23Z
  4. Supprimez les plages de limite par nom :

    kubectl delete limitrange cpu-limit-range -n [netapp-acc or custom namespace]

Activer la communication réseau entre les espaces de noms

Certains environnements utilisent les constructions NetworkPolicy pour limiter le trafic entre les espaces de noms. L'opérateur du centre de contrôle Astra et le centre de contrôle Astra sont dans des espaces de noms différents. Les services de ces différents espaces de noms doivent être capables de communiquer les uns avec les autres. Pour activer cette communication, procédez comme suit.

Étapes
  1. Supprimez toutes les ressources NetworkPolicy qui existent dans l'espace de noms Astra Control Center :

    kubectl get networkpolicy -n [netapp-acc or custom namespace]
  2. Pour chaque objet NetworkPolicy renvoyé par la commande précédente, utilisez la commande suivante pour le supprimer. Remplacez [NOM_OBJET] par le nom de l'objet renvoyé :

    kubectl delete networkpolicy [OBJECT_NAME] -n [netapp-acc or custom namespace]
  3. Appliquez le fichier de ressources suivant pour configurer le acc-avp-network-policy Objet pour permettre aux services de plug-in Astra de faire des demandes aux services Astra Control Center. Remplacez entre parenthèses <> par les informations relatives à votre environnement :

    apiVersion: networking.k8s.io/v1
    kind: NetworkPolicy
    metadata:
      name: acc-avp-network-policy
      namespace: <ACC_NAMESPACE_NAME> # REPLACE THIS WITH THE ASTRA CONTROL CENTER NAMESPACE NAME
    spec:
      podSelector: {}
      policyTypes:
        - Ingress
      ingress:
        - from:
            - namespaceSelector:
                matchLabels:
                  kubernetes.io/metadata.name: <PLUGIN_NAMESPACE_NAME> # REPLACE THIS WITH THE ASTRA PLUGIN NAMESPACE NAME
  4. Appliquez le fichier de ressources suivant pour configurer le acc-operator-network-policy Objet permettant à l'opérateur du centre de contrôle Astra de communiquer avec les services du centre de contrôle Astra. Remplacez entre parenthèses <> par les informations relatives à votre environnement :

    apiVersion: networking.k8s.io/v1
    kind: NetworkPolicy
    metadata:
      name: acc-operator-network-policy
      namespace: <ACC_NAMESPACE_NAME> # REPLACE THIS WITH THE ASTRA CONTROL CENTER NAMESPACE NAME
    spec:
      podSelector: {}
      policyTypes:
        - Ingress
      ingress:
        - from:
            - namespaceSelector:
                matchLabels:
                  kubernetes.io/metadata.name: <NETAPP-ACC-OPERATOR> # REPLACE THIS WITH THE OPERATOR NAMESPACE NAME

Ajouter un certificat TLS personnalisé

Par défaut, Astra Control Center utilise un certificat TLS auto-signé pour le trafic du contrôleur d'entrée (uniquement dans certaines configurations) et l'authentification de l'interface utilisateur Web avec des navigateurs Web. Vous pouvez supprimer le certificat TLS auto-signé existant et le remplacer par un certificat TLS signé par une autorité de certification (AC).

Remarque

Le certificat auto-signé par défaut est utilisé pour deux types de connexions :

  • Connexions HTTPS à l'interface utilisateur Web Astra Control Center

  • Entrée du trafic du contrôleur (uniquement si le ingressType: "AccTraefik" la propriété a été définie dans astra_control_center.yaml Fichier lors de l'installation d'Astra Control Center)

Le remplacement du certificat TLS par défaut remplace le certificat utilisé pour l'authentification pour ces connexions.

Avant de commencer
  • Cluster Kubernetes avec Astra Control Center installé

  • Accès administratif à un shell de commande sur le cluster à exécuter kubectl commandes

  • Clé privée et fichiers de certificat de l'autorité de certification

Supprimez le certificat auto-signé

Supprimez le certificat TLS auto-signé existant.

  1. Avec SSH, connectez-vous au cluster Kubernetes qui héberge Astra Control Center en tant qu'utilisateur administratif.

  2. Recherchez le code secret TLS associé au certificat en cours à l'aide de la commande suivante, remplacement <ACC-deployment-namespace> Avec l'espace de noms de déploiement d'Astra Control Center :

    kubectl get certificate -n <ACC-deployment-namespace>
  3. Supprimez le certificat et le secret actuellement installés à l'aide des commandes suivantes :

    kubectl delete cert cert-manager-certificates -n <ACC-deployment-namespace>
    kubectl delete secret secure-testing-cert -n <ACC-deployment-namespace>

Ajoutez un nouveau certificat à l'aide de la ligne de commande

Ajoutez un nouveau certificat TLS signé par une autorité de certification.

  1. Utilisez la commande suivante pour créer le nouveau secret TLS avec la clé privée et les fichiers de certificat de l'autorité de certification, en remplaçant les arguments entre parenthèses <> par les informations appropriées :

    kubectl create secret tls <secret-name> --key <private-key-filename> --cert <certificate-filename> -n <ACC-deployment-namespace>
  2. Utilisez la commande et l'exemple suivants pour modifier le fichier CRD (Custom Resource Definition) du cluster et modifier spec.selfSigned valeur à spec.ca.secretName Pour consulter le secret TLS créé précédemment :

    kubectl edit clusterissuers.cert-manager.io/cert-manager-certificates -n <ACC-deployment-namespace>
    ....
    
    #spec:
    #  selfSigned: {}
    
    spec:
      ca:
        secretName: <secret-name>
  3. Utilisez la commande suivante et exemple de résultat pour vérifier que les modifications sont correctes et le cluster est prêt à valider les certificats, en remplaçant <ACC-deployment-namespace> Avec l'espace de noms de déploiement d'Astra Control Center :

    kubectl describe clusterissuers.cert-manager.io/cert-manager-certificates -n <ACC-deployment-namespace>
    ....
    
    Status:
      Conditions:
        Last Transition Time:  2021-07-01T23:50:27Z
        Message:               Signing CA verified
        Reason:                KeyPairVerified
        Status:                True
        Type:                  Ready
    Events:                    <none>
  4. Créer le certificate.yaml fichier avec l'exemple suivant, en remplaçant les valeurs de paramètre fictif entre parenthèses <> par les informations appropriées :

    apiVersion: cert-manager.io/v1
    kind: Certificate
    metadata:
      name: <certificate-name>
      namespace: <ACC-deployment-namespace>
    spec:
      secretName: <certificate-secret-name>
      duration: 2160h # 90d
      renewBefore: 360h # 15d
      dnsNames:
      - <astra.dnsname.example.com> #Replace with the correct Astra Control Center DNS address
      issuerRef:
        kind: ClusterIssuer
        name: cert-manager-certificates
  5. Créez le certificat à l'aide de la commande suivante :

    kubectl apply -f certificate.yaml
  6. À l'aide de la commande et de l'exemple de sortie suivants, vérifiez que le certificat a été créé correctement et avec les arguments que vous avez spécifiés lors de la création (tels que le nom, la durée, la date limite de renouvellement et les noms DNS).

    kubectl describe certificate -n <ACC-deployment-namespace>
    ....
    
    Spec:
      Dns Names:
        astra.example.com
      Duration:  125h0m0s
      Issuer Ref:
        Kind:        ClusterIssuer
        Name:        cert-manager-certificates
      Renew Before:  61h0m0s
      Secret Name:   <certificate-secret-name>
    Status:
      Conditions:
        Last Transition Time:  2021-07-02T00:45:41Z
        Message:               Certificate is up to date and has not expired
        Reason:                Ready
        Status:                True
        Type:                  Ready
      Not After:               2021-07-07T05:45:41Z
      Not Before:              2021-07-02T00:45:41Z
      Renewal Time:            2021-07-04T16:45:41Z
      Revision:                1
    Events:                    <none>
  7. Modifiez l'option Ingress CRD TLS pour pointer vers votre nouveau secret de certificat à l'aide de la commande suivante et de l'exemple, en remplaçant les valeurs de paramètre fictif entre parenthèses <> par les informations appropriées :

    kubectl edit ingressroutes.traefik.containo.us -n <ACC-deployment-namespace>
    ....
    
    # tls:
    #    options:
    #      name: default
    #    secretName: secure-testing-cert
    #    store:
    #      name: default
    
     tls:
        options:
          name: default
        secretName: <certificate-secret-name>
        store:
          name: default
  8. À l'aide d'un navigateur Web, accédez à l'adresse IP de déploiement d'Astra Control Center.

  9. Vérifiez que les détails du certificat correspondent aux détails du certificat que vous avez installé.

  10. Exportez le certificat et importez le résultat dans le gestionnaire de certificats de votre navigateur Web.