Questo documento descrive come verificare se la virtualizzazione nidificata è abilitata e come modificare il vincolo booleano che controlla se la virtualizzazione nidificata è abilitata per l'organizzazione, il progetto o la cartella.
Un vincolo booleano all'interno di un criterio dell'organizzazione determina se puoi creare VM nidificate. Il vincolo booleano per la virtualizzazione nidificata è una limitazione, il che significa che, quando viene applicato, indica al criterio dell'organizzazione di limitare la creazione di VM nidificate. Per ulteriori informazioni sui vincoli booleani, consulta Informazioni sui vincoli.
Il vincolo Disattiva virtualizzazione nidificata delle VM non viene applicato per impostazione predefinita, quindi non devi modificare alcun vincolo booleano per abilitare la virtualizzazione nidificata. Tuttavia, Google consiglia di impostare esplicitamente il valore del vincolo in modo che l'organizzazione, le cartelle e i progetti non si basino sull'impostazione predefinita. Se il progetto non è subordinato a un'organizzazione, il vincolo non viene applicato per impostazione predefinita e non puoi modificarlo.
Prima di iniziare
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso a servizi e API. Google Cloud
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:
Select the tab for how you plan to use the samples on this page:
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione Google Cloud sull'autenticazione.
-
Controlla se la virtualizzazione nidificata è consentita
Autorizzazioni richieste per questa attività
Per eseguire questa attività, devi disporre delle seguenti autorizzazioni:
-
orgpolicy.policy.get
sull'organizzazione, sulla cartella o sul progetto
Verifica se la virtualizzazione nidificata è consentita per un'organizzazione, una cartella o un progetto utilizzando la console Google Cloud, Google Cloud CLI o REST.
Verifica se puoi creare VM nidificate nella tua organizzazione, nella tua cartella o nel tuo progetto controllando se il vincolo booleano per la disattivazione della virtualizzazione nidificata non è applicato. Se il vincolo Disattiva la virtualizzazione nidificata della VM non viene applicato dal criterio dell'organizzazione, puoi creare VM nidificate.
Nella console Google Cloud, vai alla pagina Criteri dell'organizzazione.
Nel selettore di organizzazioni, cartelle e progetti, seleziona l'entità per cui visualizzare le norme dell'organizzazione.
Seleziona il vincolo Disattiva la virtualizzazione nidificata della VM per aprire la pagina Dettagli criterio.
Visualizza il valore per Applicazione forzata:
Se il valore è Not enforced (Non applicato), la virtualizzazione nidificata è attivata e puoi creare VM nidificate.
Se il valore è Enforced (Applicata), la virtualizzazione nidificata è disattivata e non puoi creare VM nidificate.
Controlla il valore del vincolo booleano compute.disableNestedVirtualization
utilizzando il comando gcloud resource-manager org-policies describe
.
Se l'output di Google Cloud CLI non mostra un valore per booleanPolicy
,
la virtualizzazione nidificata è consentita e puoi creare VM nidificate.
Se il valore dell'output dell'interfaccia a riga di comando Google Cloud per booleanPolicy
è enforced: true
,
significa che il criterio dell'organizzazione applica il vincolo di disattivazione della virtualizzazione nidificata e non puoi creare VM nidificate.
gcloud resource-manager org-policies \ describe constraints/compute.disableNestedVirtualization \ (--organization=ORGANIZATION_ID | --folder=FOLDER_ID | --project=PROJECT_ID ) --effective
Sostituisci esattamente uno dei seguenti elementi:
ORGANIZATION_ID
: l'ID dell'organizzazione di cui recuperare il valore del vincolo. Per un elenco delle organizzazioni accessibili e dei relativi ID, esegui il comandogcloud organizations list
.FOLDER_ID
: l'ID della cartella di cui recuperare il valore del vincolo. Per un elenco delle cartelle accessibili e dei relativi ID, esegui il comandogcloud resource-manager folders list
.PROJECT_ID
: l'ID del progetto di cui recuperare il valore del vincolo. Per un elenco dei progetti accessibili e dei relativi ID, esegui il comandogcloud projects list
.
Utilizza REST per controllare il valore del vincolo booleano compute.disableNestedVirtualization
, che determina se puoi creare VM nidificate nella tua organizzazione, cartella o progetto.
Se la risposta REST non restituisce un valore per "booleanPolicy"
per la limitazione, la virtualizzazione nidificata non è disattivata e puoi
creare VM nidificate.
Se il valore di "booleanPolicy"
nell'output è "enforced": true
, la virtualizzazione nidificata è disabilitata e non puoi creare VM nidificate.
POST https://cloudresourcemanager.googleapis.com/v1/RESOURCE /RESOURCE_ID :getOrgPolicy { "constraint": "compute.disableNestedVirtualization" }
Sostituisci quanto segue:
RESOURCE
: la risorsa per cui recuperare il criterio dell'organizzazione. Imposta uno dei seguenti valori:organizations
: chiama il metodoorganizations.getOrgPolicy
folders
: chiama il metodofolders.getOrgPolicy
projects
: chiama il metodoprojects.getOrgPolicy
RESOURCE_ID
: l'organizzazione, la cartella o il progetto su cui controllare lo stato del vincolo di disattivazione della virtualizzazione nidificata
Modificare il criterio dell'organizzazione per la virtualizzazione nidificata
Autorizzazioni richieste per questa attività
Per eseguire questa attività, devi disporre delle seguenti autorizzazioni:
-
orgpolicy.policy.get
sull'organizzazione, sulla cartella o sul progetto -
orgpolicy.policy.set
sull'organizzazione, sulla cartella o sul progetto
Se disponi del ruolo appropriato, puoi controllare se un'organizzazione, una cartella o un progetto può creare VM nidificate. Controlla questa applicazione utilizzando il vincolo booleano per la virtualizzazione nidificata.
Utilizza la console Google Cloud, Google Cloud CLI o REST per attivare la virtualizzazione nidificata per un'organizzazione, una cartella o un progetto.
Per attivare la virtualizzazione nidificata, disattiva l'applicazione del vincolo booleano Disattiva virtualizzazione nidificata delle VM e per disattivarla, attiva l'applicazione del vincolo booleano.
Nella console Google Cloud, vai alla pagina Criteri dell'organizzazione.
Nel selettore di organizzazioni, cartelle e progetti, seleziona l'entità per cui modificare i criteri dell'organizzazione.
Seleziona il vincolo Disattiva la virtualizzazione nidificata della VM per aprire la pagina Dettagli criterio.
Fai clic su Modifica e seleziona Personalizza.
In Applicazione, seleziona una delle seguenti opzioni di applicazione per il vincolo booleano Disattiva virtualizzazione nidificata delle VM:
- On: attiva l'applicazione forzata e disattiva la virtualizzazione nidificata
- Off: disattiva l'applicazione forzata e abilita la virtualizzazione nidificata
Fai clic su Salva.
Utilizza il comando gcloud resource-manager org-policies
per attivare o disattivare l'applicazione del vincolo booleano dei criteri dell'organizzazione compute.disableNestedVirtualization
.
Se disattivi la limitazione compute.disableNestedVirtualization
utilizzando il comando disable-enforce
, puoi creare VM con la virtualizzazione nidificata abilitata.
Se attivi la limitazione utilizzando il comando enable-enforce
, non puoi creare VM con la virtualizzazione nidificata abilitata.
gcloud resource-manager org-policies \ ( disable-enforce | enable-enforce ) compute.disableNestedVirtualization \ (--organization=ORGANIZATION_ID | --folder=FOLDER_ID | --project=PROJECT_ID )
Sostituisci esattamente uno dei seguenti elementi:
ORGANIZATION_ID
: l'ID dell'organizzazione di cui modificare il valore del vincolo. Per un elenco delle organizzazioni accessibili e dei relativi ID, esegui il comandogcloud organizations list
.FOLDER_ID
: l'ID della cartella di cui modificare il valore del vincolo. Per un elenco delle cartelle accessibili e dei relativi ID, esegui il comandogcloud resource-manager folders list
.PROJECT_ID
: l'ID del progetto di cui modificare il valore del vincolo. Per un elenco dei progetti accessibili e dei relativi ID, esegui il comandogcloud projects list
.
Utilizza REST per modificare il valore del vincolo booleano compute.disableNestedVirtualization
, che determina se puoi creare VM nidificate nella tua organizzazione, cartella o progetto.
POST https://cloudresourcemanager.googleapis.com/v1/RESOURCE /RESOURCE_ID :setOrgPolicy { "policy": { "booleanPolicy": { "enforced":ENFORCE }, "constraint": "constraints/compute.disableNestedVirtualization" } }
Sostituisci quanto segue:
RESOURCE
: la risorsa di cui modificare il criterio dell'organizzazione. Imposta uno dei seguenti valori:organizations
: chiama il metodoorganizations.setOrgPolicy
folders
: chiama il metodofolders.setOrgPolicy
projects
: chiama il metodoprojects.setOrgPolicy
RESOURCE_ID
: l'organizzazione, la cartella o il progetto su cui controllare lo stato del vincolo di disattivazione della virtualizzazione nidificataENFORCE
: determina se il criterio dell'organizzazione applica il vincolo booleanocompute.disableNestedVirtualization
. Imposta uno dei seguenti valori:true
: per applicare il vincolo. Con questa impostazione non puoi creare VM con la virtualizzazione nidificata abilitata.false
: per non applicare il vincolo. Con questa impostazione, puoi creare VM con la virtualizzazione nidificata abilitata.
Passaggi successivi
- Attivare la virtualizzazione nidificata su una VM
- Risolvere i problemi di virtualizzazione nidificata