Skip to main content
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Configurare Astra Control Center dopo l'installazione

Collaboratori

A seconda dell'ambiente in uso, potrebbe essere necessaria una configurazione aggiuntiva dopo l'installazione di Astra Control Center.

Rimuovere le limitazioni delle risorse

Alcuni ambienti utilizzano gli oggetti ResourceQuotas e LimitRanges per impedire alle risorse di uno spazio dei nomi di consumare tutta la CPU e la memoria disponibili nel cluster. Astra Control Center non imposta limiti massimi, pertanto non sarà conforme a tali risorse. Se l'ambiente è configurato in questo modo, è necessario rimuovere tali risorse dagli spazi dei nomi in cui si intende installare Astra Control Center.

Per recuperare e rimuovere le quote e i limiti, procedere come segue. In questi esempi, l'output del comando viene visualizzato immediatamente dopo il comando.

Fasi
  1. Ottenere le quote delle risorse in netapp-acc namespace (o personalizzato):

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

    Risposta:

    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. Eliminare tutte le quote delle risorse in base al nome:

    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. Ottenere gli intervalli di limite in netapp-acc namespace (o personalizzato):

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

    Risposta:

    NAME              CREATED AT
    cpu-limit-range   2022-06-27T19:01:23Z
  4. Eliminare gli intervalli di limiti in base al nome:

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

Aggiungere un certificato TLS personalizzato

Astra Control Center utilizza per impostazione predefinita un certificato TLS autofirmato per il traffico dei controller di ingresso (solo in alcune configurazioni) e l'autenticazione dell'interfaccia utente Web con i browser Web. Per l'utilizzo in produzione, è necessario rimuovere il certificato TLS autofirmato esistente e sostituirlo con un certificato TLS firmato da un'autorità di certificazione (CA).

Nota

Il certificato autofirmato predefinito viene utilizzato per due tipi di connessione:

  • Connessioni HTTPS all'interfaccia utente Web di Astra Control Center

  • Traffico del controller di ingresso (solo se ingressType: "AccTraefik" la proprietà è stata impostata in astra_control_center.yaml Durante l'installazione di Astra Control Center)

La sostituzione del certificato TLS predefinito sostituisce il certificato utilizzato per l'autenticazione di queste connessioni.

Prima di iniziare
  • Kubernetes cluster con Astra Control Center installato

  • Accesso amministrativo a una shell dei comandi sul cluster da eseguire kubectl comandi

  • Chiave privata e file di certificato dalla CA

Rimuovere il certificato autofirmato

Rimuovere il certificato TLS autofirmato esistente.

  1. Utilizzando SSH, accedere al cluster Kubernetes che ospita Astra Control Center come utente amministrativo.

  2. Individuare il segreto TLS associato al certificato corrente utilizzando il seguente comando, sostituendo <ACC-deployment-namespace> Con lo spazio dei nomi di implementazione di Astra Control Center:

    kubectl get certificate -n <ACC-deployment-namespace>
  3. Eliminare il certificato e il segreto attualmente installati utilizzando i seguenti comandi:

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

Aggiungere un nuovo certificato utilizzando la riga di comando

Aggiungere un nuovo certificato TLS firmato da una CA.

  1. Utilizzare il seguente comando per creare il nuovo segreto TLS con la chiave privata e i file di certificato della CA, sostituendo gli argomenti tra parentesi <> con le informazioni appropriate:

    kubectl create secret tls <secret-name> --key <private-key-filename> --cert <certificate-filename> -n <ACC-deployment-namespace>
  2. Utilizzare il seguente comando e l'esempio per modificare il file CRD (Custom Resource Definition) del cluster e modificare spec.selfSigned valore a. spec.ca.secretName Per fare riferimento al segreto TLS creato in precedenza:

    kubectl edit clusterissuers.cert-manager.io/cert-manager-certificates -n <ACC-deployment-namespace>

    CRD:

    #spec:
    #  selfSigned: {}
    
    spec:
      ca:
        secretName: <secret-name>
  3. Utilizzare il seguente comando e l'output di esempio per confermare che le modifiche sono corrette e che il cluster è pronto per validare i certificati, sostituendo <ACC-deployment-namespace> Con lo spazio dei nomi di implementazione di Astra Control Center:

    kubectl describe clusterissuers.cert-manager.io/cert-manager-certificates -n <ACC-deployment-namespace>

    Risposta:

    Status:
      Conditions:
        Last Transition Time:  2021-07-01T23:50:27Z
        Message:               Signing CA verified
        Reason:                KeyPairVerified
        Status:                True
        Type:                  Ready
    Events:                    <none>
  4. Creare il certificate.yaml file utilizzando il seguente esempio, sostituendo i valori segnaposto tra parentesi <> con le informazioni appropriate:

    Nota In questo esempio viene utilizzato il dnsNames Per specificare l'indirizzo DNS di Astra Control Center. Astra Control Center non supporta l'utilizzo della proprietà Common Name (CN) per specificare l'indirizzo DNS.
    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. Creare il certificato utilizzando il seguente comando:

    kubectl apply -f certificate.yaml
  6. Utilizzando il seguente comando e l'output di esempio, verificare che il certificato sia stato creato correttamente e con gli argomenti specificati durante la creazione (ad esempio nome, durata, scadenza di rinnovo e nomi DNS).

    kubectl describe certificate -n <ACC-deployment-namespace>

    Risposta:

    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. Modificare il CRD degli archivi TLS in modo che punti al nuovo nome segreto del certificato utilizzando il seguente comando ed esempio, sostituendo i valori segnaposto tra parentesi <> con le informazioni appropriate

    kubectl edit tlsstores.traefik.io -n <ACC-deployment-namespace>

    CRD:

    ...
    spec:
      defaultCertificate:
        secretName: <certificate-secret-name>
  8. Modificare l'opzione TLS CRD di ingresso per indicare il nuovo segreto del certificato utilizzando il seguente comando ed esempio, sostituendo i valori segnaposto tra parentesi <> con le informazioni appropriate:

    kubectl edit ingressroutes.traefik.io -n <ACC-deployment-namespace>

    CRD:

    ...
     tls:
        secretName: <certificate-secret-name>
  9. Utilizzando un browser Web, accedere all'indirizzo IP di implementazione di Astra Control Center.

  10. Verificare che i dettagli del certificato corrispondano ai dettagli del certificato installato.

  11. Esportare il certificato e importare il risultato nel gestore dei certificati nel browser Web.