Ressourcen registrieren

Diese Seite richtet sich an Infrastrukturbetreiber.

Nach der Installation von Anthos Management Center müssen Sie die Maschinen, den Adresspool und die Bootstrap-Dienste registrieren. Wenn Sie Ihre Ressourcen bereits registriert haben, indem Sie die Konfigurationsdatei für das Verwaltungscenter bearbeiten, bevor Sie das Verwaltungscenter installiert haben, können Sie diese Seite überspringen, sofern Sie keine zusätzlichen Ressourcen registrieren.

Inventarmaschinen registrieren

Damit ein Plattformadministrator einen Nutzercluster erstellen kann, benötigt der private Anthos-Modus einen Pool inaktiver Maschinen. In diesem Abschnitt registrieren Sie Inventarmaschinen im Anthos-Administratorcluster, damit der Plattformadministrator diese später zum Erstellen eines Nutzerclusters verwenden kann. Diese Maschinen müssen die gleichen Anforderungen erfüllen wie die Knoten des Administratorclusters.

kubectl apply -f path/to/example-machine.yaml --kubeconfig=ADMIN_KUBECONFIG

example-machine.yaml-Beispieldatei:

apiVersion: baremetal.cluster.gke.io/v1alpha1
kind: InventoryMachine
metadata:
  name: IP_ADDRESS
  labels:
    "KEY": "VALUE"
spec:
  address: IP_ADDRESS

Ersetzen Sie Folgendes:

  • IP_ADDRESS ist die IP-Adresse der Maschine, z. B. 10.200.0.10.
  • KEY:VALUE ist ein Schlüssel/Wert-Paar, z. B. "rack": "r1020", zur Angabe eines Racks.

Die labels sind Schlüssel/Wert-Paare im freien Format, die an die Ressource angehängt sind. Diese Labels können Sie später im Management Center verwenden, um Maschinen zu filtern. Beispiel: Anhand der Labels können Sie den Rack-Speicherort oder spezielle Hardwarekonfigurationen identifizieren.

Optional: Verschiedene SSH-Schlüssel für Inventarmaschinen verwenden

Im privaten Modus von Anthos wird standardmäßig der SSH-Schlüssel verwendet, der von sshPrivateKeyPath bereitgestellt wird und mit dem auf Maschinen für den Administratorcluster zugegriffen wird. Für eine bessere Isolation zwischen Administratorcluster- und Inventarmaschinen (für Nutzercluster), können Sie für Inventarmaschinen einen anderen SSH-Schlüssel verwenden. Erstellen Sie die SSH-Schlüssel, bevor Sie die Nutzercluster anlegen, die diese Schlüssel benötigen.

  1. Verteilen Sie den öffentlichen SSH-Schlüssel auf alle Inventarmaschinen.

  2. Privaten SSH-Schlüssel als Secret im Administratorcluster speichern, z. B. user-cluster-ssh-key

    kubectl create secret generic user-cluster-ssh-key -n anthos-creds --kubeconfig=ADMIN_KUBECONFIG \
      --from-file=id_rsa=/path/to/KEYPAIR_PRIVATE_KEY_FILENAME
    

    Ersetzen Sie /path/to/KEYPAIR_PRIVATE_KEY_FILENAME durch den Pfad zur Ausgabe des Schlüsselpaars.

  3. Geben Sie beim Erstellen von Nutzerclustern das in Schritt 1 erstellte Secret unter dem Namespace anthos-creds an (z. B. user-cluster-ssh-key).

    Dies wird nur unterstützt, wenn Cluster über die API erstellt werden. Fügen Sie den SSH-Schlüssel in der Clusterdefinition der YAML-Datei des Nutzerclusters als sshKeySecret hinzu und geben Sie imagePullSecret an. Beispiel:

      apiVersion: baremetal.cluster.gke.io/v1
      kind: Cluster
      metadata:
        name: CLUSTER_NAME
        namespace: cluster-CLUSTER_NAME
      spec:
        type: user
        credentials:
          sshKeySecret:
            name: user-cluster-ssh-key
            namespace: anthos-creds
          ....
        nodeAccess:
          loginUser: LOGIN_USERNAME
          ....
    

    Ersetzen Sie Folgendes:

    • CLUSTER_NAME: Der Name des Clusters.
    • LOGIN_USERNAME: Der Nutzername für die Anmeldung im Nutzercluster.

