Installieren Sie das Astra Control Center mithilfe des Standardprozesses
Laden Sie zum Installieren des Astra Control Center das Installationspaket von der NetApp Support Site herunter und führen Sie die folgenden Schritte aus. Mit diesem Verfahren können Sie Astra Control Center in Internet-angeschlossenen oder luftgekapderten Umgebungen installieren.
Für andere Installationsverfahren erweitern
-
Installation mit RedHat OpenShift OperatorHub: Verwenden Sie dies "Alternativverfahren" So installieren Sie Astra Control Center auf OpenShift mit OperatorHub.
-
In der öffentlichen Cloud mit Cloud Volumes ONTAP-Backend installieren: Verwenden "Derartige Verfahren" Zur Installation von Astra Control Center in Amazon Web Services (AWS), Google Cloud Platform (GCP) oder Microsoft Azure mit einem Cloud Volumes ONTAP Storage-Back-End
Eine Demonstration des Installationsvorgangs für Astra Control Center finden Sie unter "Dieses Video".
-
Wenn Sie POD-Sicherheitsrichtlinien in Ihrer Umgebung konfiguriert haben oder konfigurieren möchten, sollten Sie sich mit den POD-Sicherheitsrichtlinien vertraut machen und wie diese sich auf die Installation des Astra Control Center auswirken. Siehe "Pod-Sicherheitseinschränkungen".
-
Stellen Sie sicher, dass alle API-Services in einem ordnungsgemäßen Zustand und verfügbar sind:
kubectl get apiservices
-
Stellen Sie sicher, dass der Astra FQDN, den Sie verwenden möchten, für diesen Cluster routingfähig ist. Das bedeutet, dass Sie entweder einen DNS-Eintrag in Ihrem internen DNS-Server haben oder eine bereits registrierte Core URL-Route verwenden.
-
Wenn bereits ein Zertifikat-Manager im Cluster vorhanden ist, müssen Sie einen Teil durchführen "Erforderliche Schritte" Damit Astra Control Center nicht versucht, seinen eigenen Cert Manager zu installieren. Standardmäßig installiert Astra Control Center während der Installation einen eigenen Cert-Manager.
Astra Control Center kann in einer dritten Fehlerdomäne oder an einem sekundären Standort implementiert werden. Dies wird für Applikationsreplizierung und nahtlose Disaster Recovery empfohlen. |
Gehen Sie wie folgt vor, um Astra Control Center zu installieren:
Löschen Sie den Operator Astra Control Center nicht (z. B. kubectl delete -f astra_control_center_operator_deploy.yaml ) Zu jeder Zeit während der Astra Control Center Installation oder Betrieb, um das Löschen von Pods zu vermeiden.
|
Laden Sie das Astra Control Center herunter und extrahieren Sie es
-
Laden Sie das Bundle mit Astra Control Center herunter (
astra-control-center-[version].tar.gz
) Aus dem "Download-Seite für Astra Control Center". -
(Empfohlen, aber optional) Laden Sie das Zertifikaten- und Unterschriftenpaket für Astra Control Center herunter (
astra-control-center-certs-[version].tar.gz
) Um die Signatur des Bündels zu überprüfen.Erweitern Sie, um Details anzuzeigen
tar -vxzf astra-control-center-certs-[version].tar.gz
openssl dgst -sha256 -verify certs/AstraControlCenter-public.pub -signature certs/astra-control-center-[version].tar.gz.sig astra-control-center-[version].tar.gz
Die Ausgabe wird angezeigt
Verified OK
Nach erfolgreicher Überprüfung. -
Extrahieren Sie die Bilder aus dem Astra Control Center Bundle:
tar -vxzf astra-control-center-[version].tar.gz
Installieren Sie das NetApp Astra kubectl Plug-in
Sie können das NetApp Astra kubectl Befehlszeilenschnittstelle-Plug-in verwenden, um Images in ein lokales Docker Repository zu verschieben.
NetApp bietet Plug-ins-Binärdateien für verschiedene CPU-Architekturen und Betriebssysteme. Sie müssen wissen, welche CPU und welches Betriebssystem Sie haben, bevor Sie diese Aufgabe ausführen.
Wenn Sie das Plugin bereits von einer früheren Installation installiert haben, "Stellen Sie sicher, dass Sie über die neueste Version verfügen" Bevor Sie diese Schritte ausführen.
-
Listen Sie die verfügbaren NetApp Astra kubectl Plugin-Binärdateien auf:
Die kubectl Plugin-Bibliothek ist Teil des tar-Bündels und wird in den Ordner extrahiert kubectl-astra
.ls kubectl-astra/
-
Verschieben Sie die für Ihr Betriebssystem und die CPU-Architektur benötigte Datei in den aktuellen Pfad und benennen Sie sie in um
kubectl-astra
:cp kubectl-astra/<binary-name> /usr/local/bin/kubectl-astra
Fügen Sie die Bilder Ihrer lokalen Registrierung hinzu
-
Führen Sie die entsprechende Schrittfolge für Ihre Container-Engine durch:
-
Wechseln Sie in das Stammverzeichnis des Tarballs. Sie sollten den sehen
acc.manifest.bundle.yaml
Datei und diese Verzeichnisse:acc/
kubectl-astra/
acc.manifest.bundle.yaml
-
Übertragen Sie die Paketbilder im Astra Control Center-Bildverzeichnis in Ihre lokale Registrierung. Führen Sie die folgenden Ersetzungen durch, bevor Sie den ausführen
push-images
Befehl:-
Ersetzen Sie <BUNDLE_FILE> durch den Namen der Astra Control Bundle-Datei (
acc.manifest.bundle.yaml
). -
<MY_FULL_REGISTRY_PATH> durch die URL des Docker Repositorys ersetzen, beispielsweise "https://<docker-registry>".
-
Ersetzen Sie <MY_REGISTRY_USER> durch den Benutzernamen.
-
Ersetzen Sie <MY_REGISTRY_TOKEN> durch ein autorisiertes Token für die Registrierung.
kubectl astra packages push-images -m <BUNDLE_FILE> -r <MY_FULL_REGISTRY_PATH> -u <MY_REGISTRY_USER> -p <MY_REGISTRY_TOKEN>
-
-
Wechseln Sie in das Stammverzeichnis des Tarballs. Sie sollten diese Datei und das Verzeichnis sehen:
acc.manifest.bundle.yaml
acc/
-
Melden Sie sich bei Ihrer Registrierung an:
podman login <YOUR_REGISTRY>
-
Vorbereiten und Ausführen eines der folgenden Skripts, das für die von Ihnen verwendete Podman-Version angepasst ist. Ersetzen Sie <MY_FULL_REGISTRY_PATH> durch die URL Ihres Repositorys, die alle Unterverzeichnisse enthält.
Podman 4
export REGISTRY=<MY_FULL_REGISTRY_PATH> export PACKAGENAME=acc export PACKAGEVERSION=23.07.0-25 export DIRECTORYNAME=acc for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //') astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::') podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath} podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath} done
Podman 3
export REGISTRY=<MY_FULL_REGISTRY_PATH> export PACKAGENAME=acc export PACKAGEVERSION=23.07.0-25 export DIRECTORYNAME=acc for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //') astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::') podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath} podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath} done
Der Bildpfad, den das Skript erstellt, sollte abhängig von Ihrer Registrierungskonfiguration wie folgt aussehen: https://netappdownloads.jfrog.io/docker-astra-control-prod/netapp/astra/acc/23.07.0-25/image:version
Einrichten von Namespace und Geheimdienstraum für Registrys mit auth Anforderungen
-
Exportieren Sie den kubeconfig für den Host-Cluster Astra Control Center:
export KUBECONFIG=[file path]
Bevor Sie die Installation abschließen, vergewissern Sie sich, dass Ihr kubeconfig auf den Cluster zeigt, in dem Sie Astra Control Center installieren möchten. -
Wenn Sie eine Registrierung verwenden, für die eine Authentifizierung erforderlich ist, müssen Sie Folgendes tun:
Für Schritte erweitern
-
Erstellen Sie die
netapp-acc-operator
Namespace:kubectl create ns netapp-acc-operator
-
Erstellen Sie ein Geheimnis für das
netapp-acc-operator
Namespace. Fügen Sie Docker-Informationen hinzu und führen Sie den folgenden Befehl aus:Platzhalter your_registry_path
Sollte die Position der Bilder, die Sie früher hochgeladen haben, entsprechen (z. B.[Registry_URL]/netapp/astra/astracc/23.07.0-25
).kubectl create secret docker-registry astra-registry-cred -n netapp-acc-operator --docker-server=[your_registry_path] --docker-username=[username] --docker-password=[token]
Wenn Sie den Namespace löschen, nachdem das Geheimnis generiert wurde, erstellen Sie den Namespace neu und generieren Sie dann das Geheimnis für den Namespace neu. -
Erstellen Sie die
netapp-acc
(Oder Name des benutzerdefinierten Namespace).kubectl create ns [netapp-acc or custom namespace]
-
Erstellen Sie ein Geheimnis für das
netapp-acc
(Oder Name des benutzerdefinierten Namespace). Fügen Sie Docker-Informationen hinzu und führen Sie den folgenden Befehl aus: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]
-
Installieren Sie den Operator Astra Control Center
-
Telefonbuch ändern:
cd manifests
-
Bearbeiten Sie die YAML-Implementierung des Astra Control Center-Bedieners (
astra_control_center_operator_deploy.yaml
) Zu Ihrem lokalen Register und Geheimnis zu verweisen.vim astra_control_center_operator_deploy.yaml
Ein YAML-Beispiel mit Anmerkungen folgt diesen Schritten. -
Wenn Sie eine Registrierung verwenden, für die eine Authentifizierung erforderlich ist, ersetzen Sie die Standardzeile von
imagePullSecrets: []
Mit folgenden Optionen:imagePullSecrets: [{name: astra-registry-cred}]
-
Ändern
ASTRA_IMAGE_REGISTRY
Für daskube-rbac-proxy
Bild zum Registrierungspfad, in dem Sie die Bilder in ein geschoben haben Vorheriger Schritt. -
Ändern
ASTRA_IMAGE_REGISTRY
Für dasacc-operator-controller-manager
Bild zum Registrierungspfad, in dem Sie die Bilder in ein geschoben haben Vorheriger Schritt.
Erweitern für Beispiel astra_control_Center_Operator_deploy.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 strategy: type: Recreate 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: ASTRA_IMAGE_REGISTRY/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 env: - name: ACCOP_LOG_LEVEL value: "2" - name: ACCOP_HELM_INSTALLTIMEOUT value: 5m image: ASTRA_IMAGE_REGISTRY/acc-operator:23.07.25 imagePullPolicy: IfNotPresent livenessProbe: httpGet: path: /healthz port: 8081 initialDelaySeconds: 15 periodSeconds: 20 name: manager readinessProbe: httpGet: path: /readyz port: 8081 initialDelaySeconds: 5 periodSeconds: 10 resources: limits: cpu: 300m memory: 750Mi requests: cpu: 100m memory: 75Mi securityContext: allowPrivilegeEscalation: false imagePullSecrets: [] securityContext: runAsUser: 65532 terminationGracePeriodSeconds: 10
-
-
Installieren Sie den Astra Control Center-Operator:
kubectl apply -f astra_control_center_operator_deploy.yaml
Erweitern für Probenantwort:
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
-
Überprüfen Sie, ob Pods ausgeführt werden:
kubectl get pods -n netapp-acc-operator
Konfigurieren Sie Astra Control Center
-
Bearbeiten Sie die Datei Astra Control Center Custom Resource (CR) (
astra_control_center.yaml
) Zur Berücksichtigung, Unterstützung, Registrierung und anderen notwendigen Konfigurationen:vim astra_control_center.yaml
Ein YAML-Beispiel mit Anmerkungen folgt diesen Schritten. -
Ändern oder bestätigen Sie die folgenden Einstellungen:
<code>accountName</code>
Einstellung Anleitung Typ Beispiel accountName
Ändern Sie das
accountName
Zeichenfolge an den Namen, den Sie dem Astra Control Center-Konto zuordnen möchten. Es kann nur ein AccountName geben.Zeichenfolge
Example
<code>astraVersion</code>
Einstellung Anleitung Typ Beispiel astraVersion
Die zu implementierende Version des Astra Control Center: Für diese Einstellung ist keine Aktion erforderlich, da der Wert bereits ausgefüllt wird.
Zeichenfolge
23.07.0-25
<code>astraAddress</code>
Einstellung Anleitung Typ Beispiel astraAddress
Ändern Sie das
astraAddress
Zeichenfolge an den FQDN (empfohlen) oder die IP-Adresse, die Sie in Ihrem Browser verwenden möchten, um auf Astra Control Center zuzugreifen. Diese Adresse legt fest, wie Astra Control Center in Ihrem Rechenzentrum zu finden ist und ist die gleiche FQDN- oder IP-Adresse, die Sie von Ihrem Load Balancer bereitgestellt haben, wenn Sie fertig sind "Anforderungen des Astra Control Centers".
HINWEIS: Nicht verwendenhttp://
Oderhttps://
In der Adresse. Kopieren Sie diesen FQDN zur Verwendung in einem Später Schritt.Zeichenfolge
astra.example.com
<code>autoSupport</code>
Ihre Auswahl in diesem Abschnitt bestimmt, ob Sie an der proaktiven Support-Anwendung Digital Advisor von NetApp teilnehmen und an welchem Ort Daten gesendet werden. Eine Internetverbindung ist erforderlich (Port 442), und alle Supportdaten werden anonymisiert.
Einstellung Nutzung Anleitung Typ Beispiel autoSupport.enrolled
Entweder
enrolled
Oderurl
Felder müssen ausgewählt werdenÄndern
enrolled
Für AutoSupport bisfalse
Für Websites ohne Internetverbindung oder Aufbewahrungtrue
Für verbundene Standorte. Eine Einstellung vontrue
Ermöglicht das Senden anonymer Daten an NetApp zu Supportzwecken. Die Standardwahl istfalse
Und zeigt an, dass keine Support-Daten an NetApp gesendet werden.Boolesch
false
(Dieser Wert ist der Standardwert)autoSupport.url
Entweder
enrolled
Oderurl
Felder müssen ausgewählt werdenDiese URL legt fest, wo die anonymen Daten gesendet werden.
Zeichenfolge
<code>email</code>
Einstellung Anleitung Typ Beispiel email
Ändern Sie das
email
Zeichenfolge zur standardmäßigen ursprünglichen Administratoradresse. Kopieren Sie diese E-Mail-Adresse zur Verwendung in A Später Schritt. Diese E-Mail-Adresse wird als Benutzername für das erste Konto verwendet, um sich bei der UI anzumelden und wird über Ereignisse in Astra Control informiert.Zeichenfolge
admin@example.com
<code>firstName</code>
Einstellung Anleitung Typ Beispiel firstName
Der erste Name des mit dem Astra-Konto verknüpften Standardadministrators. Der hier verwendete Name wird nach der ersten Anmeldung in einer Überschrift in der UI angezeigt.
Zeichenfolge
SRE
<code>LastName</code>
Einstellung Anleitung Typ Beispiel lastName
Der Nachname des mit dem Astra-Konto verknüpften Standard-Initialadministrators. Der hier verwendete Name wird nach der ersten Anmeldung in einer Überschrift in der UI angezeigt.
Zeichenfolge
Admin
<code>imageRegistry</code>
Ihre Auswahl in diesem Abschnitt definiert die Container-Image-Registry, die die Astra-Anwendungsabbilder, den Astra Control Center Operator und das Astra Control Center Helm Repository hostet.
Einstellung Nutzung Anleitung Typ Beispiel imageRegistry.name
Erforderlich
Der Name der Bildregistrierung, in der Sie die Bilder in geschoben haben Vorheriger Schritt. Verwenden Sie es nicht
http://
Oderhttps://
Im Registrierungsnamen.Zeichenfolge
example.registry.com/astra
imageRegistry.secret
Erforderlich, wenn der von Ihnen eingegebene String eingegeben wird
imageRegistry.name' requires a secret.
Zeile in
IMPORTANT: If you are using a registry that does not require authorization, you must delete this `secretimageRegistry
Oder die Installation schlägt fehl.Der Name des Kubernetes Secret, das zur Authentifizierung mit der Bildregistrierung verwendet wird.
Zeichenfolge
astra-registry-cred
<code>storageClass</code>
Einstellung Anleitung Typ Beispiel storageClass
Ändern Sie das
storageClass
Wert vonontap-gold
Je nach Installationsanforderungen zu einer anderen Ressource für Astra Trident Storage Class wechseln. Führen Sie den Befehl auskubectl get sc
So ermitteln Sie Ihre vorhandenen konfigurierten Speicherklassen. In die Manifest-Datei muss eine der Astra Trident-basierten Storage-Klassen eingegeben werden (astra-control-center-<version>.manifest
) Und wird für Astra PVS verwendet. Wenn er nicht festgelegt ist, wird die Standard-Speicherklasse verwendet.
HINWEIS: Wenn eine Standard-Storage-Klasse konfiguriert ist, stellen Sie sicher, dass diese die einzige Storage-Klasse mit der Standardbeschriftung ist.Zeichenfolge
ontap-gold
<code>volumeReclaimPolicy</code>
Einstellung Anleitung Typ Optionen volumeReclaimPolicy
Damit wird die Rückgewinnungsrichtlinie für die PVS von Astra festgelegt. Festlegen dieser Richtlinie auf
Retain
Behält persistente Volumes nach dem Löschen von Astra bei. Festlegen dieser Richtlinie aufDelete
Löscht persistente Volumes nach dem Löschen von astra. Wenn dieser Wert nicht festgelegt ist, werden die PVS beibehalten.Zeichenfolge
-
Retain
(Dies ist der Standardwert) -
Delete
<code>ingressType</code>
Einstellung Anleitung Typ Optionen ingressType
Verwenden Sie einen der folgenden Eingangstypen:
Generic
(ingressType: "Generic"
) (Standard)
Verwenden Sie diese Option, wenn Sie einen anderen Ingress-Controller verwenden oder Ihren eigenen Ingress-Controller verwenden möchten. Nach der Implementierung des Astra Control Center müssen Sie den konfigurieren "Eingangs-Controller" Um Astra Control Center mit einer URL zu zeigen.
AccTraefik
(ingressType: "AccTraefik"
)
Verwenden Sie diese Option, wenn Sie keinen Ingress-Controller konfigurieren möchten. Dies implementiert das Astra Control Centertraefik
Gateway als Service des Typs Kubernetes Load Balancer:
Astra Control Center nutzt einen Service vom Typ „loadbalancer“ (svc/traefik
Im Astra Control Center Namespace) und erfordert, dass ihm eine zugängliche externe IP-Adresse zugewiesen wird. Wenn in Ihrer Umgebung Load Balancer zugelassen sind und Sie noch keine konfiguriert haben, können Sie MetalLB oder einen anderen externen Service Load Balancer verwenden, um dem Dienst eine externe IP-Adresse zuzuweisen. In der Konfiguration des internen DNS-Servers sollten Sie den ausgewählten DNS-Namen für Astra Control Center auf die Load-Balanced IP-Adresse verweisen.
HINWEIS: Weitere Informationen zum Servicetyp "loadbalancer" und Ingress finden Sie unter "Anforderungen".Zeichenfolge
-
Generic
(Dies ist der Standardwert) -
AccTraefik
<code>scaleSize</code>
Einstellung Anleitung Typ Optionen scaleSize
Astra verwendet standardmäßig High Availability (HA).
scaleSize
VonMedium
, Die die meisten Dienste in HA bereitstellt und mehrere Replikate für Redundanz bereitstellt. MitscaleSize
AlsSmall
, Astra wird die Anzahl der Replikate für alle Dienste reduzieren, außer für wesentliche Dienste, um den Verbrauch zu reduzieren.
TIPP:Medium
Implementierungen bestehen aus etwa 100 Pods (einschließlich transienter Workloads). 100 Pods basieren auf drei Master Nodes und einer Konfiguration mit drei Worker Nodes). Beachten Sie die Einschränkungen bei der Netzwerkgrenze pro Pod, die in Ihrer Umgebung möglicherweise ein Problem darstellen, insbesondere bei der Betrachtung von Disaster-Recovery-Szenarien.Zeichenfolge
-
Small
-
Medium
(Dies ist der Standardwert)
<code>astraResourcesScaler</code>
Einstellung Anleitung Typ Optionen astraResourcesScaler
Skalierungsoptionen für die Ressourcengrenzen von AstraControlCenter. Astra Control Center implementiert standardmäßig mit Ressourcenanfragen, die für die meisten Komponenten in Astra bereitgestellt werden. Mit dieser Konfiguration verbessert sich die Leistung des Astra Control Center Software-Stacks auch bei erhöhter Applikationslast und -Skalierung.
In Szenarien mit kleineren Entwicklungs- oder Testclustern jedoch das CR-FeldastraResourcesScalar
Kann auf festgelegt werdenOff
. Dadurch werden Ressourcenanforderungen deaktiviert und die Bereitstellung auf kleineren Clustern ist möglich.Zeichenfolge
-
Default
(Dies ist der Standardwert) -
Off
<code>additionalValues</code>
Fügen Sie dem Astra Control Center CR die folgenden zusätzlichen Werte hinzu, um ein bekanntes Problem bei der Installation von 23.07 zu vermeiden: additionalValues: polaris-keycloak: livenessProbe: initialDelaySeconds: 180 readinessProbe: initialDelaySeconds: 180
-
Für die Kommunikation zwischen Astral Control Center und Cloud Insights ist die Überprüfung des TLS-Zertifikats standardmäßig deaktiviert. Sie können die TLS-Zertifizierungsüberprüfung für die Kommunikation zwischen Cloud Insights und dem Astra Control Center Host-Cluster und dem verwalteten Cluster aktivieren, indem Sie den folgenden Abschnitt in hinzufügen
additionalValues
.
additionalValues: netapp-monitoring-operator: config: ciSkipTlsVerify: false cloud-insights-service: config: ciSkipTlsVerify: false telemetry-service: config: ciSkipTlsVerify: false
<code>crds</code>
Ihre Auswahl in diesem Abschnitt legt fest, wie Astra Control Center mit CRDs umgehen soll.
Einstellung Anleitung Typ Beispiel crds.externalCertManager
Wenn Sie einen externen Zertifikaten-Manager verwenden, ändern Sie
externalCertManager
Bistrue
. Der Standardwertfalse
Führt dazu, dass Astra Control Center während der Installation seine eigenen CRT-Manager-CRDs installiert.
CRDs sind Cluster-weite Objekte, die sich auf andere Teile des Clusters auswirken können. Mit diesem Flag können Sie dem Astra Control Center signalisieren, dass diese CRDs vom Clusteradministrator außerhalb des Astra Control Center installiert und verwaltet werden.Boolesch
False
(Dieser Wert ist der Standardwert)crds.externalTraefik
Astra Control Center installiert standardmäßig die erforderlichen Trafik-CRDs. CRDs sind Cluster-weite Objekte, die sich auf andere Teile des Clusters auswirken können. Mit diesem Flag können Sie dem Astra Control Center signalisieren, dass diese CRDs vom Clusteradministrator außerhalb des Astra Control Center installiert und verwaltet werden.
Boolesch
False
(Dieser Wert ist der Standardwert) -
Stellen Sie sicher, dass Sie die richtige Storage-Klasse und den richtigen Ingress-Typ für Ihre Konfiguration ausgewählt haben, bevor Sie die Installation abschließen. |
Erweitern für Beispiel astra_Control_Center.yaml
apiVersion: astra.netapp.io/v1 kind: AstraControlCenter metadata: name: astra spec: accountName: "Example" astraVersion: "ASTRA_VERSION" astraAddress: "astra.example.com" autoSupport: enrolled: true email: "[admin@example.com]" firstName: "SRE" lastName: "Admin" imageRegistry: name: "[your_registry_path]" secret: "astra-registry-cred" storageClass: "ontap-gold" volumeReclaimPolicy: "Retain" ingressType: "Generic" scaleSize: "Medium" astraResourcesScaler: "Default" additionalValues: polaris-keycloak: livenessProbe: initialDelaySeconds: 180 readinessProbe: initialDelaySeconds: 180 crds: externalTraefik: false externalCertManager: false
Komplette Astra Control Center und Bedienerinstallation
-
Wenn Sie dies in einem vorherigen Schritt nicht bereits getan haben, erstellen Sie das
netapp-acc
(Oder benutzerdefinierter) Namespace:kubectl create ns [netapp-acc or custom namespace]
-
Installieren Sie das Astra Control Center im
netapp-acc
(Oder Ihr individueller) Namespace:kubectl apply -f astra_control_center.yaml -n [netapp-acc or custom namespace]
Der Fahrer des Astra Control Center überprüft automatisch die Umgebungsanforderungen. Fehlt "Anforderungen" Kann dazu führen, dass Ihre Installation fehlschlägt oder Astra Control Center nicht ordnungsgemäß funktioniert. Siehe Nächster Abschnitt So prüfen Sie, ob Warnmeldungen zur automatischen Systemprüfung vorliegen. |
Überprüfen Sie den Systemstatus
Sie können den Systemstatus mithilfe von kubectl-Befehlen überprüfen. Wenn Sie OpenShift verwenden möchten, können Sie vergleichbare oc-Befehle für Verifizierungsschritte verwenden.
-
Vergewissern Sie sich, dass beim Installationsprozess keine Warnmeldungen zu den Validierungsprüfungen ausgegeben wurden:
kubectl get acc [astra or custom Astra Control Center CR name] -n [netapp-acc or custom namespace] -o yaml
Zusätzliche Warnmeldungen werden auch in den Bedienerprotokollen des Astra Control Centers gemeldet. -
Beheben Sie alle Probleme mit Ihrer Umgebung, die durch automatisierte Anforderungsprüfungen gemeldet wurden.
Sie können Probleme beheben, indem Sie sicherstellen, dass Ihre Umgebung den erfüllt "Anforderungen" Für Astra Control Center. -
Vergewissern Sie sich, dass alle Systemkomponenten erfolgreich installiert wurden.
kubectl get pods -n [netapp-acc or custom namespace]
Jeder Pod sollte einen Status von haben
Running
. Es kann mehrere Minuten dauern, bis die System-Pods implementiert sind.Erweitern, um die Probenantwort zu erhalten
NAME READY STATUS RESTARTS AGE acc-helm-repo-6cc7696d8f-pmhm8 1/1 Running 0 9h activity-597fb656dc-5rd4l 1/1 Running 0 9h activity-597fb656dc-mqmcw 1/1 Running 0 9h api-token-authentication-62f84 1/1 Running 0 9h api-token-authentication-68nlf 1/1 Running 0 9h api-token-authentication-ztgrm 1/1 Running 0 9h asup-669d4ddbc4-fnmwp 1/1 Running 1 (9h ago) 9h authentication-78789d7549-lk686 1/1 Running 0 9h bucketservice-65c7d95496-24x7l 1/1 Running 3 (9h ago) 9h cert-manager-c9f9fbf9f-k8zq2 1/1 Running 0 9h cert-manager-c9f9fbf9f-qjlzm 1/1 Running 0 9h cert-manager-cainjector-dbbbd8447-b5qll 1/1 Running 0 9h cert-manager-cainjector-dbbbd8447-p5whs 1/1 Running 0 9h cert-manager-webhook-6f97bb7d84-4722b 1/1 Running 0 9h cert-manager-webhook-6f97bb7d84-86kv5 1/1 Running 0 9h certificates-59d9f6f4bd-2j899 1/1 Running 0 9h certificates-59d9f6f4bd-9d9k6 1/1 Running 0 9h certificates-expiry-check-28011180--1-8lkxz 0/1 Completed 0 9h cloud-extension-5c9c9958f8-jdhrp 1/1 Running 0 9h cloud-insights-service-5cdd5f7f-pp8r5 1/1 Running 0 9h composite-compute-66585789f4-hxn5w 1/1 Running 0 9h composite-volume-68649f68fd-tb7p4 1/1 Running 0 9h credentials-dfc844c57-jsx92 1/1 Running 0 9h credentials-dfc844c57-xw26s 1/1 Running 0 9h entitlement-7b47769b87-4jb6c 1/1 Running 0 9h features-854d8444cc-c24b7 1/1 Running 0 9h features-854d8444cc-dv6sm 1/1 Running 0 9h fluent-bit-ds-9tlv4 1/1 Running 0 9h fluent-bit-ds-bpkcb 1/1 Running 0 9h fluent-bit-ds-cxmwx 1/1 Running 0 9h fluent-bit-ds-jgnhc 1/1 Running 0 9h fluent-bit-ds-vtr6k 1/1 Running 0 9h fluent-bit-ds-vxqd5 1/1 Running 0 9h graphql-server-7d4b9d44d5-zdbf5 1/1 Running 0 9h identity-6655c48769-4pwk8 1/1 Running 0 9h influxdb2-0 1/1 Running 0 9h keycloak-operator-55479d6fc6-slvmt 1/1 Running 0 9h krakend-f487cb465-78679 1/1 Running 0 9h krakend-f487cb465-rjsxx 1/1 Running 0 9h license-64cbc7cd9c-qxsr8 1/1 Running 0 9h login-ui-5db89b5589-ndb96 1/1 Running 0 9h loki-0 1/1 Running 0 9h metrics-facade-8446f64c94-x8h7b 1/1 Running 0 9h monitoring-operator-6b44586965-pvcl4 2/2 Running 0 9h nats-0 1/1 Running 0 9h nats-1 1/1 Running 0 9h nats-2 1/1 Running 0 9h nautilus-85754d87d7-756qb 1/1 Running 0 9h nautilus-85754d87d7-q8j7d 1/1 Running 0 9h openapi-5f9cc76544-7fnjm 1/1 Running 0 9h openapi-5f9cc76544-vzr7b 1/1 Running 0 9h packages-5db49f8b5-lrzhd 1/1 Running 0 9h polaris-consul-consul-server-0 1/1 Running 0 9h polaris-consul-consul-server-1 1/1 Running 0 9h polaris-consul-consul-server-2 1/1 Running 0 9h polaris-keycloak-0 1/1 Running 2 (9h ago) 9h polaris-keycloak-1 1/1 Running 0 9h polaris-keycloak-2 1/1 Running 0 9h polaris-keycloak-db-0 1/1 Running 0 9h polaris-keycloak-db-1 1/1 Running 0 9h polaris-keycloak-db-2 1/1 Running 0 9h polaris-mongodb-0 1/1 Running 0 9h polaris-mongodb-1 1/1 Running 0 9h polaris-mongodb-2 1/1 Running 0 9h polaris-ui-66fb99479-qp9gq 1/1 Running 0 9h polaris-vault-0 1/1 Running 0 9h polaris-vault-1 1/1 Running 0 9h polaris-vault-2 1/1 Running 0 9h public-metrics-76fbf9594d-zmxzw 1/1 Running 0 9h storage-backend-metrics-7d7fbc9cb9-lmd25 1/1 Running 0 9h storage-provider-5bdd456c4b-2fftc 1/1 Running 0 9h task-service-87575df85-dnn2q 1/1 Running 3 (9h ago) 9h task-service-task-purge-28011720--1-q6w4r 0/1 Completed 0 28m task-service-task-purge-28011735--1-vk6pd 1/1 Running 0 13m telegraf-ds-2r2kw 1/1 Running 0 9h telegraf-ds-6s9d5 1/1 Running 0 9h telegraf-ds-96jl7 1/1 Running 0 9h telegraf-ds-hbp84 1/1 Running 0 9h telegraf-ds-plwzv 1/1 Running 0 9h telegraf-ds-sr22c 1/1 Running 0 9h telegraf-rs-4sbg8 1/1 Running 0 9h telemetry-service-fb9559f7b-mk9l7 1/1 Running 3 (9h ago) 9h tenancy-559bbc6b48-5msgg 1/1 Running 0 9h traefik-d997b8877-7xpf4 1/1 Running 0 9h traefik-d997b8877-9xv96 1/1 Running 0 9h trident-svc-585c97548c-d25z5 1/1 Running 0 9h vault-controller-88484b454-2d6sr 1/1 Running 0 9h vault-controller-88484b454-fc5cz 1/1 Running 0 9h vault-controller-88484b454-jktld 1/1 Running 0 9h
-
(Optional) Sehen Sie sich den an
acc-operator
Protokolle zur Überwachung des Fortschritts:kubectl logs deploy/acc-operator-controller-manager -n netapp-acc-operator -c manager -f
accHost
Die Cluster-Registrierung ist einer der letzten Vorgänge, und bei Ausfall wird die Implementierung nicht fehlschlagen. Sollten in den Protokollen ein Fehler bei der Cluster-Registrierung angegeben sein, können Sie die Registrierung erneut über das versuchen "Fügen Sie in der UI einen Cluster-Workflow hinzu" Oder API. -
Wenn alle Pods ausgeführt werden, überprüfen Sie, ob die Installation erfolgreich war (
READY
IstTrue
) Und holen Sie sich das erste Setup-Passwort, das Sie verwenden, wenn Sie sich bei Astra Control Center:kubectl get AstraControlCenter -n [netapp-acc or custom namespace]
Antwort:
NAME UUID VERSION ADDRESS READY astra 9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f 23.07.0-25 10.111.111.111 True
Den UUID-Wert kopieren. Das Passwort lautet ACC-
Anschließend der UUID-Wert (ACC-[UUID]
Oder in diesem BeispielACC-9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f
).
Eindringen für den Lastenausgleich einrichten
Sie können einen Kubernetes Ingress-Controller einrichten, der den externen Zugriff auf Services managt. Diese Verfahren enthalten Setup-Beispiele für einen Ingress-Controller, wenn Sie die Standardeinstellung von verwenden ingressType: "Generic"
In der Astra Control Center Custom Resource (astra_control_center.yaml
). Sie müssen diesen Vorgang nicht verwenden, wenn Sie angegeben haben ingressType: "AccTraefik"
In der Astra Control Center Custom Resource (astra_control_center.yaml
).
Nachdem Astra Control Center bereitgestellt wurde, müssen Sie den Ingress-Controller so konfigurieren, dass Astra Control Center mit einer URL verfügbar ist.
Die Einstellungsschritte unterscheiden sich je nach Typ des Ingress-Controllers. Astra Control Center unterstützt viele Ingress-Controller-Typen. Diese Einrichtungsverfahren bieten Beispielschritte für einige gängige Typen von Ingress-Controllern.
-
Erforderlich "Eingangs-Controller" Sollte bereits eingesetzt werden.
-
Der "Eingangsklasse" Entsprechend der Eingangs-Steuerung sollte bereits erstellt werden.
Schritte für Istio Ingress
-
Konfigurieren Sie Istio Ingress.
Bei diesem Verfahren wird davon ausgegangen, dass Istio mithilfe des Konfigurationsprofils „Standard“ bereitgestellt wird. -
Sammeln oder erstellen Sie die gewünschte Zertifikatdatei und die private Schlüsseldatei für das Ingress Gateway.
Sie können ein CA-signiertes oder selbstsigniertes Zertifikat verwenden. Der allgemeine Name muss die Astra-Adresse (FQDN) sein.
Beispielbefehl:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt
-
Erstellen Sie ein Geheimnis
tls secret name
Vom Typkubernetes.io/tls
Für einen privaten TLS-Schlüssel und ein Zertifikat imistio-system namespace
Wie in TLS Secrets beschrieben.Beispielbefehl:
kubectl create secret tls [tls secret name] --key="tls.key" --cert="tls.crt" -n istio-system
Der Name des Geheimnisses sollte mit dem übereinstimmen spec.tls.secretName
Verfügbar inistio-ingress.yaml
Datei: -
Bereitstellung einer Ingress-Ressource im
netapp-acc
(Oder Custom-Name) Namespace unter Verwendung des v1-Ressourcentyps für ein Schema (istio-Ingress.yaml
Wird in diesem Beispiel verwendet):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: [netapp-acc or custom namespace] spec: ingressClassName: istio tls: - hosts: - <ACC address> secretName: [tls secret name] rules: - host: [ACC address] http: paths: - path: / pathType: Prefix backend: service: name: traefik port: number: 80
-
Übernehmen Sie die Änderungen:
kubectl apply -f istio-Ingress.yaml
-
Überprüfen Sie den Status des Eingangs:
kubectl get ingress -n [netapp-acc or custom namespace]
Antwort:
NAME CLASS HOSTS ADDRESS PORTS AGE ingress istio astra.example.com 172.16.103.248 80, 443 1h
Schritte für Nginx Ingress Controller
-
Erstellen Sie ein Geheimnis des Typs
kubernetes.io/tls
Für einen privaten TLS-Schlüssel und ein Zertifikat innetapp-acc
(Oder Custom-Name) Namespace wie in beschrieben "TLS-Geheimnisse". -
Bereitstellung einer Ingress-Ressource in
netapp-acc
(Oder Custom-Name) Namespace unter Verwendung des v1-Ressourcentyps für ein Schema (nginx-Ingress.yaml
Wird in diesem Beispiel verwendet):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 address> http: paths: - path: backend: service: name: traefik port: number: 80 pathType: ImplementationSpecific
-
Übernehmen Sie die Änderungen:
kubectl apply -f nginx-Ingress.yaml
NetApp empfiehlt die Installation des nginx Controllers als Bereitstellung statt als a daemonSet .
|
Schritte für OpenShift-Eingangs-Controller
-
Beschaffen Sie Ihr Zertifikat, und holen Sie sich die Schlüssel-, Zertifikat- und CA-Dateien für die OpenShift-Route bereit.
-
Erstellen Sie die OpenShift-Route:
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
Melden Sie sich in der UI des Astra Control Center an
Nach der Installation von Astra Control Center ändern Sie das Passwort für den Standardadministrator und melden sich im Astra Control Center UI Dashboard an.
-
Geben Sie in einem Browser den FQDN ein (einschließlich
https://
Präfix), die Sie in verwendet habenastraAddress
Imastra_control_center.yaml
CR, wenn Sie haben das Astra Control Center installiert. -
Akzeptieren Sie die selbstsignierten Zertifikate, wenn Sie dazu aufgefordert werden.
Sie können nach der Anmeldung ein benutzerdefiniertes Zertifikat erstellen. -
Geben Sie auf der Anmeldeseite des Astra Control Center den Wert ein, den Sie für verwendet haben
email
Inastra_control_center.yaml
CR, wenn Sie haben das Astra Control Center installiert, Gefolgt von dem anfänglichen Setup-Passwort (ACC-[UUID]
).Wenn Sie dreimal ein falsches Passwort eingeben, wird das Administratorkonto 15 Minuten lang gesperrt. -
Wählen Sie Login.
-
Ändern Sie das Passwort, wenn Sie dazu aufgefordert werden.
Wenn dies Ihre erste Anmeldung ist und Sie das Passwort vergessen haben und noch keine anderen administrativen Benutzerkonten erstellt wurden, kontaktieren Sie "NetApp Support" Für Unterstützung bei der Kennwortwiederherstellung. -
(Optional) Entfernen Sie das vorhandene selbst signierte TLS-Zertifikat und ersetzen Sie es durch ein "Benutzerdefiniertes TLS-Zertifikat, signiert von einer Zertifizierungsstelle (CA)".
Beheben Sie die Fehlerbehebung für die Installation
Wenn einer der Dienstleistungen in ist Error
Status, können Sie die Protokolle überprüfen. Suchen Sie nach API-Antwortcodes im Bereich von 400 bis 500. Diese geben den Ort an, an dem ein Fehler aufgetreten ist.
-
Um die Bedienerprotokolle des Astra Control Center zu überprüfen, geben Sie Folgendes ein:
kubectl logs deploy/acc-operator-controller-manager -n netapp-acc-operator -c manager -f
-
So überprüfen Sie die Ausgabe des Astra Control Center CR:
kubectl get acc -n [netapp-acc or custom namespace] -o yaml
Wie es weiter geht
-
(Optional) Verarbeiten Sie abhängig von Ihrer Umgebung nach der Installation vollständig "Konfigurationsschritte".
-
Führen Sie die Implementierung durch "Setup-Aufgaben".