Verwaltungszentrum installieren
In diesem Abschnitt installieren Sie einen Anthos-Administratorcluster auf Bare-Metal-Maschinen. Dann installieren Sie das Management Center des privaten Anthos-Modus auf den Administratorcluster.
Administratorclusterkonfiguration vorbereiten
Aktualisieren Sie die Datei ./bmctl-workspace/admin/admin.yaml
mit Einstellungen, die Ihrer Umgebung entsprechen.
vi ./bmctl-workspace/admin/admin.yaml
Im Folgenden finden Sie Details zu den Feldern, die ausgefüllt werden müssen, sowie in Kommentaren in der Datei admin.yaml
.
Der
sshPrivateKeyPath
ist der Schlüssel, der während der Installation für den Zugriff auf die anderen Knoten verwendet wird, die Teil des Clusters sind. Dies ist die private Hälfte des öffentlichen Schlüssels, den Sie an die Knoten unter Anforderungen verteilt haben.registryMirrors
gibt den Speicherort aller Registry-Spiegel an, in denen die Docker-Images gespeichert sind.registryMirrors.endpoint
ist der Endpunkt des Spiegels. Das Format des Endpunkts lautetURL_SCHEME://REGISTRY_HOST/v2/IMAGE_PREFIX
. Wenn Sie die Registry beispielsweise gemäß der Anleitung unter Infrastruktur installieren auf der Workstation erstellt haben, legen Sie für den Endpunkthttps://REGISTRY_HOST/v2/library
fest. Beachten Sie, dass/v2/
zwischenREGISTRY_HOST
undIMAGE_PREFIX
erforderlich ist.registryMirrors.pullCredentialConfigPath
ist der Pfad für die Anmeldedaten. Normalerweise wird dieser in der Form/home/USER/.docker/config.json
angegeben.Der
registryMirrors.caCertPath
ist der Speicherort der Zertifikatsautorität, den die Registry für die Verschlüsselung des Traffics verwendet. Dieses Zertifikat wird während des Installationsprozesses auf die Knoten verteilt, damit sie Images aus der Registry herunterladen können. Der Pfad ist normalerweise/etc/docker/certs.d/REGISTRY_HOST/ca.crt
.
Die Spezifikation
controlPlane
definiert, welche Knoten zur Steuerungsebene gehören. Geben Sie bei Verwendung eines HA-Deployments drei IP-Adressen an. Beispiel:controlPlane: nodePoolSpec: nodes: # Control plane node pools. Typically, this is either a single machine # or 3 machines if using a high availability deployment. - address: 10.200.0.3 - address: 10.200.0.4 - address: 10.200.0.5
Die
loadBalancer
-Spezifikation definiert, welcher Load-Balancer-Typ verwendet wird. Die Standardkonfiguration installiert einen Load-Balancer in dem ausgeführten Cluster. In diesem Fall müssen Sie mindestens diecontrolPlaneVIP
festlegen, um die VIP zu identifizieren, damit der Kubernetes API-Server verfügbar ist, undaddressPools
, um bei Bedarf VIPs Diensten zuzuweisen, die sie anfordern. Beispiel:loadBalancer: mode: bundled # There are two load balancer VIPs: one for the control plane and one for the # L7 Ingress service. # The VIPs must be in the same subnet as the load balancer nodes. vips: # ControlPlaneVIP specifies the VIP to connect to the Kubernetes API server. # This address must not be in the address pools below. controlPlaneVIP: 10.200.0.50 # AddressPools is a list of non-overlapping IP ranges for the data plane load # balancer. # All addresses must be in the same subnet as the load balancer nodes. # Address pool configuration is only valid for 'bundled' LB mode in non-admin # clusters. addressPools: - name: pool1 addresses: # Each address must be either in the CIDR form (1.2.3.0/24) # or range form (1.2.3.1-1.2.3.5). - 10.200.0.51-10.200.0.59
Im letzten Abschnitt der Clusterspezifikation ist
loginUser
angegeben. Diese Anmeldung muss Zugriff auf den unten angegebenen SSH-Schlüssel haben. Sie ist der Nutzer, für den der Schlüssel unter Anforderungen verteilt wurde.nodeAccess: loginUser: <USER_NAME>
Die Spezifikation
nodePool
identifiziert die Knoten, die AdminUI, Prometheus, Grafana und andere Dienste im Administratorcluster hosten. Beispiel:apiVersion: baremetal.cluster.gke.io/v1 kind: NodePool metadata: name: node-pool-1 namespace: cluster-admin spec: # Cannot be changed, must be admin clusterName: admin nodes: - address: 10.200.0.6 - address: 10.200.0.7
Administratorcluster erstellen
Führen Sie den folgenden Befehl aus, um den Administratorcluster zu erstellen. Dies dauert etwa 30 Minuten. Sehen Sie sich Bekannte Probleme an, wenn Fehler auftreten.
cd ~/anthos-baremetal-private-mode
actl clusters baremetal create admin
Prüfen Sie nach dem Erstellen des Administratorclusters, ob Sie Zugriff darauf haben.
export ADMIN_KUBECONFIG=$(pwd)/bmctl-workspace/admin/admin-kubeconfig
kubectl get nodes --kubeconfig=${ADMIN_KUBECONFIG}
Management Center installieren
Installieren Sie das Management Center im Administratorcluster.
Standardkonfiguration
Mit dieser Anleitung wird das Management Center mit einer Mindest-Standardkonfiguration installiert.
cd ~/anthos-baremetal-private-mode
actl platform management-center create
Benutzerdefinierte Konfiguration
Mit dieser Anleitung wird das Management Center mit einer benutzerdefinierten Konfiguration installiert. Damit können Sie die Einstellungen vor der Installation des Management Center anpassen.
Aktualisieren Sie dazu die Datei ./managementcenter/management-center.yaml
, um die Installation des Management Center nach Bedarf anzupassen.
vi ./managementcenter/management-center.yaml
Installieren Sie das Management Center mit der benutzerdefinierten Konfiguration.
cd ~/anthos-baremetal-private-mode
actl platform management-center create --config managementcenter/management-center.yaml
URL des Management Center abrufen
Die URL für das Management Center im privaten Anthos-Modus wird nach der Installation des Management Center ausgegeben. Sie kann aber auch über folgenden Befehl abgerufen werden:
actl platform management-center describe --kubeconfig=${ADMIN_KUBECONFIG}
Die zurückgegebene URL soll an einen Plattformadministrator weitergegeben werden, um den privaten Anthos-Modus einzurichten.
Domainnamen für den Zugriff auf das Management Center konfigurieren
So konfigurieren Sie Ihren eigenen Domainnamen für den Zugriff auf das Management Center des privaten Anthos-Modus:
Fügen Sie
A record
zu Ihrer DNS-Domainkonfiguration hinzu und setzen Sie es auf die zurückgegebene IP-Adresse vonactl platform management-center describe --kubeconfig=${ADMIN_KUBECONFIG}