Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Prima di eseguire attività sulle macchine virtuali (VM) in
Google Distributed Cloud (GDC) air-gapped, devi disporre dei ruoli e delle autorizzazioni di Identity and Access
(IAM) corretti.
Prima di iniziare
Per utilizzare i comandi gcloud CLI, completa i passaggi richiesti nelle sezioni
Interfaccia a riga di comando (CLI) gcloud. Tutti i comandi per Google Distributed Cloud con air gap utilizzano la CLI gdcloud o kubectl e richiedono un ambiente del sistema operativo.
Recupera il percorso del file kubeconfig
Per eseguire comandi sul server API Management, assicurati di disporre delle seguenti risorse:
Accedi e genera il file kubeconfig per il server API Management se non ne hai uno.
Utilizza il percorso del file kubeconfig del server API Management per sostituire
MANAGEMENT_API_SERVER in queste istruzioni.
Informazioni su IAM
Distributed Cloud offre Identity and Access Management (IAM) per
l'accesso granulare a risorse Distributed Cloud specifiche e impedisce
l'accesso indesiderato ad altre risorse. IAM opera in base al principio di sicurezza del privilegio minimo e fornisce il controllo su chi ha l'autorizzazione per determinate risorse utilizzando ruoli e autorizzazioni IAM.
Leggi la documentazione IAM in
Accedi, che fornisce
istruzioni per accedere alla console GDC o a
gcloud CLI e utilizzare kubectl per accedere ai tuoi carichi di lavoro.
Ruoli predefiniti per le risorse VM
Per creare VM e dischi VM in un progetto, richiedi le autorizzazioni appropriate
all'amministratore IAM progetto per un determinato progetto. Tutti i ruoli VM devono essere associati allo spazio dei nomi del progetto in cui si trova la VM. Per gestire le macchine virtuali,
l'amministratore IAM del progetto può assegnarti i seguenti ruoli predefiniti:
Amministratore VirtualMachine progettoproject-vm-admin: gestisce le VM nello spazio dei nomi del progetto.
Project VirtualMachine Image Adminproject-vm-image-admin: gestisce le immagini VM nello spazio dei nomi del progetto.
Per un elenco di tutti i ruoli predefiniti per gli operatori delle applicazioni (AO), consulta
Descrizioni dei ruoli.
Di seguito sono riportati i ruoli comuni predefiniti per le VM. Per informazioni dettagliate sui ruoli comuni,
vedi
Ruoli comuni.
Visualizzatore tipi di VMvm-type-viewer: dispone dell'accesso in lettura ai tipi di VM predefiniti.
Visualizzatore immagini pubblicopublic-image-viewer: ha accesso in lettura alle immagini
fornite da GDC.
Sostituisci le variabili utilizzando le seguenti definizioni.
Variabile
Sostituzione
MANAGEMENT_API_SERVER
Il file kubeconfig di sistema
da gdcloud auth login.
PROJECT
Il nome del progetto per creare immagini VM.
Se l'output è yes, hai le autorizzazioni per creare una VM nel progetto PROJECT.
Se l'output è no, non disponi delle autorizzazioni. Contatta l'amministratore IAM del progetto e richiedi l'assegnazione al ruolo Amministratore VM progetto (project-vm-admin) nello spazio dei nomi del progetto in cui si trova la VM.
(Facoltativo) Verifica se gli utenti hanno accesso alle immagini VM a livello di progetto. Ad esempio, esegui i seguenti comandi per verificare se possono creare e utilizzare risorse VirtualMachineImage a livello di progetto:
Sostituisci le variabili utilizzando le seguenti definizioni.
Variabile
Sostituzione
MANAGEMENT_API_SERVER
Il file kubeconfig del server API di gestione.
PROJECT
Il nome del progetto in cui vengono create le immagini VM.
Se l'output è yes, l'utente dispone delle autorizzazioni per accedere alle immagini VM personalizzate
nel progetto PROJECT.
Se l'output è no, non disponi delle autorizzazioni. Contatta l'amministratore del progetto IAM e richiedi l'assegnazione al ruolo Amministratore immagini VM progetto (project-vm-image-admin) nello spazio dei nomi del progetto in cui si trova la VM.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-04 UTC."],[[["\u003cp\u003eProper Identity and Access Management (IAM) roles and permissions are required before performing tasks on virtual machines (VMs) in Google Distributed Cloud (GDC) air-gapped.\u003c/p\u003e\n"],["\u003cp\u003eTo manage virtual machines in a project, a Project IAM Admin can assign the "Project VirtualMachine Admin" role, while managing VM images require the "Project VirtualMachine Image Admin" role.\u003c/p\u003e\n"],["\u003cp\u003eUsers can verify their permissions to create VMs or access VM images within a specific project using \u003ccode\u003ekubectl\u003c/code\u003e commands and checking for a "yes" or "no" output.\u003c/p\u003e\n"],["\u003cp\u003eGDC offers IAM for granular access control to resources, ensuring that only authorized users can access specific resources, adhering to the principle of least privilege.\u003c/p\u003e\n"]]],[],null,["# IAM permissions preparation\n\nBefore you perform tasks on virtual machines (VM) in\nGoogle Distributed Cloud (GDC) air-gapped, you must have the proper identity and access\n(IAM) roles and permissions.\n\nBefore you begin\n----------------\n\nTo use gdcloud CLI commands, complete the required steps from the\n[gdcloud command-line interface (CLI)](/distributed-cloud/hosted/docs/latest/gdch/resources/gdcloud-overview)\nsections. All commands for Google Distributed Cloud air-gapped use the\n`gdcloud` or `kubectl` CLI, and require an operating system (OS) environment.\n\n### Get the kubeconfig file path\n\nTo run commands against the Management API server, ensure you have the following\nresources:\n\n1. [Sign in and generate](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/sign-in#cli) the\n kubeconfig file for the Management API server if you don't have one.\n\n2. Use the path to the kubeconfig file of the Management API server to replace\n \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER\u003c/var\u003e in these instructions.\n\nAbout IAM\n---------\n\nDistributed Cloud offers Identity and Access Management (IAM) for\ngranular access to specific Distributed Cloud resources and prevents\nunwanted access to other resources. IAM operates on the security\nprinciple of least privilege and provides control over who has permission\nto given resources using IAM roles and permissions.\n\nRead the IAM documentation in\n[Sign in](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/sign-in), which provides\ninstructions for signing in to the GDC console or the\ngdcloud CLI and using `kubectl` to access your workloads.\n\n### Predefined roles to VM resources\n\nTo create VMs and VM disks in a project, request the appropriate permissions\nfrom your Project IAM Admin for a given project. All VM roles must bind to the\nnamespace of the project where the VM resides. To manage virtual machines,\nyour Project IAM Admin can assign you the following predefined roles:\n\n- **Project VirtualMachine Admin** `project-vm-admin`: Manages VMs in the project namespace.\n- **Project VirtualMachine Image Admin** `project-vm-image-admin`: Manages VM images in the project namespace.\n\nFor a list of all predefined roles for Application Operators (AO), see\n[Role descriptions](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/role-descriptions).\n\nThe following are predefined common roles for VMs. For details on common roles,\nsee\n[Common roles](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/role-descriptions#common_roles).\n\n- **VM type viewer** `vm-type-viewer`: has read access to predefined VM types.\n- **Public image viewer** `public-image-viewer`: has read access to images GDC provides.\n\nTo grant or receive access to VM resources, see\n[Grant access to project resources](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/role-bindings).\n\nVerify user access to VM resources\n----------------------------------\n\n1. [Log in](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/sign-in#cli) as the\n user requesting or verifying permissions.\n\n2. Verify whether you, or the user, can create virtual machines:\n\n kubectl --kubeconfig \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER\u003c/var\u003e auth can-i create virtualmachines.virtualmachine.gdc.goog -n \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e\n\n Replace the variables by using the following definitions.\n\n - If the output is `yes`, you have permissions to create a VM in the project \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e.\n - If the output is `no`, you don't have permissions. Contact your Project IAM Admin and request assignment to the Project VirtualMachine Admin (`project-vm-admin`) role in the namespace of the project where the VM resides.\n3. Optional: Verify whether users have access to project-level VM images. For\n example, run the following commands to verify if they can create and use\n `VirtualMachineImage` resources at the project level:\n\n kubectl --kubeconfig \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER\u003c/var\u003e auth can-i get virtualmachineimages.virtualmachine.gdc.goog -n \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e\n\n kubectl --kubeconfig \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER\u003c/var\u003e auth can-i create virtualmachineimageimports.virtualmachine.gdc.goog -n \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e\n\n Replace the variables by using the following definitions.\n\n - If the output is `yes`, the user has permissions to access custom VM images in the project \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e.\n - If the output is `no`, you don't have permissions. Contact your Project IAM Admin role and request assignment to the Project VirtualMachine Image Admin (`project-vm-image-admin`) role in the namespace of the project where the VM resides."]]