Konfigurieren Sie nach der Installation das Astra Control Center
Je nach Umgebung kann es nach der Installation des Astra Control Center zusätzliche Konfigurationsmöglichkeiten geben.
Ressourceneinschränkungen entfernen
In einigen Umgebungen werden die Objekte ResourceQuotas und LimitRanges verwendet, um zu verhindern, dass die Ressourcen in einem Namespace alle verfügbaren CPUs und Speicher im Cluster verbrauchen. Das Astra Control Center stellt keine Höchstgrenzen ein, sodass diese Ressourcen nicht eingehalten werden. Wenn Ihre Umgebung auf diese Weise konfiguriert ist, müssen Sie diese Ressourcen aus den Namespaces entfernen, in denen Sie Astra Control Center installieren möchten.
Sie können folgende Schritte verwenden, um diese Kontingente und Grenzen abzurufen und zu entfernen. In diesen Beispielen wird die Befehlsausgabe direkt nach dem Befehl angezeigt.
-
Erhalten Sie die Ressourcen-Kontingente im
netapp-acc
(Oder benutzerdefinierter Name) Namespace:kubectl get quota -n [netapp-acc or custom namespace]
Antwort:
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
-
Alle Ressourcen-Kontingente nach Namen löschen:
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]
-
Erhalten Sie die Grenzwerte im
netapp-acc
(Oder benutzerdefinierter Name) Namespace:kubectl get limits -n [netapp-acc or custom namespace]
Antwort:
NAME CREATED AT cpu-limit-range 2022-06-27T19:01:23Z
-
Grenzwerte nach Namen löschen:
kubectl delete limitrange cpu-limit-range -n [netapp-acc or custom namespace]
Fügen Sie ein benutzerdefiniertes TLS-Zertifikat hinzu
Astra Control Center verwendet standardmäßig ein selbstsigniertes TLS-Zertifikat für Ingress-Controller-Datenverkehr (nur in bestimmten Konfigurationen) und die Web-UI-Authentifizierung mit Webbrowsern. Für den Produktionsbetrieb sollten Sie das vorhandene selbstsignierte TLS-Zertifikat entfernen und durch ein von einer Zertifizierungsstelle signiertes TLS-Zertifikat ersetzen.
Das selbstsignierte Standardzertifikat wird für zwei Verbindungstypen verwendet:
Durch Ersetzen des Standard-TLS-Zertifikats wird das Zertifikat ersetzt, das für die Authentifizierung für diese Verbindungen verwendet wird. |
-
Kubernetes-Cluster mit installiertem Astra Control Center
-
Administratorzugriff auf eine Command Shell auf dem zu ausgeführten Cluster
kubectl
Befehle -
Private Schlüssel- und Zertifikatdateien aus der CA
Entfernen Sie das selbstsignierte Zertifikat
Entfernen Sie das vorhandene selbstsignierte TLS-Zertifikat.
-
Melden Sie sich mit SSH beim Kubernetes Cluster an, der als administrativer Benutzer Astra Control Center hostet.
-
Suchen Sie das mit dem aktuellen Zertifikat verknüpfte TLS-Geheimnis mit dem folgenden Befehl, Ersetzen
<ACC-deployment-namespace>
Mit dem Astra Control Center Deployment Namespace:kubectl get certificate -n <ACC-deployment-namespace>
-
Löschen Sie den derzeit installierten Schlüssel und das Zertifikat mit den folgenden Befehlen:
kubectl delete cert cert-manager-certificates -n <ACC-deployment-namespace>
kubectl delete secret secure-testing-cert -n <ACC-deployment-namespace>
Fügen Sie mithilfe der Befehlszeile ein neues Zertifikat hinzu
Fügen Sie ein neues TLS-Zertifikat hinzu, das von einer CA signiert wird.
-
Verwenden Sie den folgenden Befehl, um das neue TLS-Geheimnis mit dem privaten Schlüssel und den Zertifikatdateien aus der CA zu erstellen und die Argumente in Klammern <> durch die entsprechenden Informationen zu ersetzen:
kubectl create secret tls <secret-name> --key <private-key-filename> --cert <certificate-filename> -n <ACC-deployment-namespace>
-
Verwenden Sie den folgenden Befehl und das folgende Beispiel, um die Cluster-Datei CRD (Custom Resource Definition) zu bearbeiten und die zu ändern
spec.selfSigned
Mehrwert fürspec.ca.secretName
So verweisen Sie auf das zuvor erstellte TLS-Geheimnis:kubectl edit clusterissuers.cert-manager.io/cert-manager-certificates -n <ACC-deployment-namespace>
CRD:
#spec: # selfSigned: {} spec: ca: secretName: <secret-name>
-
Überprüfen Sie mit den folgenden Befehlen und der Beispiel-Ausgabe, ob die Änderungen korrekt sind und das Cluster bereit ist, Zertifikate zu validieren, und ersetzen Sie sie
<ACC-deployment-namespace>
Mit dem Astra Control Center Deployment Namespace:kubectl describe clusterissuers.cert-manager.io/cert-manager-certificates -n <ACC-deployment-namespace>
Antwort:
Status: Conditions: Last Transition Time: 2021-07-01T23:50:27Z Message: Signing CA verified Reason: KeyPairVerified Status: True Type: Ready Events: <none>
-
Erstellen Sie die
certificate.yaml
Datei anhand des folgenden Beispiels, Ersetzen der Platzhalterwerte in Klammern <> durch entsprechende Informationen:In diesem Beispiel wird der verwendet dnsNames
Eigenschaft zur Angabe der Astra Control Center DNS-Adresse. Astra Control Center unterstützt nicht die Verwendung der CN-Eigenschaft (Common Name) zur Angabe der DNS-Adresse.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
-
Erstellen Sie das Zertifikat mit dem folgenden Befehl:
kubectl apply -f certificate.yaml
-
Überprüfen Sie mithilfe der folgenden Befehl- und Beispielausgabe, ob das Zertifikat korrekt erstellt wurde und mit den während der Erstellung angegebenen Argumenten (z. B. Name, Dauer, Verlängerungsfrist und DNS-Namen).
kubectl describe certificate -n <ACC-deployment-namespace>
Antwort:
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>
-
Bearbeiten Sie das TLS speichert CRD, um mit dem folgenden Befehl und Beispiel auf Ihren neuen geheimen Zertifikatnamen zu verweisen. Ersetzen Sie die Platzhalterwerte in Klammern <> durch die entsprechenden Informationen
kubectl edit tlsstores.traefik.io -n <ACC-deployment-namespace>
CRD:
... spec: defaultCertificate: secretName: <certificate-secret-name>
-
Bearbeiten Sie die Option Ingress CRD TLS, um mit dem folgenden Befehl und Beispiel auf Ihr neues Zertifikatgeheimnis zu verweisen und die Platzhalterwerte in Klammern <> durch entsprechende Informationen zu ersetzen:
kubectl edit ingressroutes.traefik.io -n <ACC-deployment-namespace>
CRD:
... tls: secretName: <certificate-secret-name>
-
Navigieren Sie mithilfe eines Webbrowsers zur IP-Adresse der Implementierung von Astra Control Center.
-
Vergewissern Sie sich, dass die Zertifikatdetails mit den Details des installierten Zertifikats übereinstimmen.
-
Exportieren Sie das Zertifikat und importieren Sie das Ergebnis in den Zertifikatmanager in Ihrem Webbrowser.