Crea cluster di base

Questo documento mostra come creare cluster di base per una piccola installazione proof of concept di cluster Anthos su VMware (GKE On-Prem).

Di seguito sono riportati i passaggi principali:

  1. Creare una workstation di amministrazione.

  2. Dalla workstation di amministrazione, crea un cluster di amministrazione.

  3. Dalla workstation di amministrazione, crea un cluster utente.

Prima di iniziare

Configura gli ambienti vSphere e Google Cloud come descritto in Configurare l'infrastruttura minima.

Raccogliere informazioni

Per prepararti a compilare un file di configurazione della workstation di amministrazione, raccogli le seguenti informazioni:

Accedi

Lo strumento a riga di comando gkeadm utilizza la proprietà account dell'SDK per creare gli account di servizio. Per questo è importante impostare la proprietà SDK account prima di eseguire gkeadm per creare una workstation di amministrazione.

Accedi con qualsiasi Account Google. Questa imposta la proprietà SDK account:

gcloud auth login

Verifica che la proprietà SDK account sia impostata correttamente:

gcloud config list

L'output mostra il valore della proprietà SDK account. Ad esempio:

[core]
account = my-name@google.com
disable_usage_reporting = False
Your active configuration is: [default]

Concedi i ruoli al tuo account SDK

L'Account Google impostato come tua proprietà SDK account deve avere questi ruoli IAM affinché gkeadm possa creare e gestire gli account di servizio per te:

  • resourcemanager.projectIamAdmin
  • serviceusage.serviceUsageAdmin
  • iam.serviceAccountCreator
  • iam.serviceAccountKeyAdmin

Per concedere i ruoli, devi disporre di determinate autorizzazioni per il tuo progetto Cloud. Per maggiori dettagli, consulta la pagina Concedere, modificare e revocare l'accesso alle risorse.

Se disponi delle autorizzazioni necessarie, puoi concedere personalmente i ruoli. In caso contrario, un altro membro dell'organizzazione deve concederti i ruoli.

Per concedere i ruoli:

Linux e macOS

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="user:ACCOUNT" \
    --role="roles/resourcemanager.projectIamAdmin"

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="user:ACCOUNT" \
    --role="roles/serviceusage.serviceUsageAdmin"

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="user:ACCOUNT" \
    --role="roles/iam.serviceAccountCreator"

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="user:ACCOUNT" \
    --role="roles/iam.serviceAccountKeyAdmin"

Windows

gcloud projects add-iam-policy-binding PROJECT_ID ^
    --member="user:ACCOUNT" ^
    --role="roles/resourcemanager.projectIamAdmin"

gcloud projects add-iam-policy-binding PROJECT_ID ^
    --member="user:ACCOUNT" ^
    --role="roles/serviceusage.serviceUsageAdmin"

gcloud projects add-iam-policy-binding PROJECT_ID ^
    --member="user:ACCOUNT" ^
    --role="roles/iam.serviceAccountCreator"

gcloud projects add-iam-policy-binding PROJECT_ID ^
    --member="user:ACCOUNT" ^
    --role="roles/iam.serviceAccountKeyAdmin"

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del tuo progetto Cloud
  • ACCOUNT: il valore della proprietà account dell'SDK

Creare una workstation di amministrazione.

I passaggi in questa sezione utilizzano lo strumento a riga di comando gkeadm, disponibile per Linux a 64 bit, Windows 10, Windows Server 2019 e macOS 10.15 e versioni successive.

Scarica gkeadm nella directory attuale.

Genera modelli

./gkeadm create config

Il comando precedente ha creato i file nella directory attuale:

  • credential.yaml
  • admin-ws-config.yaml

Inserisci credential.yaml

In credential.yaml, inserisci il tuo nome utente e la password vCenter. Ad esempio:

kind: CredentialFile
items:
- name: vCenter
  username: "my-account-name"
  password: "AadmpqGPqq!a"

Acquisire familiarità con il file di configurazione della workstation di amministrazione

Analizza la documentazione per il file di configurazione della workstation di amministrazione per avere un'idea generale del contenuto del file. Puoi anche tenere la pagina aperta in una scheda o in una finestra separata, in modo da potervi fare riferimento mentre compili i valori per i campi.

