Registrazione delle risorse

Questa pagina è rivolta agli operatori di infrastruttura.

Dopo aver installato Anthos Management Center, devi registrare i computer, il pool di indirizzi e i servizi di bootstrap. Se hai già registrato le tue risorse modificando il file di configurazione del Centro di gestione prima di aver installato il Centro di gestione, puoi saltare questa pagina, a meno che tu non stia registrando risorse aggiuntive.

Registrare macchine dell'inventario

Affinché un amministratore della piattaforma possa creare un cluster utente, la modalità privata di Anthos richiede un pool di macchine inattive disponibili. In questa sezione registrerai le macchine dell'inventario al cluster di amministrazione Anthos che l'amministratore della piattaforma utilizzerà in seguito per creare un cluster utente. Queste macchine devono soddisfare gli stessi requisiti dei nodi del cluster di amministrazione.

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

Esempio di file example-machine.yaml:

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

Sostituisci quanto segue:

  • IP_ADDRESS: indirizzo IP della macchina, ad esempio 10.200.0.10.
  • KEY:VALUE: una coppia chiave-valore, ad esempio "rack": "r1020" per indicare una posizione del rack.

Le labels sono coppie chiave-valore in formato libero collegate alla risorsa. Queste etichette possono essere utilizzate in un secondo momento nel Centro di gestione per filtrare le macchine. Ad esempio, puoi utilizzare le etichette per identificare la configurazione del rack o configurazioni hardware speciali.

Facoltativo: utilizza chiavi SSH diverse per le macchine dell'inventario

Per impostazione predefinita, la modalità privata Anthos utilizza la chiave SSH fornita da sshPrivateKeyPath (utilizzata per accedere alle macchine per il cluster di amministrazione) per accedere a queste macchine dell'inventario. Per avere un maggiore isolamento tra le macchine cluster dell'amministratore e le macchine dell'inventario (utilizzate per i cluster utente), puoi utilizzare una chiave SSH diversa per le macchine dell'inventario. Crea le chiavi SSH prima di creare i cluster utente che richiedono tali chiavi.

  1. Distribuisci la chiave pubblica SSH a tutte le macchine dell'inventario.

  2. Archivia la chiave privata SSH come secret nel cluster di amministrazione, ad esempio 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
    

    Sostituisci /path/to/KEYPAIR_PRIVATE_KEY_FILENAME con il percorso in cui generare la coppia di chiavi.

  3. Quando crei i cluster utente, specifica il secret creato nel passaggio 1, ad esempio user-cluster-ssh-key, nello spazio dei nomi anthos-creds.

    Questa operazione è supportata solo durante la creazione dei cluster con l'API. Aggiungi la chiave SSH nella definizione del cluster all'interno del file yaml del cluster utente come sshKeySecret e specifica imagePullSecret, ad esempio:

      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
          ....
    

    Sostituisci quanto segue:

    • CLUSTER_NAME: nome del cluster.
    • LOGIN_USERNAME: il nome utente utilizzato per accedere al cluster utente.

Registra pool di indirizzi VIP

Affinché l'amministratore della piattaforma crei un cluster utente diverso da InventoryMachines, Anthos richiede un pool di tutti gli indirizzi IP virtuali (VIP) disponibili. Questo pool viene utilizzato dalla console del Centro di gestione per mostrare all'amministratore della piattaforma quali VIP sono disponibili e per convalidare la disponibilità dei VIP durante la creazione del cluster utente.

In questa sezione, registrerai un AddressPool per il cluster di amministrazione Anthos da utilizzare in seguito per creare cluster utente. Devi creare un solo pool di indirizzi utilizzando il nome anthos-addresspool-default. Ogni cluster utente deve utilizzare i VIP di questo pool di indirizzi e non può riutilizzare lo stesso intervallo di VIP. I VIP devono soddisfare gli stessi requisiti dei VIP utilizzati per il cluster di amministrazione e non possono sovrapporsi agli indirizzi IP dei nodi.

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

Sostituisci path/to/ADDRESS_POOL_FILENAME con il percorso del file del pool di indirizzi, ad esempio example-addresspool.yaml.

Esempio di file example-addresspool.yaml:

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

Sostituisci quanto segue:

  • DESCRIPTION: inserisci eventuali istruzioni aggiuntive che vuoi visualizzare nella console del Centro di gestione.
  • VIP_ADDRESS_POOL: intervallo del pool di indirizzi VIP, ad esempio 10.200.0.100-10.200.0.200.

Registrazione del servizio di bootstrap

Il servizio di bootstrap è un meccanismo utilizzato per preinstallare risorse aggiuntive come servizi di archiviazione e driver GPU nei cluster utente dopo che sono stati creati per renderli immediatamente disponibili per l'uso. Crea i servizi di bootstrap prima di creare i cluster utente che richiedono questi servizi.

  1. Crea la configmap che contiene tutti i manifest necessari per installare il servizio.

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

    Sostituisci path/to/MANIFESTS con il percorso dei file manifest.

  2. Crea l'oggetto del servizio di bootstrap che fa riferimento alla configmap:

    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
    

    Sostituisci quanto segue:

    • BOOTSTRAP_SERVICE_NAME: nome del servizio di bootstrap.
    • CONFIGMAP_NAME: il nome della mappa di configurazione che hai creato nel passaggio precedente.
  3. Ripeti questi passaggi se sono necessari altri servizi di bootstrap.

Passaggi successivi