Questo documento mostra come creare una workstation di amministrazione per Cluster Anthos su VMware (GKE On-Prem), che puoi utilizzare per creare cluster.
I passaggi in questo documento 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.
Le istruzioni qui sono complete. Per un'introduzione più breve alla creazione di una workstation di amministrazione, consulta Creare una workstation di amministrazione (guida rapida).
Prima di iniziare
Conoscere l'indirizzo del server vCenter.
Scopri il percorso dei certificati CA.
Crea uno o più progetti Google Cloud come descritto in Utilizzo di più progetti Google Cloud.
Pianificazione degli account di servizio
Quando utilizzi gkeadm
per creare una workstation di amministrazione, puoi consentire a gkeadm
di creare alcuni account e chiavi di servizio per te. In questo caso, gkeadm
concede anche i ruoli appropriati di Identity and Access Management agli account di servizio.
In alternativa, puoi creare manualmente gli account e le chiavi di servizio. In questo caso, devi concedere manualmente i ruoli IAM ai tuoi account di servizio.
La creazione manuale di account di servizio ti offre maggiore flessibilità rispetto
alla creazione di gkeadm
:
Tutti gli account di servizio creati automaticamente hanno lo stesso progetto Google Cloud padre del tuo account di servizio di accesso ai componenti. Quando crei un account di servizio manualmente, puoi scegliere il progetto Google Cloud padre.
Tutti gli account di servizio creati automaticamente ricevono tutti i ruoli IAM nel progetto Google Cloud padre del tuo account di servizio di accesso ai componenti. Questo va bene se è l'unico progetto Google Cloud associato ai tuoi cluster. Se vuoi associare i tuoi cluster a più progetti Google Cloud, hai bisogno della flessibilità per concedere ruoli a un account di servizio su un progetto Google Cloud a tua scelta.
Se decidi di creare i tuoi account di servizio, segui le istruzioni riportate in Account e chiavi di servizio.
Indipendentemente dal fatto che tu abbia automaticamente creato gkeadm
account di servizio, devi creare manualmente un account di servizio: l'account di servizio con accesso ai componenti. Per istruzioni su come creare l'account di servizio con accesso ai componenti e concedergli i ruoli IAM appropriati, consulta Account di servizio con accesso ai componenti.
Generazione di modelli per i file di configurazione
Scarica gkeadm
nella directory attuale.
Genera modelli:
./gkeadm create config
Il comando precedente ha creato questi file nella directory attuale:
credential.yaml
admin-ws-config.yaml
Compilazione di credential.yaml
In credential.yaml
, inserisci il tuo nome utente e password vCenter. Ad esempio:
kind: CredentialFile items: - name: vCenter username: "my-account-name" password: "AadmpqGPqq!a"
Compilazione di admin-ws-config.yaml
Diversi campi in admin-ws-config.yaml
sono già compilati con valori predefiniti o generati. Puoi mantenere i valori completati o apportare modifiche man mano che preferisci.
Campi da compilare
Compila i seguenti campi obbligatori. Per informazioni su come compilare i campi, file di configurazione della workstation di amministrazione.
gcp: componentAccessServiceAccountKeyPath: "Fill in" vCenter: credentials: address: "Fill in" datacenter: "Fill in" datastore: "Fill in" cluster: "Fill in" network: "Fill in" resourcePool: "Fill in" caCertPath: "Fill in"
Se la workstation di amministrazione è protetta da un server proxy, compila il campo proxyURL
:
adminWorkstation: proxyURL: "Fill in"
Se vuoi che la workstation di amministrazione riceva l'indirizzo IP da un server DHCP, imposta ipAllocationMode
su "dhcp"
e rimuovi la sezione hostconfig
:
adminWorkstation: network: ipAllocationMode: "dhcp"
Se vuoi specificare un indirizzo IP statico per la workstation di amministrazione, imposta ipAllocationMode
su "static"
e compila la sezione hostconfig
:
adminWorkstation: network: ipAllocationMode: "static" hostconfig: ip: "Fill in" gateway: "Fill in" netmask: "Fill in" dns: - "Fill in"
Accesso in corso...
L'Account Google impostato come account
proprietà dell'SDK si chiama account SDK. Lo strumento a riga di comando gkeadm
utilizza il tuo account SDK per scaricare la OVA della workstation di amministrazione e abilitare i servizi nel progetto Google Cloud.
Se scegli di fare in modo che gkeadm
crei automaticamente gli account di servizio per te, gkeadm
utilizzerà anche il tuo account SDK per creare gli account di servizio e le chiavi e per concedere i ruoli agli account di servizio.
Pertanto, è importante impostare la proprietà SDK account
prima di eseguire gkeadm
per creare una workstation di amministrazione.
Accedi con qualsiasi Account Google. Questa azione imposta la proprietà account
dell'SDK:
gcloud auth login
Verifica che la proprietà dell'SDK account
sia impostata correttamente:
gcloud config list
L'output mostra i valori 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
Il tuo account SDK deve avere il seguente
ruolo IAM
sul progetto Google Cloud principale del tuo account di servizio dell'accesso ai componenti.
Questo consente a gkeadm
di abilitare i servizi sul progetto Google Cloud.
serviceUsage.serviceUsageAdmin
Se scegli di far creare automaticamente agli account account di servizio gkeadm
, l'account SDK deve avere anche i ruoli seguenti nel progetto padre dell'account di servizio con accesso ai componenti. Questo consente a gkeadm
di creare account e chiavi di servizio.
resourcemanager.projectIamAdmin
iam.serviceAccountCreator
iam.serviceAccountKeyAdmin
Per concedere i ruoli in un progetto Google Cloud, devi disporre di determinate autorizzazioni sul progetto Google Cloud. Per maggiori dettagli, consulta Concedere, modificare e revocare l'accesso alle risorse.
Se disponi delle autorizzazioni necessarie, puoi concedere i ruoli personalmente. In caso contrario, un altro membro dell'organizzazione deve concederti i ruoli.
Per concedere il ruolo richiesto al tuo account SDK:
Linux e macOS
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="user:ACCOUNT" \ --role="roles/serviceusage.serviceUsageAdmin"
Windows
gcloud projects add-iam-policy-binding PROJECT_ID ^ --member="user:ACCOUNT" ^ --role="roles/serviceusage.serviceUsageAdmin"
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto Google Cloud principale del tuo account di servizio dell'accesso ai componentiACCOUNT
: il tuo account SDK
Per concedere ruoli aggiuntivi nel caso in cui vuoi che gkeadm
crei automaticamente account di servizio
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/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/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 progetto padre del tuo account di servizio dell'accesso ai componentiACCOUNT
: il tuo account SDK
Creazione della workstation di amministrazione
Inserisci questo comando per creare la tua workstation di amministrazione. Se vuoi che gkeadm
crei account di servizio per te, includi il flag --auto-create-service-accounts
. Se vuoi creare manualmente i tuoi account di servizio, ometti il flag.
./gkeadm create admin-workstation [--auto-create-service-accounts]
L'output fornisce informazioni dettagliate sulla creazione della workstation di amministrazione:
... Getting ... service account... ... ******************************************************************** 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.5.1 ********************************************************************
Ottenere una connessione SSH alla tua workstation di amministrazione
Verso la fine dell'output precedente è presente un comando che puoi usare per ottenere una connessione SSH alla workstation di amministrazione. Inserisci il comando. Ad esempio:
ssh -i /usr/local/google/home/me/.ssh/gke-admin-workstation ubuntu@172.16.5.1
Elenca i file sulla tua workstation di amministrazione:
ls -1
Nell'output sono visualizzati due file di configurazione del cluster, il file del certificato CA e il file della chiave JSON del tuo account di servizio dell'accesso ai componenti. Se gkeadm
ha creato account di servizio per te, puoi anche visualizzare i file delle chiavi JSON di questi account di servizio. Ad esempio:
admin-cluster.yaml user-cluster.yaml vcenter-ca-cert.pem component-access-key.json
Verifica che gkeadm
abbia attivato il tuo account di servizio di accesso ai componenti sulla workstation di amministrazione:
gcloud config get-value account
Copia del file della chiave JSON nella workstation di amministrazione
Prima di creare un cluster, i file della chiave JSON dei tuoi account di servizio devono trovarsi nella workstation di amministrazione nella home directory.
La chiave dell'account di servizio per l'accesso ai componenti è già presente nella workstation di amministrazione.
Se hai incluso il flag --auto-create-service-accounts
quando hai eseguito gkeadm create admin-workstation
, le chiavi per i seguenti account di servizio si trovano già nella workstation di amministrazione nella home directory. In caso contrario, devi copiare manualmente le chiavi nella home directory della workstation di amministrazione:
- Account di servizio Connect-register
- Account di servizio monitoraggio del logging
Se hai creato uno dei seguenti account di servizio, devi copiare manualmente le chiavi per questi account di servizio nella home directory della workstation di amministrazione:
- Account di servizio di misurazione dell'utilizzo
- Account di servizio di audit logging
- Account di servizio di Autorizzazione binaria
Ripristino della workstation di amministrazione da un file di backup
Quando esegui l'upgrade di una workstation di amministrazione, per impostazione predefinita il comando di upgrade di gkeadm
salva anche un file di backup. Se in seguito non hai più una workstation di amministrazione o se hai perso alcuni file che si trovavano nella workstation di amministrazione di cui hai eseguito l'upgrade, puoi utilizzare questo file di backup per creare una workstation di ripristino che verrà ripristinata immediatamente dopo l'upgrade.
Per creare una workstation di amministrazione da un file di backup, esegui questo comando:
gkeadm create admin-workstation --restore-from-backup ADMIN_WORKSTATION_NAME-backup.tar.gz
Sostituisci ADMIN_WORKSTATION_NAME con il nome della workstation di amministrazione.
Passaggi successivi
Creazione di un cluster di amministrazione