Inserisci admin-ws-config.yaml

Apri admin-ws-config.yaml per la modifica.

I seguenti campi vengono compilati con i valori predefiniti o generati:

vCenter:
  credentials:
    fileRef:
      credentials:
      entry:

adminWorkstation:
  name:
  cpus:
  memoryMB:
  diskGB:
  dataDiskName:
  dataDiskMB:

ntpServer:

Compila il campo gcp.componentAccessServiceAccountKeyPath.

Compila i seguenti campi nella sezione vCenter.

credentials:
  address:
datacenter:
datastore:
cluster:
network:
caCertPath:

Imposta vCenter.resourcePool su CLUSTER_NAME/Resources. Sostituisci CLUSTER_NAME con il nome del tuo cluster vSphere.

Se necessario, compila il campo proxyURL.

Se necessario, compila il campo adminWorkstation.proxyURL.

Imposta adminWorkstation.network.ipAllocationMode su "static".

Compila i seguenti campi nella sezione adminWorkstation.network.hostConfig:

ip:
gateway:
netmask:
dns:

Esempio di file di configurazione della workstation di amministrazione

Ecco un esempio di un file di configurazione della workstation di amministrazione compilato:

gcp:
  componentAccessServiceAccountKeyPath: "/usr/local/google/home/me/keys/component-access-key.json"
vCenter:
  credentials:
    address: "vc01.example"
    fileRef:
      path: "credential.yaml"
      entry: "vCenter"
  datacenter: "vc01"
  datastore: "vc01-datastore-1"
  cluster: "vc01-workloads-1"
  network: "vc01-net-1"
  resourcePool: "vc01-workloads-1/Resources"
  caCertPath: "/usr/local/google/home/stevepe/certs/vc01-cert.pem"
proxyUrl: ""
adminWorkstation:
  name: gke-admin-ws-220304-014925
  cpus: 4
  memoryMB: 8192
  diskGB: 50
  dataDiskName: gke-on-prem-admin-workstation-data-disk/gke-admin-ws-220304-014925-data-disk.vmdk
  dataDiskMB: 512
  network:
    ipAllocationMode: "static"
    hostConfig:
      ip: "172.16.20.49"
      gateway: "172.16.20.1"
      netmask: "255.255.255.0"
      dns:
      - "203.0.113.1"
  proxyUrl: ""
  ntpServer: ntp.ubuntu.com

Crea la tua workstation di amministrazione

Crea la workstation di amministrazione e crea automaticamente gli account di servizio:

./gkeadm create admin-workstation --auto-create-service-accounts

L'output fornisce informazioni dettagliate sulla creazione della workstation di amministrazione e fornisce un comando che puoi utilizzare per ottenere una connessione SSH alla workstation di amministrazione:

...
Admin workstation is ready to use.
Admin workstation information saved to /usr/local/google/home/me/my-admin-workstation
This file is required for future upgrades
SSH into the admin workstation with the following command:
ssh -i /usr/local/google/home/me/.ssh/gke-admin-workstation ubuntu@172.16.20.49
********************************************************************

Per informazioni più dettagliate sulla creazione di una workstation di amministrazione, vedi Creare una workstation di amministrazione.

Visualizzare i file sulla workstation di amministrazione

Utilizza il comando visualizzato nell'output precedente per ottenere una connessione SSH alla workstation di amministrazione. Ad esempio:

ssh -i /usr/local/google/home/me/.ssh/gke-admin-workstation ubuntu@172.16.20.49

Elenca i file nella home directory:

ls -1

L'output include i file della chiave JSON di due account di servizio che gkeadm ha creato per te: un account di servizio Connect-register e un account di servizio di monitoraggio del logging. Prendi nota del nome dei file della chiave JSON per il tuo account di servizio Connect-register. Ti servirà in un secondo momento durante la creazione dei cluster. Ad esempio:

admin-cluster.yaml
admin-ws-config.yaml
sa-key.json
connect-register-sa-2203040617.json
credential.yaml
log-mon-sa-2203040617.json
logs
vc01-cert.pem
user-cluster.yaml

Creazione di un cluster di amministrazione

Stabilisci una connessione SSH alla tua workstation di amministrazione.