Questo documento spiega come creare un'istanza di macchina virtuale (VM) utilizzando un'immagine del disco di avvio, uno snapshot del disco di avvio o un'immagine container. Alcune immagini supportano le funzionalità Shielded VM, che offrono funzionalità di sicurezza come firmware conforme a UEFI, avvio protetto e avvio con misurazioni protetto da vTPM. Sulle VM schermate, vTPM e monitoraggio dell'integrità sono abilitati per impostazione predefinita.
Durante la creazione della VM, puoi creare uno o più dischi. Puoi anche aggiungere altri dischi alla VM dopo averla creata. Compute Engine avvia automaticamente l'istanza VM dopo averla creata.
Durante la creazione di una VM, puoi anche aggiungere più interfacce di rete. Per ridurre l'esposizione della VM alle minacce su internet, puoi omettere l'indirizzo IP esterno quando aggiungi un'interfaccia di rete all'istanza. In questi casi, la VM è accessibile solo da altre VM nella stessa rete VPC o in una rete collegata, a meno che non configuri Cloud NAT.
Se è la prima volta che crei una VM, consulta la Guida rapida all'utilizzo di una VM Linux o la Guida rapida all'utilizzo di una VM Windows Server.
Per una creazione di VM più specifica o complicata, consulta le seguenti risorse:
- Crea una VM che utilizza un account di servizio gestito dall'utente.
- Crea istanze di Windows Server.
- Crea istanze SQL Server.
- Crea istanze su nodi single-tenant.
- Crea un'istanza VM con un nome host personalizzato.
- Crea istanze VM che utilizzano l'interfaccia di rete gVNIC.
- Crea e avvia un'istanza VM ARM.
- Crea un'istanza VM con GPU collegate.
- Crea un'istanza VM con un'immagine HPC (computing ad alte prestazioni).
- Crea un'istanza VM con una pianificazione delle istanze collegate.
- Crea un gruppo di istanze gestite.
- Crea un'istanza Confidential VM.
- Prenota istanze e utilizza istanze riservate.
- Configura un'istanza VM con larghezza di banda superiore.
Se vuoi utilizzare una licenza esistente, consulta Bringing your own Licenses.
Prima di iniziare
- Quando crei VM da immagini o dischi utilizzando Google Cloud CLI o REST, è previsto un limite di 20 istanze VM al secondo. Se devi creare un numero maggiore di VM al secondo, richiedi un limite di quota più elevato per la risorsa Immagini.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale viene verificata l'identità per l'accesso ai servizi e alle API Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti in Compute Engine nel seguente modo.
Seleziona la scheda relativa a come prevedi di utilizzare gli esempi in questa pagina:
Console
Quando utilizzi la console Google Cloud per accedere ai servizi e alle API di Google Cloud, non devi configurare l'autenticazione.
gcloud
-
Installa Google Cloud CLI, quindi initialize eseguendo questo comando:
gcloud init
- Imposta una regione e una zona predefinite.
Terraform
Per utilizzare gli esempi Terraform in questa pagina da un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
C#
Per utilizzare gli esempi .NET in questa pagina da un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Per utilizzare gli esempi Go in questa pagina da un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per utilizzare gli esempi Java in questa pagina da un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per utilizzare gli esempi Node.js in questa pagina da un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
PHP
Per utilizzare gli esempi PHP in questa pagina da un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per utilizzare gli esempi Python in questa pagina da un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per utilizzare gli esempi Ruby in questa pagina da un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, devi utilizzare le credenziali che fornisci a gcloud CLI.
Installa Google Cloud CLI, quindi initialize eseguendo questo comando:
gcloud init
-
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare VM,
chiedi all'amministratore di concederti il ruolo IAM
Amministratore istanze Compute (v1) (roles/compute.instanceAdmin.v1
) per il progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Questo ruolo predefinito contiene le autorizzazioni necessarie per creare le VM. Per visualizzare le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per creare VM sono necessarie le seguenti autorizzazioni:
-
compute.instances.create
sul progetto -
Per utilizzare un'immagine personalizzata per creare la VM:
compute.images.useReadOnly
nell'immagine -
Per utilizzare uno snapshot per creare la VM:
compute.snapshots.useReadOnly
nello snapshot -
Per utilizzare un modello di istanza per creare la VM:
compute.instanceTemplates.useReadOnly
sul modello di istanza -
Per assegnare una rete legacy alla VM:
compute.networks.use
sul progetto -
Per specificare un indirizzo IP statico per la VM:
compute.addresses.use
sul progetto -
Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete legacy:
compute.networks.useExternalIp
sul progetto -
Per specificare una subnet per la tua VM:
compute.subnetworks.use
sul progetto o nella subnet scelta -
Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete VPC:
compute.subnetworks.useExternalIp
sul progetto o nella subnet scelta -
Per impostare i metadati dell'istanza VM per la VM:
compute.instances.setMetadata
sul progetto -
Per impostare i tag per la VM:
compute.instances.setTags
sulla VM -
Per impostare le etichette per la VM:
compute.instances.setLabels
sulla VM -
Per impostare un account di servizio per la VM da utilizzare:
compute.instances.setServiceAccount
sulla VM -
Per creare un nuovo disco per la VM:
compute.disks.create
sul progetto -
Per collegare un disco esistente in modalità di sola lettura o lettura/scrittura:
compute.disks.use
sul disco -
Per collegare un disco esistente in modalità di sola lettura:
compute.disks.useReadOnly
sul disco
Potresti anche essere in grado di ottenere queste autorizzazioni con i ruoli personalizzati o altri ruoli predefiniti.
Crea un'istanza VM da un'immagine
Questa sezione spiega come creare una VM da un'immagine pubblica del sistema operativo o un'immagine personalizzata. Una VM contiene un bootloader, un file system di avvio e un'immagine del sistema operativo.
Visualizza un elenco delle immagini pubbliche disponibili su Compute Engine
Prima di creare una VM utilizzando un'immagine pubblica, rivedi l'elenco delle immagini pubbliche disponibili su Compute Engine.
Per ulteriori informazioni sulle funzionalità disponibili con ogni immagine pubblica, vedi Supporto delle funzionalità per sistema operativo.
Console
Nella console Google Cloud, vai alla pagina Immagini.
gcloud
Esegui questo comando:
gcloud compute images list
Prendi nota del nome dell'immagine o della famiglia di immagini e del nome del progetto che contiene l'immagine.
(Facoltativo) Per determinare se l'immagine supporta le funzionalità Shielded VM, esegui questo comando:
gcloud compute images describe IMAGE_NAME \ --project=IMAGE_PROJECT
Sostituisci quanto segue:
IMAGE_NAME
: nome dell'immagine per verificare il supporto delle funzionalità delle Shielded VMIMAGE_PROJECT
: progetto contenente l'immagine
Se l'immagine supporta le funzionalità delle Shielded VM, nell'output viene visualizzata la seguente riga:
type: UEFI_COMPATIBLE
.
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API C# di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API PHP di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Ruby di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
REST
Esegui questo comando:
GET https://compute.googleapis.com/compute/v1/projects/IMAGE_PROJECT/global/images/
Prendi nota del nome dell'immagine o della famiglia di immagini e del nome del progetto che contiene l'immagine.
(Facoltativo) Per determinare se l'immagine supporta le funzionalità Shielded VM, esegui questo comando:
GET https://compute.googleapis.com/compute/v1/projects/IMAGE_PROJECT/global/images/IMAGE_NAME
Sostituisci quanto segue:
IMAGE_PROJECT
: progetto contenente l'immagineIMAGE_NAME
: nome dell'immagine per verificare il supporto delle funzionalità delle Shielded VM
Se l'immagine supporta le funzionalità delle Shielded VM, nell'output viene visualizzata la seguente riga:
type: UEFI_COMPATIBLE
.
Crea un'istanza VM da un'immagine pubblica
Google, le community open source e i fornitori di terze parti forniscono e gestiscono immagini pubbliche del sistema operativo. Per impostazione predefinita, tutti i progetti Google Cloud possono creare VM da immagini sistema operativo pubbliche. Tuttavia, se il tuo progetto Google Cloud ha un elenco definito di immagini attendibili, puoi utilizzare solo le immagini in quell'elenco per creare una VM.
Se crei un'immagine VM schermata con un SSD locale, non puoi proteggere i dati con il monitoraggio dell'integrità o con il Virtual Platform Trusted Module (vTPM).
Console
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona il progetto e fai clic su Continua.
Fai clic su Crea istanza.
Specifica un nome per la VM. Per ulteriori informazioni, consulta la convenzione di denominazione delle risorse.
(Facoltativo) Cambia la zona per questa VM. Compute Engine casa in modo casuale l'elenco delle zone all'interno di ogni regione per incoraggiarne l'uso in più zone.
Seleziona una Configurazione macchina per la tua VM.
Nella sezione Disco di avvio, fai clic su Cambia ed esegui queste operazioni:
- Nella scheda Immagini pubbliche, scegli quanto segue:
- Sistema operativo
- Versione sistema operativo
- Tipo di disco di avvio
- Dimensione del disco di avvio
- (Facoltativo) Per le opzioni di configurazione avanzate, fai clic su Mostra configurazione avanzata.
- Per confermare le opzioni del disco di avvio, fai clic su Seleziona.
- Nella scheda Immagini pubbliche, scegli quanto segue:
Nella sezione Firewall, per consentire il traffico HTTP o HTTPS verso la VM, seleziona Consenti traffico HTTP o Consenti traffico HTTPS. Quando selezioni una di queste opzioni, Compute Engine aggiunge un tag di rete alla VM, associando la regola firewall alla VM. Compute Engine crea quindi la regola firewall in entrata corrispondente che consente tutto il traffico in entrata su
tcp:80
(HTTP) otcp:443
(HTTPS).(Facoltativo) Se hai scelto un'immagine del sistema operativo che supporta le funzionalità della Shielded VM, puoi modificare le impostazioni della VM schermata. Per modificare le impostazioni della Shielded VM, espandi la sezione Sicurezza nella sezione Networking, dischi, sicurezza, gestione, single-tenancy e procedi come segue, come richiesto:
Per attivare Avvio protetto, seleziona Attiva l'avvio protetto. Avvio protetto è disabilitato per impostazione predefinita.
Per disattivare vTPM, deseleziona la casella di controllo Attiva vTPM. vTPM è abilitato per impostazione predefinita. La disabilitazione di vTPM disabilita anche il monitoraggio dell'integrità poiché il monitoraggio dell'integrità si basa sui dati raccolti dall'avvio con misurazioni.
Per disattivare il monitoraggio dell'integrità, deseleziona la casella di controllo Attiva il monitoraggio dell'integrità. Il monitoraggio dell'integrità è abilitato per impostazione predefinita.
Per creare e avviare la VM, fai clic su Crea.
gcloud
- Seleziona un'immagine pubblica. Prendi nota del nome dell'immagine o della famiglia di immagini e del nome del progetto che contiene l'immagine.
Utilizza il comando
gcloud compute instances create
per creare una VM da una famiglia di immagini o da una versione specifica di un'immagine del sistema operativo.Se specifichi il flag facoltativo
--shielded-secure-boot
, Compute Engine crea una VM con tutte e tre le funzionalità della VM schermata abilitate:Dopo che Compute Engine avvia la VM, devi arrestarla per modificare le opzioni della Shielded VM.
gcloud compute instances create VM_NAME \ [--image=IMAGE | --image-family=IMAGE_FAMILY] \ --image-project=IMAGE_PROJECT --machine-type=MACHINE_TYPE
Sostituisci quanto segue:
VM_NAME
: nome della nuova VMIMAGE
oIMAGE_FAMILY
: specifica una delle seguenti opzioni:IMAGE
: una versione specifica di un'immagine pubblicaAd esempio,
--image=debian-10-buster-v20200309
.IMAGE_FAMILY
: una famiglia di immagini.Viene creata la VM dall'immagine del sistema operativo più recente non deprecata. Ad esempio, se specifichi
--image-family=debian-10
, Compute Engine crea una VM dall'ultima versione dell'immagine sistema operativo nella famiglia di immagini Debian 10.
IMAGE_PROJECT
: progetto contenente l'immagineMACHINE_TYPE
: tipo di macchina, predefinita o personalizzata, per la nuova VMPer ottenere un elenco dei tipi di macchina disponibili in una zona, utilizza il comando
gcloud compute machine-types list
con il flag--zones
.
Verifica che Compute Engine ha creato la VM:
gcloud compute instances describe VM_NAME
Sostituisci
VM_NAME
con il nome della VM.
Terraform
Per creare una VM, puoi utilizzare la risorsa google_compute_instance
.
Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.
Per generare il codice Terraform, puoi utilizzare il componente Codice equivalente nella console Google Cloud.- Nella console Google Cloud, vai alla pagina Istanze VM.
- Fai clic su Crea istanza.
- Specifica i parametri desiderati.
- Nella parte superiore o inferiore della pagina, fai clic su Codice equivalente e poi sulla scheda Terraform per visualizzare il codice Terraform.
C#
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API C# di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API PHP di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Ruby di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
REST
- Seleziona un'immagine pubblica. Prendi nota del nome dell'immagine o della famiglia di immagini e del nome del progetto che contiene l'immagine.
Utilizza il metodo
instances.insert
per creare una VM da una famiglia di immagini o da una versione specifica di un'immagine del sistema operativo:POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME
", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME" } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }Sostituisci quanto segue:
PROJECT_ID
: ID del progetto in cui creare la VMZONE
: zona in cui creare la VMMACHINE_TYPE_ZONE
: zona contenente il tipo di macchina da utilizzare per la nuova VMMACHINE_TYPE
: tipo di macchina, predefinita o personalizzata, per la nuova VMVM_NAME
: nome della nuova VMIMAGE_PROJECT
: progetto contenente l'immagine
Ad esempio, se specifichidebian-10
come famiglia di immagini, specificadebian-cloud
come progetto di immagini.IMAGE or IMAGE_FAMILY
: specifica una delle seguenti opzioni:IMAGE
: una versione specifica di un'immagine pubblica
Ad esempio,"sourceImage": "projects/debian-cloud/global/images/debian-10-buster-v20200309"
IMAGE_FAMILY
: una famiglia di immagini
Crea la VM dall'immagine del sistema operativo più recente non deprecata. Ad esempio, se specifichi"sourceImage": "projects/debian-cloud/global/images/family/debian-10"
, Compute Engine crea una VM dall'ultima versione dell'immagine del sistema operativo nella famiglia di immaginiDebian 10
.
NETWORK_NAME
: la rete VPC che vuoi utilizzare per la VM. Puoi specificaredefault
per l'utilizzo della tua rete predefinita.ENABLE_SECURE_BOOT
: facoltativo: se hai scelto un'immagine che supporta le funzionalità delle VM schermate, per impostazione predefinita Compute Engine abilita il Virtual Trusted Platform Module (vTPM) e il monitoraggio dell'integrità. Compute Engine non abilita Avvio protetto per impostazione predefinita.Se specifichi
true
perenableSecureBoot
, Compute Engine crea una VM con tutte e tre le funzionalità delle Shielded VM abilitate. Dopo che Compute Engine avvia la VM, devi modificare le opzioni della Shielded VM.
Crea una VM da un'immagine personalizzata
Un'immagine personalizzata appartiene solo al tuo progetto. Per creare una VM con un'immagine personalizzata, devi prima creare un'immagine personalizzata, se non ne hai già una.
Console
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona il progetto e fai clic su Continua.
Fai clic su Crea istanza.
Specifica un nome per la VM. Per ulteriori informazioni, consulta la convenzione di denominazione delle risorse.
(Facoltativo) Cambia la zona per questa VM. Compute Engine casa in modo casuale l'elenco delle zone all'interno di ogni regione per incoraggiarne l'uso in più zone.
Seleziona una Configurazione macchina per la tua VM.
Nella sezione Disco di avvio, fai clic su Cambia ed esegui queste operazioni:
- Seleziona la scheda Immagini personalizzate.
- Per selezionare il progetto di immagine, fai clic su Seleziona un progetto ed esegui le seguenti operazioni:
- Seleziona il progetto che contiene l'immagine.
- Fai clic su Apri.
- Nell'elenco Immagine, fai clic sull'immagine da importare.
- Seleziona il tipo e le dimensioni del disco di avvio.
- (Facoltativo) Per le opzioni di configurazione avanzate, fai clic su Mostra configurazione avanzata.
- Per confermare le opzioni del disco di avvio, fai clic su Seleziona.
Nella sezione Firewall, per consentire il traffico HTTP o HTTPS alla VM, seleziona Consenti traffico HTTP o Consenti traffico HTTPS.
La console Google Cloud aggiunge un tag di rete alla VM e crea la regola firewall in entrata corrispondente che consente tutto il traffico in entrata su
tcp:80
(HTTP) otcp:443
(HTTPS). Il tag di rete associa la regola firewall alla VM. Per ulteriori informazioni, consulta la panoramica delle regole firewall nella documentazione di Cloud Next Generation Firewall.Per creare e avviare la VM, fai clic su Crea.
gcloud
-
Nella console Google Cloud, attiva Cloud Shell.
Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.
Esegui il comando
gcloud compute instances create
per creare una VM con un'immagine personalizzata:gcloud compute instances create VM_NAME \ --image-project IMAGE_PROJECT \ [--image IMAGE | --image-family IMAGE_FAMILY] --subnet SUBNET
Sostituisci quanto segue:
VM_NAME
: nome della VMIMAGE_PROJECT
: nome del progetto che contiene l'immagineIMAGE
oIMAGE_FAMILY
: specifica una delle seguenti opzioni:IMAGE
: nome della tua immagine personalizzataAd esempio,
--image=my-debian-image-v2
.IMAGE_FAMILY
: se hai creato le tue immagini personalizzate come parte di una famiglia di immagini personalizzate, specifica quella famiglia di immagini personalizzate.La VM viene creata dall'immagine e dalla versione del sistema operativo non deprecate più recenti nella famiglia di immagini personalizzate. Ad esempio, se specifichi
--image-family=my-debian-family
, Compute Engine crea una VM dall'immagine del sistema operativo più recente nella tua famiglia di immaginimy-debian-family
personalizzate.
SUBNET
: se la subnet e l'istanza si trovano nello stesso progetto, sostituisci SUBNET con il nome di una subnet che si trova nella stessa regione dell'istanza.
Terraform
Per generare il codice Terraform, puoi utilizzare il componente Codice equivalente nella console Google Cloud.- Nella console Google Cloud, vai alla pagina Istanze VM.
- Fai clic su Crea istanza.
- Specifica i parametri desiderati.
- Nella parte superiore o inferiore della pagina, fai clic su Codice equivalente e poi sulla scheda Terraform per visualizzare il codice Terraform.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
REST
Il processo per creare una VM con un'immagine personalizzata nell'API è lo stesso che se stessi creando una VM con un' immagine disponibile pubblicamente.
Per creare la VM da un'immagine personalizzata, utilizza il metodo instances.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
/zones/ZONE
/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME
", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME" } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }
Sostituisci quanto segue:
PROJECT_ID
: ID del progetto in cui creare la VMZONE
: zona in cui creare la VMMACHINE_TYPE_ZONE
: zona contenente il tipo di macchina da utilizzare per la nuova VMMACHINE_TYPE
: tipo di macchina, predefinita o personalizzata, per la nuova VMVM_NAME
: nome della nuova VMIMAGE_PROJECT
: nome del progetto che contiene l'immagine personalizzataIMAGE
oIMAGE_FAMILY
: specifica una delle seguenti opzioni:IMAGE
: nome dell'immagine personalizzata. Ad esempio,"sourceImage": "projects/my-project-1234/global/images/my-debian-image-v2"
.IMAGE_FAMILY
: se hai creato le tue immagini personalizzate come parte di una famiglia di immagini personalizzate, specifica quella famiglia di immagini personalizzate.Viene creata la VM dall'immagine del sistema operativo più recente e non deprecata nella famiglia di immagini personalizzate. Ad esempio, se specifichi
"sourceImage": "projects/my-project-1234/global/images/family/my-debian-family"
, Compute Engine crea una VM dall'ultima versione dell'immagine del sistema operativo nella famiglia di immaginimy-debian-family
personalizzate.
NETWORK_NAME
: la rete VPC che vuoi utilizzare per la VM. Puoi specificaredefault
per l'utilizzo della tua rete predefinita.ENABLE_SECURE_BOOT
: facoltativo: se hai scelto un'immagine che supporta le funzionalità delle VM schermate, per impostazione predefinita Compute Engine abilita il Virtual Trusted Platform Module (vTPM) e il monitoraggio dell'integrità. Compute Engine non abilita Avvio protetto per impostazione predefinita.Se specifichi
true
perenableSecureBoot
, Compute Engine crea una VM con tutte e tre le funzionalità delle Shielded VM abilitate. Dopo che Compute Engine avvia la VM, devi modificare le opzioni della Shielded VM.
Creare un'istanza VM con dischi non di avvio aggiuntivi
Console
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona il progetto e fai clic su Continua.
Fai clic su Crea istanza.
Specifica un nome per la VM. Per ulteriori informazioni, consulta la convenzione di denominazione delle risorse.
(Facoltativo) Cambia la zona per questa VM. Compute Engine casa in modo casuale l'elenco delle zone all'interno di ogni regione per incoraggiarne l'uso in più zone.
Seleziona una Configurazione macchina per la tua VM.
Nella sezione Disco di avvio, fai clic su Cambia ed esegui queste operazioni:
- Nella scheda Immagini pubbliche, scegli quanto segue:
- Sistema operativo
- Versione sistema operativo
- Tipo di disco di avvio
- Dimensione del disco di avvio
- (Facoltativo) Per le opzioni di configurazione avanzate, fai clic su Mostra configurazione avanzata.
- Per confermare le opzioni del disco di avvio, fai clic su Seleziona.
- Nella scheda Immagini pubbliche, scegli quanto segue:
Nella sezione Firewall, per consentire il traffico HTTP o HTTPS verso la VM, seleziona Consenti traffico HTTP o Consenti traffico HTTPS. Quando selezioni una di queste opzioni, Compute Engine aggiunge un tag di rete alla VM, che associa la regola firewall alla VM. Quindi, Compute Engine crea la regola firewall in entrata corrispondente che consente tutto il traffico in entrata su
tcp:80
(HTTP) otcp:443
(HTTPS).Per aggiungere dischi non di avvio alla VM, espandi la sezione Opzioni avanzate, quindi segui questi passaggi:
- Espandi la sezione Dischi.
- Fai clic su Aggiungi nuovo disco e segui questi passaggi:
- Specifica Nome, Tipo, Tipo di origine e Dimensione per il disco.
- Nella sezione Impostazioni collegamento, seleziona la Modalità di collegamento del disco e la Regola di eliminazione. Per ulteriori informazioni sull'aggiunta di nuovi dischi, consulta Aggiungere un disco permanente alla VM.
- Fai clic su Salva.
Per creare e avviare la VM, fai clic su Crea.
gcloud
-
Nella console Google Cloud, attiva Cloud Shell.
Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.
Esegui il comando
gcloud compute instances create
per creare una VM con altri dischi non di avvio.Puoi aggiungere fino a 127 dischi non di avvio durante la creazione della VM. Specifica il flag
--create-disk
per ogni disco non di avvio che crei.Per creare dischi non di avvio da un'immagine pubblica o stock, specifica le proprietà
image
oppureimage-family
eimage-project
con il flag--create-disk
. Per creare un disco vuoto, non includere queste proprietà. Facoltativamente, puoi includere le proprietà per il discosize
etype
. Includi la proprietàreplica-zones
per creare dischi permanenti a livello di regione.gcloud compute instances create VM_NAME \ --zone=ZONE \ [--image=IMAGE | --image-family=IMAGE_FAMILY] \ --image-project=IMAGE_PROJECT \ --create-disk [image=DISK_IMAGE | image-family=DISK_IMAGE_FAMILY ], \ image-project=DISK_IMAGE_PROJECT,size=SIZE_GB,type=DISK_TYPE \ --create-disk=device_name=DISK_NAME, \ replica-zones=^:^ZONE:REMOTE-ZONE,boot=false
Sostituisci quanto segue:
VM_NAME
: nome della nuova VMZONE
: zona in cui creare la VMIMAGE
oIMAGE_FAMILY
. Specifica una delle seguenti opzioni:IMAGE
: una versione specifica di un'immagine pubblicaAd esempio,
--image=debian-10-buster-v20200309
.IMAGE_FAMILY
: una famiglia di immaginiViene creata la VM dall'immagine del sistema operativo più recente non deprecata. Ad esempio, se specifichi
--image-family=debian-10
, Compute Engine crea una VM dall'ultima versione dell'immagine sistema operativo nella famiglia di immagini Debian 10.
IMAGE_PROJECT
: progetto contenente l'immaginePer ulteriori dischi, sostituisci quanto segue:
DISK_IMAGE
oDISK_IMAGE_FAMILY
: specifica una delle seguenti opzioni:DISK_IMAGE
: nome dell'immagine che vuoi utilizzare come disco non di avvioDISK_IMAGE_FAMILY
: una famiglia di immagini da usare come disco non di avvio
DISK_IMAGE_PROJECT
: un progetto di immagini a cui appartiene l'immagine del discoSIZE_GB
: facoltativo: dimensioni del disco non di avvioDISK_TYPE
: facoltativo: URL completo o parziale per il tipo di disco permanenteAd esempio,
https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
. Per visualizzare i tipi di disco disponibili, esegui il comandogcloud compute disk-types list
.DISK_NAME
: facoltativo: il nome del disco visualizzato nel sistema operativo guest dopo la creazione della VM.REMOTE_ZONE
: la zona in cui deve essere replicato il disco
Per i dischi vuoti, non specificare i parametri
DISK_IMAGE
,DISK_IMAGE_FAMILY
oDISK_IMAGE_PROJECT
.Per i dischi di zona, non specificare la proprietà del disco
replica-zones
.
Terraform
Per generare il codice Terraform, puoi utilizzare il componente Codice equivalente nella console Google Cloud.- Nella console Google Cloud, vai alla pagina Istanze VM.
- Fai clic su Crea istanza.
- Specifica i parametri desiderati.
- Nella parte superiore o inferiore della pagina, fai clic su Codice equivalente e poi sulla scheda Terraform per visualizzare il codice Terraform.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
REST
Puoi creare fino a 127 dischi non di avvio al momento della creazione di una VM utilizzando la proprietà initializeParams
per ogni disco aggiuntivo. Crea dischi aggiuntivi con un'immagine pubblica o privata.
Per aggiungere un disco vuoto, definisci la voce initializeParams
senza
valore sourceImage
. Includi la proprietà del disco replicaZones
per creare dischi permanenti a livello di regione.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
/zones/ZONE
/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME
", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true }, { "initializeParams":{ "diskSizeGb":"SIZE_GB", "sourceImage":"projects/DISK_IMAGE_PROJECT/global/images/DISK_IMAGE", "diskType":"DISK_TYPE" } }, { "initializeParams":{ "diskSizeGb":"SIZE_GB", "diskType":"DISK_TYPE" }, }, { "boot": false, "deviceName":"DISK_NAME", "initializeParams": { "diskType": "DISK_TYPE", "replicaZones": [ "projects/PROJECT_ID/zones/ZONE", "projects/PROJECT_ID/zones/REMOTE_ZONE" ] } } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME" } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }
Sostituisci quanto segue:
PROJECT_ID
: ID del progetto in cui creare la VMZONE
: zona in cui creare la VMMACHINE_TYPE_ZONE
: zona contenente il tipo di macchina da utilizzare per la nuova VMMACHINE_TYPE
: tipo di macchina, predefinita o personalizzata, per la nuova VMVM_NAME
: nome della nuova VMIMAGE_PROJECT
: progetto contenente l'immagine
Ad esempio, se specifichidebian-10
come famiglia di immagini, specificadebian-cloud
come progetto di immagini.IMAGE or IMAGE_FAMILY
: specifica una delle seguenti opzioni:IMAGE
: una versione specifica di un'immagine pubblica
Ad esempio,"sourceImage": "projects/debian-cloud/global/images/debian-10-buster-v20200309"
IMAGE_FAMILY
: una famiglia di immagini
Crea la VM dall'immagine del sistema operativo più recente non deprecata. Ad esempio, se specifichi"sourceImage": "projects/debian-cloud/global/images/family/debian-10"
, Compute Engine crea una VM dall'ultima versione dell'immagine del sistema operativo nella famiglia di immaginiDebian 10
.
- Per ulteriori dischi, sostituisci quanto segue:
SIZE_GB
: dimensione discoDISK_IMAGE
oDISK_IMAGE_FAMILY
: specifica un'immagine di origine o una famiglia di immagini per il disco non di avvio:DISK_IMAGE
: nome dell'immagine che vuoi utilizzare come disco non di avvio Ad esempio,"sourceImage": "projects/DISK_IMAGE_PROJECT/global/images/DISK_IMAGE"
.DISK_IMAGE_FAMILY
: una famiglia di immagini da utilizzare come disco non di avvio Ad esempio,"sourceImage": "projects/DISK_IMAGE_PROJECT/global/images/family/DISK_IMAGE_FAMILY"
.
DISK_TYPE
: URL completo o parziale per il tipo di disco permanente. Ad esempio:https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
.DISK_NAME
: facoltativo. Il nome del disco visualizzato dal sistema operativo guest dopo la creazione della VM.REMOTE_ZONE
: la zona in cui replicare il disco di una regione
Per i dischi vuoti, non specificare la proprietà
sourceImage
. Per i dischi di zona, non specificare la proprietàreplicaZones
. NETWORK_NAME
: la rete VPC che vuoi utilizzare per la VM. Puoi specificaredefault
per l'utilizzo della tua rete predefinita.ENABLE_SECURE_BOOT
: facoltativo: se hai scelto un'immagine che supporta le funzionalità delle VM schermate, per impostazione predefinita Compute Engine abilita il Virtual Trusted Platform Module (vTPM) e il monitoraggio dell'integrità. Compute Engine non abilita Avvio protetto per impostazione predefinita.Se specifichi
true
perenableSecureBoot
, Compute Engine crea una VM con tutte e tre le funzionalità delle Shielded VM abilitate. Dopo che Compute Engine avvia la VM, devi modificare le opzioni della Shielded VM.
Formatta e monta i dischi prima di utilizzarli.
Crea un'istanza VM da un'immagine condivisa
Se un altro utente ha condiviso un'immagine con te, puoi utilizzare l'immagine per creare una VM.
Console
Nella console Google Cloud, vai alla pagina Crea un'istanza.
- Specifica un nome per la VM. Per saperne di più, consulta Convenzione di denominazione delle risorse.
- (Facoltativo) Cambia la zona per questa VM. Compute Engine randomizza l'elenco delle zone all'interno di ogni regione per incoraggiarne l'utilizzo in più zone.
- Seleziona una Configurazione macchina per la tua VM.
- Nella sezione Disco di avvio, fai clic su Cambia per configurare il disco di avvio, quindi procedi nel seguente modo:
- Seleziona la scheda Immagini personalizzate.
- Per selezionare il progetto di immagine, fai clic su Seleziona un progetto ed esegui le seguenti operazioni:
- Seleziona il progetto che contiene l'immagine.
- Fai clic su Apri.
- Nell'elenco Immagine, fai clic sull'immagine da importare.
- Seleziona il tipo e le dimensioni del disco di avvio.
- Per confermare le opzioni del disco di avvio, fai clic su Seleziona.
Per consentire il traffico HTTP o HTTPS alla VM, nella sezione Firewall seleziona Consenti traffico HTTP o Consenti traffico HTTPS.
La console Google Cloud aggiunge un tag di rete alla VM e crea la regola firewall in entrata corrispondente che consente tutto il traffico in entrata su
tcp:80
(HTTP) otcp:443
(HTTPS). Il tag di rete associa la regola firewall alla VM. Per maggiori informazioni, consulta la panoramica delle regole firewall nella documentazione di Cloud Next Generation Firewall.- Per avviare e creare una VM, fai clic su Crea.
gcloud
-
Nella console Google Cloud, attiva Cloud Shell.
Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.
-
Crea una VM utilizzando
gcloud compute instances create command
e usa i flag--image
e--image-project
per specificare il nome dell'immagine e il progetto in cui si trova l'immagine:gcloud compute instances create VM_NAME \ --image=IMAGE \ --image-project=IMAGE_PROJECT
Sostituisci quanto segue:
VM_NAME
: nome della nuova VMIMAGE
: nome dell'immagineIMAGE_PROJECT
: progetto a cui appartiene l'immagine
Se il comando ha esito positivo,
gcloud
risponde con le proprietà della nuova VM:Created [https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-b/instances/example-instance]. NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS example-instance us-central1-b e2-standard-2 10.240.0.4 104.198.53.60 RUNNING
Terraform
Il processo per creare una VM con un'immagine condivisa in Terraform è lo stesso che se stessi creando una VM con un'immagine disponibile pubblicamente.
- Nella console Google Cloud, vai alla pagina Istanze VM.
- Fai clic su Crea istanza.
- Specifica i parametri desiderati.
- Nella parte superiore o inferiore della pagina, fai clic su Codice equivalente e poi sulla scheda Terraform per visualizzare il codice Terraform.
REST
Il processo per creare una VM con un'immagine condivisa nell'API è la stessa che se stessi creando una VM con un'immagine disponibile pubblicamente.
Per creare la VM da un'immagine condivisa, utilizza il metodo instances.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
/zones/ZONE
/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME
", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME" } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }
Sostituisci quanto segue:
PROJECT_ID
: ID del progetto in cui creare la VMZONE
: zona in cui creare la VMMACHINE_TYPE_ZONE
: zona contenente il tipo di macchina da utilizzare per la nuova VMMACHINE_TYPE
: tipo di macchina, predefinita o personalizzata, per la nuova VMVM_NAME
: nome della nuova VMIMAGE_PROJECT
: nome del progetto che contiene l'immagine condivisaIMAGE
oIMAGE_FAMILY
: specifica una delle seguenti opzioni:IMAGE
: nome dell'immagine condivisa. Ad esempio,"sourceImage": "projects/finance-project-1234/global/images/finance-debian-image-v2"
.IMAGE_FAMILY
: se l'immagine condivisa viene creata come parte di una famiglia di immagini personalizzate, specifica quella famiglia di immagini personalizzate.Viene creata la VM dall'immagine del sistema operativo più recente e non deprecata nella famiglia di immagini personalizzate. Ad esempio, se specifichi
"sourceImage": "projects/finance-project-1234/global/images/family/finance-debian-family"
, Compute Engine crea una VM dall'ultima versione dell'immagine del sistema operativo nella famiglia di immaginifinance-debian-family
personalizzate.
NETWORK_NAME
: la rete VPC che vuoi utilizzare per la VM. Puoi specificaredefault
per l'utilizzo della tua rete predefinita.ENABLE_SECURE_BOOT
: facoltativo: se hai scelto un'immagine che supporta le funzionalità delle VM schermate, per impostazione predefinita Compute Engine abilita il Virtual Trusted Platform Module (vTPM) e il monitoraggio dell'integrità. Compute Engine non abilita Avvio protetto per impostazione predefinita.Se specifichi
true
perenableSecureBoot
, Compute Engine crea una VM con tutte e tre le funzionalità delle Shielded VM abilitate. Dopo che Compute Engine avvia la VM, devi modificare le opzioni della Shielded VM.
Crea una VM da uno snapshot
Puoi creare una nuova VM da uno snapshot nei modi seguenti:
Ripristino del disco di avvio di una VM: se hai eseguito il backup del disco di avvio di una VM con uno snapshot, puoi utilizzare questo snapshot per creare una nuova VM. Per le istruzioni, consulta Ripristinare uno snapshot del disco di avvio in una nuova VM.
Ripristino di un disco non di avvio: se hai eseguito il backup di un disco non di avvio con uno snapshot, puoi ripristinare lo snapshot su un nuovo disco non di avvio quando crei una VM. Per le istruzioni, consulta Creazione di una VM con un disco non di avvio basato su uno snapshot.
Per creare rapidamente più di una VM con lo stesso disco di avvio, crea un'immagine personalizzata, quindi crea le VM da quell'immagine anziché utilizzare uno snapshot.
Crea un'istanza VM da un'immagine container
Per eseguire il deployment e avviare un container su una VM di Compute Engine, specifica un nome dell'immagine container e i parametri di configurazione facoltativi al momento della creazione della VM. Compute Engine crea la VM utilizzando la versione più recente dell'immagine pubblica del sistema operativo ottimizzato per i container, in cui è installato Docker. Poi, Compute Engine avvia il container all'avvio della VM. Per maggiori informazioni, consulta la pagina relativa al deployment dei container sulle VM.
Per creare una VM da un'immagine container, devi usare la console Google Cloud o gcloud
.
Console
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona il progetto e fai clic su Continua.
Fai clic su Crea istanza.
Specifica un nome per la VM. Per ulteriori informazioni, consulta la convenzione di denominazione delle risorse.
Nella sezione Contenitore, fai clic su Esegui il deployment del container.
Specifica l'immagine container da utilizzare. Ad esempio:
Per selezionare un'immagine container NGINX 1.12 da Cloud Launcher:
gcr.io/cloud-marketplace/google/nginx1:1.12
Per eseguire il deployment di un'immagine container Apache da Docker Hub, specifica sempre il nome completo dell'immagine Docker:
docker.io/httpd:2.4
(Facoltativo) Fai clic su Opzioni contenitore avanzate. Per maggiori informazioni, consulta la pagina Configurare le opzioni per l'esecuzione del container.
Per creare la VM, avviala e avvia il container, fai clic su Crea.
gcloud
-
Nella console Google Cloud, attiva Cloud Shell.
Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.
Esegui il comando
gcloud compute instances create-with-container
:gcloud compute instances create-with-container VM_NAME \ --container-image=CONTAINER_IMAGE
Sostituisci quanto segue:
VM_NAME
: nome della nuova VM.CONTAINER_IMAGE
: nome dell'immagine container.
Ad esempio, il seguente comando crea una VM denominata
nginx-vm
, che avvia ed esegue l'immagine container:gcr.io/cloud-marketplace/google/nginx1:1.12
gcloud compute instances create-with-container nginx-vm \ --container-image=gcr.io/cloud-marketplace/google/nginx1:1.12
Per eseguire il deployment di un'immagine container Apache da Docker Hub, specifica sempre il nome completo dell'immagine Docker:
docker.io/httpd:2.4
.
Crea un'istanza VM in una subnet specifica
Per impostazione predefinita, Google Cloud crea una rete VPC in modalità automatica denominata default
per ogni progetto. Per utilizzare una rete o una subnet diversa creata manualmente in una rete VPC in modalità automatica o personalizzata, devi specificare la subnet quando crei la VM.
Durante la creazione di una VM in una subnet, prendi in considerazione le seguenti regole:
- Se non specifichi una rete o una subnet, Compute Engine utilizza la rete VPC predefinita e la subnet automatica che si trova nella stessa regione della VM.
- Se non specifichi una rete, Compute Engine deduce la rete dalla subnet specificata.
- Se specifichi una rete, devi indicare una subnet, che deve appartenere alla stessa rete. In caso contrario, la creazione della VM non va a buon fine.
Console
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona il progetto e fai clic su Continua.
Fai clic su Crea istanza.
Specifica un nome per la VM. Per ulteriori informazioni, consulta la convenzione di denominazione delle risorse.
(Facoltativo) Cambia la zona per questa VM. Compute Engine casa in modo casuale l'elenco delle zone all'interno di ogni regione per incoraggiarne l'uso in più zone.
Nella sezione Firewall, per consentire il traffico HTTP o HTTPS verso la VM, seleziona Consenti traffico HTTP o Consenti traffico HTTPS.
La console Google Cloud aggiunge un tag di rete alla VM e crea la regola firewall in entrata corrispondente che consente tutto il traffico in entrata su
tcp:80
(HTTP) otcp:443
(HTTPS). Il tag di rete associa la regola firewall alla VM. Per ulteriori informazioni, consulta la panoramica delle regole firewall nella documentazione di Cloud NGFW.Espandi la sezione Opzioni avanzate.
- Espandi la sezione Networking.
- In Interfacce di rete, specifica i dettagli della rete:
- Nel campo Rete, seleziona la rete VPC contenente la subnet che hai creato.
- Nel campo Subnet, seleziona la subnet da utilizzare per la VM.
- Fai clic su Fine.
Per creare e avviare la VM, fai clic su Crea.
gcloud
-
Nella console Google Cloud, attiva Cloud Shell.
Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.
Utilizzando Google Cloud CLI, segui le stesse istruzioni per creare una VM da un'immagine o uno snapshot e aggiungi i flag
--subnet=SUBNET_NAME
e--zone=ZONE
quando esegui il comandogcloud compute instances create
:gcloud compute instances create VM_NAME \ --network=NETWORK_NAME \ --subnet=SUBNET_NAME \ --zone=ZONE
Sostituisci quanto segue:
VM_NAME
: nome della VMNETWORK_NAME
: facoltativo: nome della reteSUBNET_NAME
: nome della subnetPer visualizzare un elenco delle subnet nella rete, utilizza il comando
gcloud compute networks subnets list
.ZONE
: zona in cui viene creata la VM, ad esempioeurope-west1-b
L'area della VM viene dedotta dalla zona.
Terraform
Per creare una VM in una subnet specifica, puoi utilizzare la risorsa google_compute_instance
.
Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.
Il processo per creare una VM con un'immagine condivisa in Terraform è lo stesso che se stessi creando una VM con un'immagine disponibile pubblicamente.
- Nella console Google Cloud, vai alla pagina Istanze VM.
- Fai clic su Crea istanza.
- Specifica i parametri desiderati.
- Nella parte superiore o inferiore della pagina, fai clic su Codice equivalente e poi sulla scheda Terraform per visualizzare il codice Terraform.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python disponibili nella guida rapida di Compute Engine sull'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python di Compute Engine.
Per eseguire l'autenticazione in Compute Engine, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
REST
Segui le istruzioni dell'API per creare una VM da un'immagine o uno snapshot, ma specifica il campo subnet
nel corpo della richiesta. Per aggiungere dischi vuoti, non aggiungere un'immagine di origine. Facoltativamente, puoi specificare le proprietà diskSizeGb
, diskType
e labels
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
/zones/ZONE
/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME
", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME", "subnetwork":"regions/REGION/subnetworks/SUBNET_NAME", "accessConfigs":{ "name":"External NAT", "type":"ONE_TO_ONE_NAT" } } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }
Sostituisci quanto segue:
PROJECT_ID
: ID del progetto in cui creare la VMZONE
: zona in cui creare la VMMACHINE_TYPE_ZONE
: zona contenente il tipo di macchina da utilizzare per la nuova VMMACHINE_TYPE
: tipo di macchina, predefinita o personalizzata, per la nuova VMVM_NAME
: nome della nuova VMIMAGE_PROJECT
: progetto contenente l'immagine
Ad esempio, se specifichidebian-10
come famiglia di immagini, specificadebian-cloud
come progetto di immagini.IMAGE or IMAGE_FAMILY
: specifica una delle seguenti opzioni:IMAGE
: una versione specifica di un'immagine pubblica
Ad esempio,"sourceImage": "projects/debian-cloud/global/images/debian-10-buster-v20200309"
IMAGE_FAMILY
: una famiglia di immagini
Crea la VM dall'immagine del sistema operativo più recente non deprecata. Ad esempio, se specifichi"sourceImage": "projects/debian-cloud/global/images/family/debian-10"
, Compute Engine crea una VM dall'ultima versione dell'immagine del sistema operativo nella famiglia di immaginiDebian 10
.
NETWORK_NAME
: la rete VPC che vuoi utilizzare per la VM. Puoi specificaredefault
per l'utilizzo della tua rete predefinita.REGION
: regione in cui si trova la subnet specificataSUBNET_NAME
: nome della subnetENABLE_SECURE_BOOT
: facoltativo: se hai scelto un'immagine che supporta le funzionalità delle VM schermate, per impostazione predefinita Compute Engine abilita il Virtual Trusted Platform Module (vTPM) e il monitoraggio dell'integrità. Compute Engine non abilita Avvio protetto per impostazione predefinita.Se specifichi
true
perenableSecureBoot
, Compute Engine crea una VM con tutte e tre le funzionalità delle Shielded VM abilitate. Dopo che Compute Engine avvia la VM, devi modificare le opzioni della Shielded VM.
Crea una VM configurata per il monitoraggio e il logging di Ops Agent
Ops Agent raccoglie dati telemetrici per le VM che puoi utilizzare per la risoluzione dei problemi e l'ottimizzazione delle prestazioni. Puoi installare Ops Agent durante la creazione di una VM o su VM esistenti, come descritto nei seguenti argomenti:
Installa Ops Agent quando crei una VM utilizzando la console Google Cloud: abilita l'installazione automatica di Ops Agent selezionando la casella di controllo Installa Ops Agent per il monitoraggio e il logging nella pagina Crea un'istanza. Questa opzione abilita VM Manager in modalità di funzionalità limitata e crea un'assegnazione dei criteri del sistema operativo per l'installazione di Ops Agent sulla VM. Per saperne di più, vedi Installare Ops Agent durante la creazione della VM.
Installa Ops Agent su VM esistenti: utilizza la console Google Cloud, gcloud CLI o uno strumento di automazione per installare Ops Agent su un parco di VM o su singole VM. Per le istruzioni, vedi Installare Ops Agent.
Risoluzione dei problemi
Per trovare i metodi per risolvere gli errori comuni di creazione delle VM, consulta Risoluzione dei problemi relativi alla creazione di VM.
Che cosa succede dopo?
Controlla lo stato della VM per vedere quando è pronta per l'uso.
Scopri come utilizzare gli snapshot per eseguire il backup dei dischi permanenti.
Scopri come creare e collegare un disco di archiviazione non di avvio alla tua VM per archiviare i dati separatamente dal disco di avvio.
Scopri come connetterti alla tua VM.
Scopri come fare lo scale out della VM in un gruppo di VM.
Provalo
Se non hai mai utilizzato Google Cloud, crea un account per valutare le prestazioni di Compute Engine in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
Prova Compute Engine gratuitamente