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 della risorsa che descriva il comportamento di avvio e arresto, quindi associalo 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 carichi di lavoro 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 la 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 carico di lavoro 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 interrotta o eliminata automaticamente quando raggiunge un determinato tempo o una determinata durata.
Prima di iniziare
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- 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 di servizio che crea, gestisce o utilizza la programmazione delle istanze.
-
compute.instances.start
-
compute.instances.stop
-
Crea una pianificazione delle istanze:
compute.resourcePolicies.create
-
Elenca una pianificazione dell'istanza:
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 dell'istanza 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 una sola pianificazione, ma puoi associare ogni pianificazione a un massimo di 1000 istanze VM.
- Le pianificazioni delle istanze non forniscono garanzie di capacità, pertanto se le risorse richieste per un'istanza VM pianificata non sono disponibili all'ora pianificata, l'istanza VM potrebbe non avviarsi come pianificato. Sebbene sia possibile prenotare le 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 agli orari specificati, ma puoi avviare e arrestare manualmente le istanze VM in qualsiasi momento. Ad esempio, supponiamo che tu abbia una programmazione che inizia ogni giorno alle 8:00 e termina ogni giorno alle 17:00. Se alle 16:00 colleghi la pianificazione a un'istanza VM arrestata, l'istanza VM non verrà avviata prima delle 08:00 del giorno successivo, a meno che non la avvii manualmente prima di questa data.
- Le istanze VM pianificate potrebbero richiedere fino a 15 minuti oltre l'ora pianificata per iniziare un'operazione di avvio o arresto. Se devi avviare o arrestare le istanze VM a un'ora specifica, pianifica l'operazione 15 minuti prima del necessario e pianifica ogni operazione con almeno 15 minuti di intervallo.
- Il programmatore potrebbe non riuscire se esiste un intervallo di meno di 15 minuti tra le operazioni di inizio e di interruzione. Questo perché l'operazione di arresto potrebbe verificarsi prima dell'operazione di avvio, impedendo l'avvio dell'operazione.
- Ogni pianificazione dell'istanza consente fino a un'operazione di avvio e un'operazione di arresto all'ora.
- Per modificare la pianificazione di un'istanza, utilizza un'operazione di patch sul criterio di pianificazione delle istanze.
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. Viene visualizzato il riquadro Crea una pianificazione.Inserisci un nome.
Nel menu a discesa Regione, seleziona la località per la pianificazione dell'istanza.
Definisci quando la pianificazione dell'istanza avvia e arresta le eventuali istanze VM collegate. Se devi avviare o arrestare le istanze VM in un momento specifico, programma l'operazione 15 minuti prima del necessario. Assicurati che tra ogni operazione di inizio e di arresto trascorrano almeno 15 minuti.
Utilizza i campi predefiniti Ora di inizio, Ora di arresto 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 avvio 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 di ripetizione di 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 inizio e Ora fine.
(Facoltativo) Nel campo Data di inizio, digita o fai clic su
per selezionare la data e l'ora di inizio della pianificazione di questa istanza. Se omesso, la pianificazione è valida immediatamente.(Facoltativo) Nel campo Data di fine, digita o fai clic su
per selezionare la data e l'ora di fine della programmazione di questa istanza. Se omessa, la pianificazione è valida a tempo indeterminato.Fai clic su Invia.
- SCHEDULE_NAME: il nome della nuova programmazione 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 di cron. Se devi avviare le istanze VM in un momento specifico, programma l'operazione 15 minuti prima del necessario. Per ulteriori informazioni, consulta la pianificazione dell'avvio dell'operazione.
- STOP-OPERATION_SCHEDULE: una pianificazione che descrive quando vengono arrestate le istanze VM collegate, formattata come espressione CRON. Se devi arrestare le istanze VM in un momento specifico, pianifica l'operazione 15 minuti prima del necessario. Per ulteriori informazioni, consulta la programmazione delle interruzioni dell'operazione.
- TIME_ZONE: facoltativo, il fuso orario IANA basato sulla posizione per la pianificazione di questa istanza. Se omesso, viene utilizzato il valore predefinito
UTC
. Per ulteriori informazioni, consulta fuso orario. - INITIATION_DATE (facoltativo): la prima data di applicazione della programmazione dell'istanza, formattata come timestamp RFC 3339. Se omesso, la pianificazione viene applicata immediatamente. Per ulteriori informazioni, consulta la data di inizio.
- END_DATE (facoltativo): l'ultima data di validità della programmazione dell'istanza, formattata come timestamp RFC 3339. Se omessa, la pianificazione è valida a tempo indeterminato. Per ulteriori informazioni, consulta 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 programmazione dell'istanza.
- START-OPERATION_SCHEDULE o
STOP-OPERATION_SCHEDULE: specifica almeno uno
tra quanto segue:
- START-OPERATION_SCHEDULE: una pianificazione che descrive quando vengono avviate le istanze VM collegate, formattata come espressione di cron. Se devi avviare le istanze VM in un momento specifico, programma l'operazione 15 minuti prima del necessario. Per ulteriori informazioni, consulta la pianificazione dell'avvio dell'operazione.
- STOP-OPERATION_SCHEDULE: una pianificazione che descrive quando vengono arrestate le istanze VM collegate, formattata come espressione CRON. Se devi arrestare le istanze VM in un momento specifico, pianifica l'operazione 15 minuti prima del necessario. Per ulteriori informazioni, consulta la pianificazione dell'interruzione dell'operazione.
- TIME_ZONE: il fuso orario IANA basato sulla località per la pianificazione di questa istanza. Per ulteriori informazioni, consulta fuso orario.
- INITIATION_DATE (facoltativo): la prima data di applicazione della programmazione dell'istanza, formattata come timestamp RFC 3339. Se omesso, la pianificazione viene applicata immediatamente. Per ulteriori informazioni, consulta la data di inizio.
- END_DATE (facoltativo): l'ultima data di validità della programmazione dell'istanza, formattata come timestamp RFC 3339. Se omessa, la pianificazione è valida a tempo indeterminato. Per ulteriori informazioni, consulta data di fine.
- programmazione inizio funzionamento, programmazione arresto funzionamento
Pianificazioni che descrivono quando inizia e termina la pianificazione delle istanze eventuali istanze VM collegate. Una pianificazione dell'istanza 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 l'interfaccia a riga di comando gcloud o l'API Compute Engine, devi formattare ogni pianificazione come espressione di 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 efficaci 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 giorno-della-settimana è impostato su MON-FRI
(o1-5
), la pianificazione si ripete ogni settimana da lunedì a venerdì.,
list Se il campo del mese è impostato su 1-6,8-12
, la programmazione si ripete ogni mese tranne a luglio.Quando scrivi un'espressione cron, tieni presente quanto segue:
- Gli spazi vengono utilizzati 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 campi è impostato su
*
), la pianificazione utilizza la combinazione di questi valori, non l'intersezione. Ad esempio, la pianificazione0 8 1 * MON
inizia alle 8:00 ogni lunedì e il primo giorno di ogni mese. Questo programma non inizia alle 8:00 solo i lunedì che sono 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 le pianificazioni di inizio e interruzione del servizio. Non viene utilizzato 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 (DST), che può influire sulle pianificazioni delle istanze. I dettagli dell'ora legale, ad esempio quando inizia e termina, nonché la quantità di tempo saltata e ripetuta, variano in base a ciascun fuso orario.
- data di inizio, data di fine
Il periodo di tempo in cui la pianificazione delle istanze è valida. 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 le pianificazioni delle istanze utilizzando la console Google Cloud, seleziona una data, un'ora e un fuso orario utilizzando i campi Data inizio e Data fine.
Quando crei le pianificazioni delle istanze utilizzando l'interfaccia a riga di comando gcloud 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 orario nel formato ora a 2 cifre con il formato 24 ore, minuto a 2 cifre e secondo a 2 cifre separati da due punti.
- OFFSET: il fuso orario formattato come offset del Tempo Universale Coordinato (UTC). Ad esempio, il fuso orario standard della costa del Pacifico (PST), che è 8 ore in anticipo rispetto al fuso orario UTC, è scritto come
-08:00
. In alternativa, per non utilizzare alcun offset (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 da elencare.
- PROJECT: il tuo ID progetto.
- REGION: la regione in cui si trovano le pianificazioni delle istanze da 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 dell'istanza che vuoi descrivere. Viene visualizzata la pagina Dettagli pianificazioni istanze per la pianificazione in questione.
- SCHEDULE_NAME: il nome della programmazione delle istanze da descrivere.
- REGION: la regione in cui si trova la pianificazione delle istanze.
- PROJECT: il tuo ID progetto.
- REGION: la regione in cui si trova la programmazione dell'istanza.
- SCHEDULE_NAME: il nome della programmazione delle istanze da 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 è associata a istanze VM, rimuovile.
- Per controllare a quali istanze VM è associata questa pianificazione, descrivi la pianificazione dell'istanza.
- Per ogni istanza VM a cui è associata questa pianificazione, rimuovi la pianificazione dell'istanza.
Per eliminare una pianificazione dell'istanza 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 programmazione delle istanze che vuoi eliminare.
- REGION: la regione in cui si trova la pianificazione dell'istanza.
- Se questa pianificazione istanza è associata a istanze VM, rimuovile.
- Per controllare a quali istanze VM è associata questa pianificazione, descrivi la pianificazione dell'istanza.
- Per ogni istanza VM a cui è associata questa pianificazione, rimuovi la pianificazione dell'istanza.
Per eliminare una pianificazione dell'istanza 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 delle istanze.
- SCHEDULE_NAME: il nome della programmazione dell'istanza che vuoi eliminare.
- VM_NAME: il nome dell'istanza VM a cui vuoi associare una pianificazione dell'istanza.
- SCHEDULE_NAME: il nome della programmazione delle istanze da 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 viene creata la VM dall'immagine del sistema operativo più recente e non ritirata. Ad esempio, se specifichi
--image-family debian-10
, Compute Engine crea una VM dalla versione più recente dell'immagine del 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, predefinito o personalizzato, 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 di immagini. - 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 viene creata la VM dall'immagine del sistema operativo più recente e non ritirata. Ad esempio, se specifichi
"sourceImage": "projects/debian-cloud/global/images/family/debian-10"
, Compute Engine crea una VM dalla versione più recente dell'immagine del 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 programmazione dell'istanza.
- SCHEDULE_NAME: il nome della programmazione delle istanze da 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 da collegare. Viene visualizzata la pagina Dettagli pianificazione istanza.
Fai clic su Aggiungi istanze alla pianificazione. Viene visualizzato il riquadro Aggiungi istanze alla pianificazione.
Seleziona la casella di controllo in corrispondenza di ogni istanza VM a cui vuoi collegare questa programmazione.
Fai clic su Aggiungi.
- VM_NAME: il nome dell'istanza VM a cui vuoi associare una pianificazione dell'istanza.
- SCHEDULE_NAME: il nome della programmazione delle istanze da collegare.
- ZONE: la zona in cui si trova l'istanza VM.
- PROJECT: il tuo ID progetto.
- ZONE: la zona in cui si trova la tua istanza VM.
- VM_NAME: il nome dell'istanza VM a cui vuoi associare una pianificazione dell'istanza.
- REGION: la regione in cui si trova la programmazione dell'istanza.
- SCHEDULE_NAME: il nome della programmazione delle istanze da 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 dell'istanza.
- SCHEDULE_NAME: il nome della programmazione 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 dell'istanza.
- REGION: la regione in cui si trova la programmazione dell'istanza.
- SCHEDULE_NAME: il nome della programmazione delle istanze che vuoi rimuovere.
- Scopri altre funzionalità di Compute Engine per la pianificazione delle VM:
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per saperne di più, consulta Eseguire l'autenticazione 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 principali:
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 Amministratore istanze Compute (v1) (
roles/compute.instanceAdmin.v1
) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Questo ruolo predefinito contiene le autorizzazioni necessarie per eseguire la pianificazione delle istanze. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per eseguire la pianificazione delle istanze sono necessarie le seguenti autorizzazioni:
L'amministratore potrebbe anche essere in grado di concedere all'agente di servizio Compute Engine queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Ruoli richiesti per l'account utente o 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 Amministratore istanze Compute (v1) (
roles/compute.instanceAdmin.v1
) per il tuo progetto o la tua organizzazione. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Questo ruolo predefinito contiene le autorizzazioni necessarie per creare e gestire le pianificazioni delle istanze. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per creare e gestire le pianificazioni delle istanze sono necessarie le seguenti autorizzazioni:
L'amministratore potrebbe anche assegnare 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 le pianificazioni delle istanze utilizzando la console Google Cloud, Google Cloud CLI o l'API Compute Engine.
Creazione di una pianificazione delle istanze
Crea una pianificazione delle istanze che descriva quando devono essere avviate o arrestate automaticamente. La pianificazione delle istanze che crei è un criterio di risorsa che puoi utilizzare collegandolo o rimuovendolo 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, effettua 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 tutti i criteri delle risorse, incluse le pianificazioni delle istanze, utilizzando gcloud CLI, utilizza il comando
gcloud compute resource-policies list
. Se vuoi, 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 tutti i tuoi criteri delle risorse, incluse le pianificazioni delle istanze, in una regione specifica utilizzando l'API Compute Engine, effettua 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 delle istanze
Descrivi una pianificazione dell'istanza 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 della 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 la seguano. 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 dell'istanza collegata, rimuovi la pianificazione dall'istanza VM.
Collegamento di una pianificazione dell'istanza 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 utilizzata. 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 console Google Cloud. Per utilizzare la console Google Cloud per collegare una pianificazione dell'istanza a una nuova istanza VM, crea un'istanza VM, quindi collega una pianificazione all'istanza VM.
gcloud
Per collegare una pianificazione delle istanze a un'istanza VM utilizzando l'interfaccia alla 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 dell'istanza 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 dell'istanza a un'istanza VM utilizzando l'API Compute Engine, effettua 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 dell'istanza allegata, effettua 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 della risorsa della pianificazione delle istanze e per l'istanza VM collegata. Potresti dover attendere fino a 15 minuti dopo l'ora programmata per ogni operazione.
Attacco di una pianificazione dell'istanza 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 dell'istanza a un'istanza VM utilizzando l'interfaccia alla 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 dell'istanza a un'istanza VM utilizzando l'API Compute Engine, effettua 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 della risorsa della pianificazione delle istanze e per l'istanza VM collegata. Potresti dover attendere fino a 15 minuti dopo l'ora programmata per ogni operazione.
Rimozione di una pianificazione delle istanze da un'istanza VM
Per impedire a un'istanza VM di seguire una pianificazione dell'istanza, rimuovi la pianificazione dell'istanza dall'istanza VM.
Console
gcloud
Per rimuovere una pianificazione dell'istanza da un'istanza VM utilizzando la 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 dell'istanza 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 2024-11-23 UTC.
-