Le pianificazioni delle istanze ti consentono di avviare e arrestare automaticamente le istanze di macchine virtuali (VM). Per utilizzare le pianificazioni delle istanze, crea un criterio di risorsa che descriva il comportamento di avvio e arresto, quindi collega il criterio a una o più istanze VM.
L'utilizzo delle pianificazioni delle istanze per automatizzare il deployment delle istanze VM può aiutarti a ottimizzare i costi e a gestire le istanze VM in modo più efficiente. Puoi utilizzare le pianificazioni delle istanze sia per i workload ricorrenti sia per quelli una tantum. Ad esempio, utilizza le pianificazioni delle istanze per eseguire le istanze VM solo durante l'orario di lavoro o per fornire capacità per un evento una tantum.
Per scoprire altre opzioni per la pianificazione automatica delle VM, consulta le seguenti pagine:
Scalabilità in base alle pianificazioni: se esegui il tuo workload su un gruppo di istanze gestite (MIG), puoi utilizzare le pianificazioni di scalabilità per pianificare il numero richiesto di istanze di macchine virtuali (VM) per eventi ricorrenti o una tantum.
Limita il tempo di esecuzione di una VM: Se non vuoi creare criteri delle risorse, puoi configurare direttamente una VM in modo che venga arrestata o eliminata automaticamente quando raggiunge un orario o una durata specifici.
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 ai Google Cloud servizi e alle API.
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:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
L'agente di servizio Compute Engine per il tuo progetto. Questo è necessario per l'esecuzione della pianificazione dell'istanza su una VM.
Se revochi queste autorizzazioni dopo aver creato le pianificazioni delle istanze, le pianificazioni delle istanze potrebbero smettere di funzionare senza preavviso. Per verificare se le pianificazioni delle istanze vengono eseguite correttamente, devi controllare regolarmente i log di controllo.
L'account utente o il account di servizio che crea, gestisce o utilizza la pianificazione delle istanze.
-
compute.instances.start
-
compute.instances.stop
-
Crea una pianificazione istanza:
compute.resourcePolicies.create
-
Elenca una pianificazione istanze:
compute.resourcePolicies.list
-
Descrivi una pianificazione dell'istanza:
compute.resourcePolicies.get
-
Elimina una pianificazione delle istanze:
compute.resourcePolicies.delete
-
Collega una pianificazione delle istanze a una nuova VM:
-
compute.instances.create
-
compute.resourcePolicies.use
-
compute.instances.addResourcePolicies
-
-
Collega una pianificazione delle istanze a una VM esistente:
-
compute.resourcePolicies.use
-
compute.instances.addResourcePolicies
-
-
Rimuovi una pianificazione delle istanze da una VM:
-
compute.resourcePolicies.use
-
compute.instances.removeResourcePolicies
-
- Puoi collegare una pianificazione delle istanze solo alle istanze VM che si trovano nella stessa regione della pianificazione delle istanze.
- Non puoi utilizzare le pianificazioni delle istanze per arrestare un'istanza con dischi SSD locali.
- Ogni istanza VM può seguire un solo programma di istanze, ma puoi collegare ogni programma di istanze a un massimo di 1000 istanze VM.
- Le pianificazioni delle istanze non forniscono garanzie di capacità, quindi se le risorse necessarie per un'istanza VM pianificata non sono disponibili all'ora pianificata, l'istanza VM potrebbe non avviarsi all'ora pianificata. Anche se puoi prenotare istanze VM prima di avviarle per ottenere un elevato livello di garanzia che la capacità sia disponibile quando necessario, le prenotazioni non possono essere pianificate automaticamente.
- Le pianificazioni delle istanze avviano e arrestano le istanze VM solo negli orari specificati, ma puoi avviare e arrestare manualmente le istanze VM in qualsiasi momento. Ad esempio, supponiamo che tu abbia una pianificazione che inizia ogni giorno alle 8:00 e termina ogni giorno alle 17:00. Se colleghi questa pianificazione a un'istanza VM arrestata alle 16:00, l'istanza VM non viene avviata fino alle 8:00 del giorno successivo, a meno che tu non la avvii manualmente prima di quell'ora.
- Le istanze VM pianificate potrebbero richiedere fino a 15 minuti dopo l'ora pianificata per iniziare un'operazione di avvio o arresto. Se hai bisogno che le istanze VM vengano avviate o arrestate a un orario specifico, pianifica l'operazione 15 minuti prima del necessario e pianifica ogni operazione a distanza di almeno 15 minuti.
- La pianificazione potrebbe non riuscire se l'intervallo tra le operazioni di avvio e interruzione è inferiore a 15 minuti. Questo perché l'operazione di arresto potrebbe verificarsi prima dell'operazione di avvio, impedendone l'esecuzione.
- Ogni pianificazione dell'istanza consente di eseguire fino a un'operazione di avvio e fino a un'operazione di arresto all'ora.
- Per modificare la pianificazione di un'istanza, utilizza un'operazione di patch sulla policy di pianificazione dell'istanza.
Nella console Google Cloud , vai alla pagina Istanze VM.
Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina.
Fai clic su
Crea programmazione. Si apre il riquadro Crea una pianificazione.Inserisci un nome.
Nel menu a discesa Regione, seleziona la località per questa pianificazione dell'istanza.
Definisci quando la pianificazione dell'istanza avvia e arresta le istanze VM collegate. Se devi avviare o arrestare le istanze VM a un orario specifico, pianifica l'operazione 15 minuti prima del necessario. Assicurati che ogni operazione di avvio e arresto sia distanziata di almeno 15 minuti.
Utilizza i campi predefiniti Ora di inizio, Ora di interruzione e Frequenza oppure, se vuoi configurare una pianificazione più complessa, utilizza le espressioni cron.
Campi predefiniti:
- Inserisci un'ora di inizio, un'ora di fine o entrambe.
- Nel campo Ora di inizio, digita o fai clic su per selezionare l'ora di inizio delle istanze VM.
- Nel campo Ora di interruzione, digita o fai clic su per selezionare l'ora di interruzione delle istanze VM.
- Nel menu a discesa Frequenza nella parte inferiore del riquadro, seleziona la frequenza con cui si ripetono Ora di inizio e Ora di fine.
- Inserisci un'ora di inizio, un'ora di fine o entrambe.
Espressioni cron:
- Per attivare le espressioni cron, fai clic sul pulsante di attivazione/disattivazione Utilizza espressione CRON nella parte superiore del riquadro.
- Inserisci un'espressione CRON di avvio, un'espressione CRON di arresto o entrambe.
- Nel campo Espressione CRON di avvio, inserisci un'espressione cron che descriva quando avviare le istanze VM.
- Nel campo Espressione CRON di arresto, inserisci un'espressione cron che descriva quando arrestare le istanze VM.
Nel menu a discesa Fuso orario, seleziona il fuso orario per Ora di inizio e Ora di fine.
(Facoltativo) Nel campo Data di inizio, digita o fai clic su
per selezionare la data e l'ora in cui vuoi che inizi la pianificazione di questa istanza. Se omessa, la pianificazione ha effetto immediato.(Facoltativo) Nel campo Data di fine, digita o fai clic su
per selezionare la data e l'ora in cui termina la pianificazione di questa istanza. Se omessa, la pianificazione è valida a tempo indeterminato.Fai clic su Invia.
- SCHEDULE_NAME: il nome della nuova pianificazione dell'istanza.
- REGION: la regione in cui si trovano le istanze VM che vuoi collegare a questa pianificazione delle istanze.
- Specifica almeno uno dei seguenti elementi:
- START-OPERATION_SCHEDULE: una pianificazione che descrive quando vengono avviate le istanze VM collegate, formattata come espressione cron. Se hai bisogno che le istanze VM vengano avviate a un orario specifico, pianifica l'operazione 15 minuti prima del necessario. Per ulteriori informazioni, vedi il programma di avvio dell'operazione.
- STOP-OPERATION_SCHEDULE: una pianificazione che descrive quando vengono arrestate le istanze VM collegate, formattata come un'espressione cron. Se hai bisogno che le istanze VM si arrestino a un'ora specifica, pianifica l'operazione 15 minuti prima del necessario. Per ulteriori informazioni, consulta il programma di interruzione delle operazioni.
- TIME_ZONE: (facoltativo) il fuso orario IANA
basato sulla posizione per questa pianificazione dell'istanza. Se omesso, viene utilizzato il valore predefinito
UTC
. Per ulteriori informazioni, consulta la sezione Fuso orario. - INITIATION_DATE: facoltativo: la prima data in cui la pianificazione dell'istanza è effettiva, formattata come timestamp RFC 3339. Se omessa, la pianificazione ha effetto immediato. Per ulteriori informazioni, consulta la sezione Data di inizio.
- END_DATE: facoltativo: l'ultima data in cui la pianificazione dell'istanza è effettiva, formattata come timestamp RFC 3339. Se omessa, la pianificazione è valida a tempo indeterminato. Per saperne di più, consulta la sezione Data di fine.
- PROJECT: il tuo ID progetto.
- REGION: la regione in cui si trovano le istanze VM che vuoi collegare a questa pianificazione delle istanze.
- SCHEDULE_NAME: il nome della nuova pianificazione delle istanze.
- START-OPERATION_SCHEDULE o
STOP-OPERATION_SCHEDULE: specifica almeno una
delle seguenti opzioni:
- START-OPERATION_SCHEDULE: una pianificazione che descrive quando vengono avviate le istanze VM collegate, formattata come espressione cron. Se hai bisogno che le istanze VM vengano avviate a un'ora specifica, pianifica l'operazione 15 minuti prima del necessario. Per saperne di più, consulta il programma di avvio dell'operazione.
- STOP-OPERATION_SCHEDULE: una pianificazione che descrive quando vengono arrestate le istanze VM collegate, formattata come un'espressione cron. Se hai bisogno che le istanze VM si arrestino a un'ora specifica, pianifica l'operazione 15 minuti prima del necessario. Per ulteriori informazioni, consulta il programma di interruzione delle operazioni.
- TIME_ZONE: il fuso orario IANA basato sulla località per la pianificazione di questa istanza. Per ulteriori informazioni, consulta la sezione Fuso orario.
- INITIATION_DATE: facoltativo: la prima data in cui la pianificazione dell'istanza è effettiva, formattata come timestamp RFC 3339. Se omessa, la pianificazione ha effetto immediato. Per ulteriori informazioni, consulta la sezione Data di inizio.
- END_DATE: facoltativo: l'ultima data in cui la pianificazione dell'istanza è effettiva, formattata come timestamp RFC 3339. Se omessa, la pianificazione è valida a tempo indeterminato. Per saperne di più, consulta la sezione Data di fine.
- start-operation schedule, stop-operation schedule
Pianificazioni che descrivono quando la pianificazione dell'istanza avvia e arresta le istanze VM collegate. Una pianificazione delle istanze può avere una di queste pianificazioni o entrambe.
Quando crei pianificazioni delle istanze utilizzando la console Google Cloud , puoi selezionare un'ora di inizio, un'ora di arresto e una frequenza oppure formattare ogni pianificazione come espressione cron. Quando crei pianificazioni delle istanze utilizzando gcloud CLI o l'API Compute Engine, devi formattare ogni pianificazione come un'espressione cron.
La tabella seguente definisce i campi di un'espressione cron e i valori supportati per ciascun campo.
Minuto Ora Giorno del mese Mese Giorno della settimana 0-59 0-23 1-31 dove 29-31 sono effettivi solo per i mesi pertinenti
1-12 0-6 o SUN-SAT
(domenica-sabato)
dove 0=
SUN
, 1=MON
, … 6=SAT
Carattere speciale Significato Esempio *
tutte Se i campi Giorno del mese, Mese e Giorno della settimana sono tutti impostati su *
, la pianificazione si ripete ogni giorno.-
intervallo Se il campo del giorno della settimana è impostato su MON-FRI
(o1-5
), la pianificazione si ripete ogni settimana dal lunedì al venerdì.,
list Se il campo mese è impostato su 1-6,8-12
, la pianificazione si ripete ogni mese, tranne luglio.Quando scrivi un'espressione cron, tieni presente quanto segue:
- Lo spazio bianco viene utilizzato per separare i campi di un'espressione cron. Ricorda di non aggiungere spazi bianchi aggiuntivi in un campo che utilizza caratteri speciali.
- Quando specifichi sia un giorno della settimana sia un giorno del mese
(quando nessuno dei due campi è impostato su
*
), la pianificazione utilizza l'unione di questi valori, non l'intersezione. Ad esempio, la pianificazione0 8 1 * MON
inizia alle 8:00 di ogni lunedì e il primo giorno di ogni mese. Questa programmazione non inizia alle 8:00 solo il lunedì che è anche il primo giorno del mese.
- fuso orario
Il fuso orario IANA basato sulla località per la pianificazione dell'inizio e dell'interruzione dell'operazione. Il database dei fusi orari IANA definisce un elenco di valori disponibili. Questo fuso orario viene utilizzato come riferimento solo per gli orari di inizio e interruzione dell'operazione, non per la data di inizio e la data di fine. Il fuso orario è facoltativo quando utilizzi gcloud CLI o l'API Compute Engine. Se omesso, viene utilizzato il valore predefinito
UTC
.Alcuni fusi orari IANA osservano l'ora legale, che può influire sulle pianificazioni delle istanze. I dettagli dell'ora legale, ad esempio quando inizia e termina, nonché la quantità di tempo saltato e ripetuto, variano a seconda del fuso orario.
- data di avvio, data di fine
Il periodo di tempo in cui è effettiva la pianificazione dell'istanza. Entrambi i valori sono facoltativi. Le operazioni si ripetono ogni anno, a meno che non specifichi questi valori per limitare la pianificazione a un solo anno.
Quando crei pianificazioni delle istanze utilizzando la console Google Cloud , seleziona una data, un'ora e un fuso orario utilizzando i campi Data di inizio e Data di fine.
Quando crei pianificazioni delle istanze utilizzando gcloud CLI o l'API Compute Engine, questi valori vengono formattati come un timestamp RFC 3339:
YYYY-MM-DDTHH:MM:SSOFFSET
Sostituisci quanto segue:
- YYYY-MM-DD: una data formattata come anno a 4 cifre, mese a 2 cifre e giorno del mese a 2 cifre separati da trattini.
- HH:MM:SS: un'ora formattata come ora a due cifre con il formato 24 ore, minuto a due cifre e secondo a due cifre separati da due punti.
- OFFSET: il fuso orario formattato come offset del Tempo Coordinato
Universale (UTC). Ad esempio, il fuso orario PST (Pacific Standard Time), che è
8 ore in anticipo rispetto al fuso orario UTC, viene scritto come
-08:00
. In alternativa, per non utilizzare alcun offset (il fuso orario UTC), scriviZ
.
Nella console Google Cloud , vai alla pagina Istanze VM.
Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.
- REGION: (facoltativo) la regione in cui si trovano le pianificazioni delle istanze che vuoi elencare.
- PROJECT: il tuo ID progetto.
- REGION: la regione in cui si trovano le pianificazioni delle istanze che vuoi elencare.
Nella console Google Cloud , vai alla pagina Istanze VM.
Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.
Fai clic sul nome della pianificazione delle istanze che vuoi descrivere. Viene visualizzata la pagina Dettagli pianificazioni istanze per la pianificazione in questione.
- SCHEDULE_NAME: il nome della pianificazione delle istanze che vuoi descrivere.
- REGION: la regione in cui si trova la pianificazione dell'istanza.
- PROJECT: il tuo ID progetto.
- REGION: la regione in cui si trova la pianificazione dell'istanza.
- SCHEDULE_NAME: il nome della pianificazione delle istanze che vuoi descrivere.
Nella console Google Cloud , vai alla pagina Istanze VM.
Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.
Seleziona le caselle di controllo per le pianificazioni delle istanze da eliminare.
Fai clic su
Elimina nella parte superiore della pagina. Si apre una nuova finestra di dialogo per confermare questa azione.Nella finestra di dialogo, fai clic su Elimina.
- Se questa pianificazione istanza è collegata a istanze VM, rimuovile.
- Per verificare a quali istanze VM è collegata questa pianificazione, descrivi la pianificazione delle istanze.
- Per ogni istanza VM a cui è collegata questa pianificazione, rimuovi la pianificazione istanza.
Per eliminare una pianificazione delle istanze utilizzando gcloud CLI, utilizza il comando
gcloud compute resource-policies delete
:gcloud compute resource-policies delete SCHEDULE_NAME \ --region=REGION
Sostituisci quanto segue:
- SCHEDULE_NAME: il nome della pianificazione delle istanze che vuoi eliminare.
- REGION: la regione in cui si trova la pianificazione dell'istanza.
- Se questa pianificazione istanza è collegata a istanze VM, rimuovile.
- Per verificare a quali istanze VM è collegata questa pianificazione, descrivi la pianificazione delle istanze.
- Per ogni istanza VM a cui è collegata questa pianificazione, rimuovi la pianificazione istanza.
Per eliminare una pianificazione delle istanze utilizzando l'API Compute Engine, invia una richiesta utilizzando il metodo
resourcePolicies.delete
:DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME
Sostituisci quanto segue:
- PROJECT: il tuo ID progetto.
- REGION: la regione in cui si trova la pianificazione dell'istanza.
- SCHEDULE_NAME: il nome della pianificazione delle istanze che vuoi eliminare.
- VM_NAME: il nome dell'istanza VM a cui vuoi collegare una pianificazione delle istanze.
- SCHEDULE_NAME: il nome della pianificazione dell'istanza che vuoi collegare.
- ZONE: la zona in cui si trova l'istanza VM.
- (Facoltativo) Crea un'istanza VM da un'immagine pubblica:
- IMAGE o IMAGE_FAMILY: specifica una delle seguenti opzioni:
- IMAGE: la versione richiesta di
un'immagine pubblica. Ad esempio,
--image debian-10-buster-v20200309
. - IMAGE_FAMILY: una
famiglia di immagini. In questo modo, la VM viene creata dall'immagine sistema operativo più recente e 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: il progetto contenente l'immagine.
- PROJECT_ID: l'ID del progetto in cui creare la VM.
- ZONE: la zona in cui creare la VM.
- MACHINE_TYPE_ZONE: la zona contenente il tipo di macchina da utilizzare per la nuova VM.
- MACHINE_TYPE: il tipo di macchina, predefinita o personalizzata, per la nuova VM.
- VM_NAME: il nome della nuova VM.
- (Facoltativo) Crea un'istanza VM da un'immagine pubblica:
- IMAGE_PROJECT: il progetto
contenente l'immagine. Ad esempio, se specifichi
family/debian-10
come famiglia di immagini, specificadebian-cloud
come progetto immagine. - IMAGE o IMAGE_FAMILY: specifica una delle seguenti opzioni:
- IMAGE: la versione richiesta di
un'immagine pubblica. Ad esempio,
"sourceImage": "projects/debian-cloud/global/images/debian-10-buster-v20200309"
- IMAGE_FAMILY: una
famiglia di immagini. In questo modo, la VM viene creata dall'immagine sistema operativo più recente e 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 sistema operativo nella famiglia di immagini Debian 10.
- IMAGE_PROJECT: il progetto
contenente l'immagine. Ad esempio, se specifichi
- REGION: la regione in cui si trova la pianificazione dell'istanza.
- SCHEDULE_NAME: il nome della pianificazione dell'istanza che vuoi collegare.
Nella console Google Cloud , vai alla pagina Istanze VM.
Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.
Fai clic sul nome della pianificazione dell'istanza che vuoi collegare. Viene visualizzata la pagina Dettagli pianificazione istanza.
Fai clic su Aggiungi istanze alla pianificazione. Si apre il riquadro Aggiungi istanze alla pianificazione.
Seleziona la casella di controllo per ogni istanza VM a cui vuoi collegare questa pianificazione.
Fai clic su Aggiungi.
- VM_NAME: il nome dell'istanza VM a cui vuoi collegare una pianificazione delle istanze.
- SCHEDULE_NAME: il nome della pianificazione dell'istanza che vuoi collegare.
- ZONE: la zona in cui si trova l'istanza VM.
- PROJECT: il tuo ID progetto.
- ZONE: la zona in cui si trova l'istanza VM.
- VM_NAME: il nome dell'istanza VM a cui vuoi collegare una pianificazione delle istanze.
- REGION: la regione in cui si trova la pianificazione dell'istanza.
- SCHEDULE_NAME: il nome della pianificazione dell'istanza che vuoi collegare.
Nella console Google Cloud , vai alla pagina Istanze VM.
Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.
Fai clic sul nome della pianificazione dell'istanza che vuoi rimuovere. Viene visualizzata la pagina Dettagli pianificazione istanza.
Nella sezione Istanze collegate, seleziona la casella di controllo per ogni istanza VM da rimuovere da questa pianificazione.
Fai clic su
Rimuovi istanze dalla pianificazione. Si apre una nuova finestra di dialogo per confermare questa azione.Nella finestra di dialogo, fai clic su Rimuovi.
- VM_NAME: il nome dell'istanza VM da cui vuoi rimuovere una pianificazione delle istanze.
- SCHEDULE_NAME: il nome della pianificazione delle istanze che vuoi rimuovere.
- ZONE: la zona in cui si trova l'istanza VM.
- PROJECT: il tuo ID progetto.
- ZONE: la zona in cui si trova l'istanza VM.
- VM_NAME: il nome dell'istanza VM da cui vuoi rimuovere una pianificazione delle istanze.
- REGION: la regione in cui si trova la pianificazione dell'istanza.
- SCHEDULE_NAME: il nome della pianificazione delle istanze che vuoi rimuovere.
- Scopri altre funzionalità di Compute Engine per la pianificazione delle VM:
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Per saperne di più, consulta la sezione Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .
Ruoli obbligatori
Per utilizzare le pianificazioni delle istanze, devi concedere i ruoli IAM (Identity and Access Management) richiesti ai seguenti principal:
Ruoli richiesti per Compute Engine Service Agent
Per assicurarti che l'agente di servizio Compute Engine disponga delle autorizzazioni necessarie per eseguire la pianificazione delle istanze, chiedi all'amministratore di concedere all'agente di servizio Compute Engine il ruolo IAM Compute Instance Admin (v1) (
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.roles/compute.instanceAdmin.v1
) nel progetto.Questo ruolo predefinito contiene le autorizzazioni necessarie per eseguire la pianificazione delle istanze. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per eseguire la pianificazione delle istanze sono necessarie le seguenti autorizzazioni:
L'amministratore potrebbe anche essere in grado di concedere queste autorizzazioni all'agente di servizio Compute Engine con ruoli personalizzati o altri ruoli predefiniti.
Ruoli richiesti per l'utente o il account di servizio
Per assicurarti che tu o il tuo account di servizio disponiate delle autorizzazioni necessarie per creare e gestire le pianificazioni delle istanze, chiedi all'amministratore di concedere a te o al tuo account di servizio il ruolo IAM Compute Instance Admin (v1) (
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.roles/compute.instanceAdmin.v1
) nel tuo progetto o nella tua organizzazione.Questo ruolo predefinito contiene le autorizzazioni necessarie per creare e gestire le pianificazioni delle istanze. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare e gestire le pianificazioni delle istanze sono necessarie le seguenti autorizzazioni:
L'amministratore potrebbe anche essere in grado di concedere a te o al tuo account di servizio queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Limitazioni
Gestione delle pianificazioni delle istanze
Crea, elenca, descrivi ed elimina pianificazioni delle istanze utilizzando la consoleGoogle Cloud , Google Cloud CLI o l'API Compute Engine.
Creazione di una pianificazione delle istanze
Crea una pianificazione delle istanze che descriva quando le istanze VM devono avviarsi o arrestarsi automaticamente. La pianificazione delle istanze che crei è una policy di risorse, che puoi utilizzare collegandola o rimuovendola dalle istanze VM.
Console
gcloud
Per creare una pianificazione delle istanze utilizzando gcloud CLI, utilizza il comando
gcloud compute resource-policies create instance-schedule
:gcloud compute resource-policies create instance-schedule SCHEDULE_NAME \ --region=REGION \ [--vm-start-schedule='START-OPERATION_SCHEDULE'] \ [--vm-stop-schedule='STOP-OPERATION_SCHEDULE'] \ [--timezone=TIME_ZONE] \ [--initiation-date=INITIATION_DATE] \ [--end-date=END_DATE]
Sostituisci quanto segue:
REST
Per creare una pianificazione delle istanze utilizzando l'API Compute Engine, invia una richiesta utilizzando il metodo
resourcePolicies.insert
:POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies { "name": "SCHEDULE_NAME", "instanceSchedulePolicy": { "vmStartSchedule": { "schedule": "START-OPERATION_SCHEDULE" }, "vmStopSchedule": { "schedule": "STOP-OPERATION_SCHEDULE" }, "timeZone": "TIME_ZONE", "startTime":"INITIATION_DATE", "expirationTime":"END_DATE" } }
Sostituisci quanto segue:
Ogni pianificazione dell'istanza ha le seguenti impostazioni:
Elenco delle pianificazioni delle istanze
Elenca le pianificazioni delle istanze per visualizzare tutte le pianificazioni delle istanze esistenti per il tuo progetto.
Console
gcloud
Per visualizzare un elenco di tutte le tue policy delle risorse, inclusi i programmi delle istanze, utilizzando gcloud CLI, utilizza il comando
gcloud compute resource-policies list
. (Facoltativo) Per limitare i risultati a una regione specifica, includi il flag--filter
.gcloud compute resource-policies list \ [--filter="region:(REGION)"]
Sostituisci quanto segue:
REST
Per visualizzare un elenco di tutte le tue policy delle risorse, inclusi i programmi delle istanze, in una regione specifica utilizzando l'API Compute Engine, invia una richiesta utilizzando il metodo
resourcePolicies.list
:GET https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies
Sostituisci quanto segue:
Descrizione di una pianificazione istanza
Descrivi una pianificazione delle istanze per visualizzarne la descrizione, la tempistica, le operazioni e un elenco di tutte le istanze VM a cui è collegata.
Console
gcloud
Per descrivere una pianificazione delle istanze utilizzando gcloud CLI, utilizza il comando
gcloud compute resource-policies describe
:gcloud compute resource-policies describe SCHEDULE_NAME \ --region=REGION
Sostituisci quanto segue:
L'output è simile al seguente:
... description: Every Monday to Friday in 2022, start VMs at 8 AM and stop VMs at 5 PM. ... instanceSchedulePolicy: expirationTime: '2022-12-31T23:59:59Z' startTime: '2022-01-01T00:00:00Z' timeZone: UTC vmStartSchedule: schedule: 0 8 * * MON-FRI vmStopSchedule: schedule: 0 17 * * MON-FRI ... name: example-instance-schedule region: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-west1 resourceStatus: instanceSchedulePolicy: nextRunStartTime: '2022-01-03T08:00:00Z' ... status: READY
REST
Per descrivere una pianificazione delle istanze utilizzando l'API Compute Engine, invia una richiesta utilizzando il metodo
resourcePolicies.get
:GET https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME
Sostituisci quanto segue:
L'output è simile al seguente:
{ ... "description": "Every Monday to Friday in 2022, start VMs at 8 AM and stop VMs at 5 PM.", "name": "example-instance-schedule", "instanceSchedulePolicy": { "vmStartSchedule": { "schedule": "0 8 * * MON-FRI" }, "vmStopSchedule": { "schedule": "0 17 * * MON-FRI" }, "timeZone": "UTC", "startTime": "2022-01-01T00:00:00Z", "expirationTime": "2022-12-31T23:59:59Z" }, "status": "READY", "resourceStatus": { "instanceSchedulePolicy": { "nextRunStartTime": "2022-01-03T08:00:00Z" } }, ... }
Eliminazione di una pianificazione delle istanze
Elimina una pianificazione delle istanze quando non ti serve più rimuovendo le istanze VM collegate ed eliminando il criterio di risorsa.
Console
gcloud
REST
Utilizzo delle pianificazioni delle istanze con le istanze VM
Per utilizzare una pianificazione delle istanze, collegala a una o più istanze VM che vuoi che seguano quella pianificazione. Puoi collegare una pianificazione delle istanze a un'istanza VM esistente o durante la creazione di una nuova istanza VM. Per impedire a un'istanza VM di seguire una pianificazione delle istanze collegata, rimuovi la pianificazione dall'istanza VM.
Collegamento di una pianificazione delle istanze durante la creazione di una nuova istanza VM
Per collegare una pianificazione delle istanze a una nuova istanza VM, devi creare l'istanza VM nella stessa regione della pianificazione delle istanze che utilizzi. Scopri di più sulla creazione di un'istanza VM.
Console
Non puoi collegare una pianificazione delle istanze durante la creazione di un'istanza utilizzando la Google Cloud console. Per utilizzare la console Google Cloud per collegare una pianificazione delle istanze a una nuova istanza VM, crea un'istanza VM e poi collega una pianificazione all'istanza VM.
gcloud
Per collegare una pianificazione delle istanze a un'istanza VM utilizzando gcloud CLI, utilizza il comando
gcloud compute instances create
con il flag--resource-policies
. Ad esempio, per creare un'istanza VM da un'immagine pubblica con una pianificazione delle istanze collegata, utilizza il seguente comando:gcloud compute instances create VM_NAME \ --resource-policies=SCHEDULE_NAME \ --zone=ZONE \ [--image IMAGE | --image-family IMAGE_FAMILY] \ [--image-project IMAGE_PROJECT]
Sostituisci quanto segue:
REST
Per collegare una pianificazione delle istanze a un'istanza VM utilizzando l'API Compute Engine, invia una richiesta utilizzando il metodo
instances.insert
e includi l'attributoresourcePolicies
. Ad esempio, per creare un'istanza VM da un'immagine pubblica con una pianificazione delle istanze allegata, invia la seguente richiesta: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 } ], "resourcePolicies": [ "https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME" ] }
Sostituisci quanto segue:
Puoi verificare se la pianificazione delle istanze viene eseguita correttamente controllando i log di controllo per il criterio di risorse di pianificazione delle istanze e l'istanza VM collegata. Potresti dover attendere fino a 15 minuti dopo l'ora pianificata per ogni operazione.
Collegamento di una pianificazione delle istanze a un'istanza VM esistente
Puoi collegare una pianificazione delle istanze a qualsiasi istanza VM esistente che si trova nella stessa regione della pianificazione delle istanze.
Console
gcloud
Per collegare una pianificazione delle istanze a un'istanza VM utilizzando gcloud CLI, utilizza il comando
gcloud compute instances add-resource-policies
:gcloud compute instances add-resource-policies VM_NAME \ --resource-policies=SCHEDULE_NAME \ --zone=ZONE
Sostituisci quanto segue:
REST
Per collegare una pianificazione delle istanze a un'istanza VM utilizzando l'API Compute Engine, invia una richiesta utilizzando il metodo
instances.addResourcePolicies
:POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances/VM_NAME/addResourcePolicies { "resourcePolicies": "projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME" }
Sostituisci quanto segue:
Puoi verificare se la pianificazione delle istanze viene eseguita correttamente controllando i log di controllo per il criterio di risorse di pianificazione delle istanze e l'istanza VM collegata. Potresti dover attendere fino a 15 minuti dopo l'ora pianificata per ogni operazione.
Rimozione di una pianificazione delle istanze da un'istanza VM
Per impedire a un'istanza VM di seguire una pianificazione delle istanze, rimuovi la pianificazione dall'istanza VM.
Console
gcloud
Per rimuovere una pianificazione delle istanze da un'istanza VM utilizzando gcloud CLI, utilizza il comando
gcloud compute instances remove-resource-policies
:gcloud compute instances remove-resource-policies VM_NAME \ --resource-policies=SCHEDULE_NAME \ --zone=ZONE
Sostituisci quanto segue:
REST
Per rimuovere una pianificazione delle istanze da un'istanza VM utilizzando l'API Compute Engine, invia una richiesta utilizzando il metodo
instances.removeResourcePolicies
:POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances/VM_NAME/removeResourcePolicies { "resourcePolicies": "projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME" }
Sostituisci quanto segue:
Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-09 UTC.
-