VIP-Adresspool registrieren

For the platform administrator to create a user cluster, other than InventoryMachines, Anthos needs a pool of all available virtual IP addresses (VIPs). Dieser Pool wird von der Management Center-Console verwendet, um dem Plattformadministrator zu zeigen, welche VIPs verfügbar sind, und um die VIP-Verfügbarkeit während der Erstellung von Nutzerclustern zu prüfen.

In diesem Abschnitt registrieren Sie einen AddressPool beim Anthos-Administratorcluster, den Sie später zum Erstellen von Nutzerclustern verwenden. Sie müssen nur einen Adresspool mit dem Namen anthos-addresspool-default erstellen. Jeder Nutzercluster muss VIPs aus diesem Adresspool verwenden und kann nicht denselben VIP-Bereich wiederverwenden. VIPs müssen die gleichen Anforderungen wie die für den Administratorcluster verwendeten VIPs erfüllen und dürfen sich nicht mit den IP-Adressen der Knoten überschneiden.

kubectl apply -f path/to/ADDRESS_POOL_FILENAME --kubeconfig=ADMIN_KUBECONFIG

Ersetzen Sie path/to/ADDRESS_POOL_FILENAME durch den Pfad zur Adresspooldatei, z. B. example-addresspool.yaml.

example-addresspool.yaml-Beispieldatei:

apiVersion: managementcenter.anthos.cloud.google.com/v1
kind: AddressPool
metadata:
  name: anthos-addresspool-default
spec:
  description: DESCRIPTION
  addresses:
  - VIP_ADDRESS_POOL

Ersetzen Sie Folgendes:

  • DESCRIPTION: Geben Sie alle weiteren Schritte ein, die in der Management Center Console angezeigt werden sollen.
  • VIP_ADDRESS_POOL: Der VIP-Adressbereich, z. B. 10.200.0.100-10.200.0.200

Bootstrap-Dienst registrieren

Der Bootstrap-Dienst ist ein Mechanismus, mit dem Sie zusätzliche Ressourcen wie Speicherdienste und GPU-Treiber vor ihrer Erstellung in Nutzerclustern installieren können, um diese sofort zur Verwendung zur Verfügung zu stellen. Erstellen Sie die Bootstrap-Dienste, bevor Sie die Nutzercluster anlegen, die diese Dienste benötigen.

  1. Erstellen Sie die ConfigMap, die alle für die Installation des Service erforderlichen Manifeste enthält.

    kubectl create configmap <configmap-name> --kubeconfig=ADMIN_KUBECONFIG \
      --from-file=path/to/MANIFESTS --namespace=anthos-management-center
    

    Ersetzen Sie path/to/MANIFESTS durch den Pfad zu den Manifestdateien.

  2. Erstellen Sie das Bootsip Service-Objekt, das auf die configmap verweist

    apiVersion: managementcenter.anthos.cloud.google.com/v1
    kind: BootstrapService
    metadata:
      name: BOOTSTRAP_SERVICE_NAME
      namespace: anthos-management-center
    spec:
      # If set to True, this configuration can be applied to many user clusters,
      # e.g. a GPU driver configuration. If False, this configuration can only be
      # applied to a single user cluster, e.g. a CSI Driver + StorageClass
      # combination which is intended for exclusive use by a single user cluster.
      # Defaults to False.
      isReusable: False
      configMapRef:
        name: CONFIGMAP_NAME
        namespace: anthos-management-center
    

    Ersetzen Sie Folgendes:

    • BOOTSTRAP_SERVICE_NAME: Der Name des Bootstrap-Dienstes.
    • CONFIGMAP_NAME: Der Name der ConfigMap, die Sie im vorherigen Schritt erstellt haben.
  3. Wiederholen Sie diese Schritte, wenn weitere Bootstrap-Dienste erforderlich sind.

Weitere Informationen