Pianificazione dell'avvio e dell'arresto di un'istanza VM

Le pianificazioni delle istanze consentono di avviare e arrestare le istanze di macchine virtuali (VM) automaticamente. Per utilizzare le pianificazioni delle istanze, crea un criterio delle risorse che specifichi in dettaglio il comportamento di avvio e arresto, quindi collega il criterio a una o più istanze VM.

L'uso 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 usare le pianificazioni delle istanze per carichi di lavoro ricorrenti e una tantum. Ad esempio, puoi usare 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 a pianificazioni: se esegui il carico di lavoro su un gruppo di istanze gestite, 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 periodo di tempo o una durata specifici.

Prima di iniziare

  • Se non l'hai già fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale viene verificata l'identità dell'utente per ottenere l'accesso ai servizi e alle API Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione in Compute Engine come segue.

    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

    1. Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init
    2. Set a default region and zone.
    3. 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.

        Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

        gcloud init

      Per maggiori informazioni, consulta 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 Identity and Access Management (IAM) richiesti alle entità seguenti:

  • L'agente di servizio Compute Engine per il progetto. Questa operazione è necessaria per l'esecuzione della pianificazione dell'istanza su una VM.

    Se revochi queste autorizzazioni dopo aver creato le pianificazioni delle istanze, queste potrebbero smettere di funzionare senza preavviso. Per verificare se le pianificazioni delle istanze vengono eseguite correttamente, devi controllare regolarmente gli audit log.

  • L'account utente o di servizio che crea, gestisce o utilizza la pianificazione delle istanze.

Ruoli richiesti per l'agente di servizio Compute Engine

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) sul progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni necessarie per eseguire la pianificazione delle istanze. Per visualizzare esattamente le autorizzazioni necessarie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per eseguire la pianificazione dell'istanza sono necessarie le seguenti autorizzazioni:

  • compute.instances.start
  • compute.instances.stop

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 di utente o di servizio

Per assicurarti che tu o il tuo account di servizio disponga 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 progetto o l'organizzazione. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni necessarie per creare e gestire le pianificazioni delle istanze. Per visualizzare esattamente le autorizzazioni necessarie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per creare e gestire le pianificazioni delle istanze sono necessarie le seguenti autorizzazioni:

  • Crea una pianificazione dell'istanza: compute.resourcePolicies.create
  • Elenca una pianificazione dell'istanza: compute.resourcePolicies.list
  • Descrivi una pianificazione di un'istanza: compute.resourcePolicies.get
  • Elimina una pianificazione dell'istanza: compute.resourcePolicies.delete
  • Collega una pianificazione di istanza a una nuova VM:
    • compute.instances.create
    • compute.resourcePolicies.use
    • compute.instances.addResourcePolicies
  • Collega una pianificazione di istanza a una VM esistente:
    • compute.resourcePolicies.use
    • compute.instances.addResourcePolicies
  • Rimuovi una pianificazione dell'istanza da una VM:
    • compute.resourcePolicies.use
    • compute.instances.removeResourcePolicies

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

  • 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 dell'istanza, ma puoi collegare ogni pianificazione dell'istanza a un massimo di 1000 istanze VM.
  • Le pianificazioni delle istanze non forniscono garanzie di capacità, quindi se le risorse richieste per un'istanza VM pianificata non sono disponibili all'ora pianificata, l'istanza VM potrebbe non avviarsi quando è stata pianificata. Anche se puoi prenotare le istanze VM prima di avviarle per fornire garanzie di capacità, 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 un orario che inizia ogni giorno alle 8:00 e termina ogni giorno alle 17:00. Se colleghi la 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 non avvii manualmente l'istanza VM prima di allora.
  • Le istanze VM pianificate possono richiedere fino a 15 minuti dopo l'orario pianificato 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 ad almeno 15 minuti di distanza.
  • Se esiste un intervallo di meno di 15 minuti tra le operazioni di avvio e arresto, lo scheduler potrebbe non riuscire. Questo perché l'operazione di arresto potrebbe verificarsi prima dell'operazione di avvio, impedendo così l'esecuzione dell'operazione.
  • Ogni pianificazione di istanza consente di avere fino a un'operazione di avvio e fino a un'operazione di arresto all'ora.
  • Non puoi modificare le pianificazioni delle istanze. Per modificare la pianificazione di un'istanza esistente per una o più istanze VM, rimuovi ed elimina la pianificazione delle istanze esistente, quindi crea e collega una nuova pianificazione delle istanze.

Gestione delle pianificazioni delle istanze

Creare, elencare, descrivere ed eliminare le pianificazioni delle istanze utilizzando la console Google Cloud, Google Cloud CLI o l'API Compute Engine.

Creazione di una pianificazione di istanza

Crea una pianificazione delle istanze che descriva quando le istanze VM devono essere avviate o arrestate automaticamente. La pianificazione delle istanze che crei è un criterio delle risorse, che puoi utilizzare collegandolo o rimuovendolo dalle istanze VM.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina.

  3. Fai clic su Crea pianificazione. Si apre il riquadro Crea una pianificazione.

  4. Inserisci un Nome.

  5. (Facoltativo) Inserisci una descrizione.

  6. Nel menu a discesa Regione, seleziona la località per questa pianificazione dell'istanza.

  7. Definisci quando la pianificazione dell'istanza avvia e arresta tutte le istanze VM collegate. Se hai bisogno che le istanze VM vengano avviate o arrestate a un orario specifico, pianifica l'operazione 15 minuti prima del necessario. Assicurati che ogni operazione di avvio e arresto avvenga ad almeno 15 minuti di distanza.

    Utilizza i campi predefiniti Ora di inizio, Ora di fine e Frequenza oppure, se vuoi configurare una pianificazione più complessa, utilizza espressioni cron.

    • Campi predefiniti:

      1. Inserisci un'Ora di inizio, un'Ora di fine o entrambe le opzioni.
        • 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 arresto delle istanze VM.
      2. Nel menu a discesa Frequenza nella parte inferiore del riquadro, seleziona la frequenza di ripetizione dell'Ora di inizio e dell'Ora di interruzione.
    • Espressioni cron:

      1. Per abilitare le espressioni cron, fai clic sull'opzione di attivazione/disattivazione Utilizza espressione CRON nella parte superiore del riquadro.
      2. Inserisci un'espressione CRON per l'avvio, un'espressione per l'interruzione dell'espressione CRON o entrambe.
        • Nel campo Avvia espressione CRON, inserisci un'espressione cron che descriva quando avviare le istanze VM.
        • Nel campo Arresta espressione CRON, inserisci un'espressione cron che descriva quando arrestare le istanze VM.
  8. Nel menu a discesa Fuso orario, seleziona il fuso orario per Ora di inizio e Ora di fine.

  9. (Facoltativo) Nel campo Data di avvio, digita o fai clic su per selezionare la data e l'ora in cui vuoi che inizi la pianificazione dell'istanza. Se omessa, la pianificazione diventa immediata efficace.

  10. (Facoltativo) Nel campo Data di fine, digita o fai clic su per selezionare la data e l'ora di fine della pianificazione dell'istanza. Se omessa, la pianificazione ha effetto a tempo indeterminato.

  11. Fai clic su Invia.

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 \
    [--description='SCHEDULE_DESCRIPTION'] \
    [--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:

  • SCHEDULE_NAME: il nome della nuova pianificazione dell'istanza.
  • SCHEDULE_DESCRIPTION: (facoltativo) una descrizione della nuova pianificazione dell'istanza.
  • REGION: (facoltativo) la regione in cui si trovano le istanze VM che vuoi collegare alla pianificazione delle istanze.
  • Specifica almeno uno dei seguenti criteri:
    • START-OPERATION_SCHEDULE: una pianificazione che descrive quando vengono avviate le istanze VM collegate, formattata come un'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, consulta la programmazione delle operazioni di avvio.
    • STOP-OPERATION_SCHEDULE: una pianificazione che descrive quando le istanze VM collegate vengono arrestate, formattata come un'espressione cron. Se hai bisogno che le istanze VM vengano arrestate a un orario specifico, pianifica l'operazione 15 minuti prima del necessario. Per ulteriori informazioni, consulta la sezione relativa alla programmazione delle operazioni delle fermate.
  • TIME_ZONE: (Facoltativo) il fuso orario IANA basato sulla località per la pianificazione dell'istanza. Se omesso, viene utilizzato il valore predefinito UTC. Per ulteriori informazioni, consulta la sezione sul fuso orario.
  • INITIATION_DATE: (facoltativo) la prima data di validità della pianificazione dell'istanza, formattata come timestamp RFC 3339. Se omesso, la pianificazione entra in vigore immediatamente. Per ulteriori informazioni, consulta la data di avvio.
  • END_DATE: (facoltativo) l'ultima data di validità della pianificazione dell'istanza, formattata come timestamp RFC 3339. Se omesso, la pianificazione avrà effetto a tempo indeterminato. Per ulteriori informazioni, consulta la data di fine.

REST

Per creare una pianificazione di 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",
  "description": "SCHEDULE_DESCRIPTION",
  "instanceSchedulePolicy": {
    "vmStartSchedule": {
      "schedule": "START-OPERATION_SCHEDULE"
    },
    "vmStopSchedule": {
      "schedule": "STOP-OPERATION_SCHEDULE"
    },
    "timeZone": "TIME_ZONE",
    "startTime":"INITIATION_DATE",
    "expirationTime":"END_DATE"
  }
}

Sostituisci quanto segue:

  • PROJECT: il tuo ID progetto.
  • REGION: la regione in cui si trovano le istanze VM che vuoi collegare alla pianificazione delle istanze.
  • SCHEDULE_NAME: il nome della nuova pianificazione delle istanze.
  • SCHEDULE_DESCRIPTION: (facoltativo) una descrizione della nuova pianificazione dell'istanza.
  • START-OPERATION_SCHEDULE o STOP-OPERATION_SCHEDULE: specifica almeno uno dei seguenti elementi:
    • START-OPERATION_SCHEDULE: una pianificazione che descrive quando vengono avviate le istanze VM collegate, formattata come un'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, consulta la programmazione delle operazioni di avvio.
    • STOP-OPERATION_SCHEDULE: una pianificazione che descrive quando le istanze VM collegate vengono arrestate, formattata come un'espressione cron. Se hai bisogno che le istanze VM vengano arrestate a un orario specifico, pianifica l'operazione 15 minuti prima del necessario. Per ulteriori informazioni, consulta la sezione relativa alla programmazione delle operazioni delle fermate.
  • TIME_ZONE: il fuso orario IANA basato sulla località per la pianificazione dell'istanza. Per ulteriori informazioni, consulta la sezione sul fuso orario.
  • INITIATION_DATE: (facoltativo) la prima data di validità della pianificazione dell'istanza, formattata come timestamp RFC 3339. Se omesso, la pianificazione entra in vigore immediatamente. Per ulteriori informazioni, consulta la data di avvio.
  • END_DATE: (facoltativo) l'ultima data di validità della pianificazione dell'istanza, formattata come timestamp RFC 3339. Se omesso, la pianificazione avrà effetto a tempo indeterminato. Per ulteriori informazioni, consulta la data di fine.

Ogni pianificazione dell'istanza ha le seguenti impostazioni:

programmazione avvio operazioni, programmazione interruzione operazione

Pianificazioni che descrivono quando viene avviata la pianificazione dell'istanza e arresta tutte le istanze VM collegate. Una pianificazione di istanza può avere una di queste pianificazioni o entrambe.

Quando crei le pianificazioni delle istanze utilizzando la console Google Cloud, puoi selezionare un'ora di inizio, un'ora di interruzione e una frequenza oppure formattare ciascuna pianificazione come un'espressione cron. Quando crei le 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 ogni campo.

Minuto Ora Giorno del mese Mese Giorno della settimana
0-59 0-23 1-31

dove 29-31 anni sono efficaci solo per i mesi pertinenti

1-12 0-6 o SUN-SAT (domenica-sabato)

dove 0=SUN, 1=MON, ... 6=SAT

Oltre a questi valori, ogni campo di un'espressione cron può utilizzare anche i seguenti caratteri speciali.
Carattere speciale Significato Esempio
* tutte Se i campi del giorno del mese, del mese e del giorno della settimana sono impostati su *, la pianificazione si ripete ogni giorno.
- intervallo Se il campo del giorno della settimana è impostato su MON-FRI (o 1-5), la pianificazione si ripete ogni settimana dal lunedì al venerdì.
, list Se il campo del mese è impostato su 1-6,8-12, la pianificazione si ripete ogni mese tranne luglio.

Quando scrivi un'espressione cron, considera quanto segue:

  • Lo spazio vuoto viene utilizzato per separare i campi di un'espressione CRON. Ricorda di non aggiungere altri spazi vuoti in un campo che utilizza caratteri speciali.
  • Se specifichi sia un giorno della settimana sia un giorno del mese (se nessuno dei due campi è impostato su *), la pianificazione utilizza l'unione di questi valori, non l'intersezione. Ad esempio, la pianificazione 0 8 1 * MON inizia alle 08:00 di ogni lunedì e il primo giorno di ogni mese. Questa pianificazione non inizia alle 08:00 solo il lunedì che è anche il primo giorno del mese.
fuso orario

Il fuso orario IANA basato sulla posizione per la pianificazione delle operazioni di avvio e delle fermate. Il database dei fusi orari IANA definisce un elenco di valori disponibili. Questo fuso orario viene utilizzato come riferimento solo per le pianificazioni delle operazioni di avvio e delle interruzioni e non per la data di avvio e 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, come l'inizio e la fine dell'ora legale e il tempo in cui l'ora legale viene saltata e ripetuta, variano in base al fuso orario.

data di avvio, data di fine

Il periodo di tempo in cui la pianificazione dell'istanza è attiva. Entrambi i valori sono facoltativi. Le operazioni si ripetono ogni anno, a meno che non 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 di avvio e Data di fine.

Quando crei le pianificazioni delle istanze utilizzando gcloud CLI o l'API Compute Engine, questi valori vengono formattati come timestamp RFC 3339:

  YYYY-MM-DDTHH:MM:SSOFFSET

Sostituisci quanto segue:

  • YYYY-MM-DD: una data formattata come anno di quattro cifre, mese a due cifre e giorno del mese a due cifre separati da trattini.
  • HH:MM:SS: un'ora nel formato a due cifre che utilizza il formato 24 ore, i minuti a due cifre e le due cifre dei secondi separati da due punti.
  • OFFSET: il fuso orario formattato come offset del fuso orario UTC (Coordinated Universal Time). Ad esempio, il fuso orario PST (Pacific Standard Time), 8 ore prima del fuso orario UTC, viene scritto -08:00. In alternativa, per non utilizzare offset (il fuso orario UTC), scrivi Z.

Elenco delle pianificazioni delle istanze

Elenca le pianificazioni delle istanze per visualizzare tutte le pianificazioni delle istanze esistenti per il tuo progetto.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.

gcloud

Per visualizzare un elenco di tutti i criteri delle risorse, comprese le pianificazioni delle istanze, utilizzando gcloud CLI, utilizza il comando gcloud compute resource-policies list. Facoltativamente, per limitare i risultati a una regione specifica, includi il flag --filter.

gcloud compute resource-policies list \
    [--filter="region:(REGION)"]

Sostituisci quanto segue:

  • REGION: (facoltativo) la regione in cui si trovano le pianificazioni delle istanze da elencare.

REST

Per visualizzare un elenco di tutti i criteri delle risorse, comprese 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:

  • PROJECT: il tuo ID progetto.
  • REGION: la regione in cui si trovano le pianificazioni delle istanze da elencare.

Descrizione di una pianificazione di un'istanza

Descrivi una pianificazione di un'istanza per visualizzarne la descrizione, le tempistiche, le operazioni e un elenco di tutte le istanze VM a cui è collegata.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.

  3. Fai clic sul nome della pianificazione dell'istanza che vuoi descrivere. Viene visualizzata la pagina Dettagli pianificazioni istanze per la pianificazione.

gcloud

Per descrivere una pianificazione delle istanze utilizzando gcloud CLId, utilizza il comando gcloud compute resource-policies describe:

gcloud compute resource-policies describe SCHEDULE_NAME \
    [--region=REGION]

Sostituisci quanto segue:

  • SCHEDULE_NAME: il nome della pianificazione dell'istanza da descrivere.
  • REGION: (facoltativo) la regione in cui si trova la pianificazione dell'istanza.

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 di un'istanza utilizzando l'API Compute Engine, effettua una richiesta utilizzando il metodo resourcePolicies.get:

GET 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 dell'istanza da descrivere.

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 di istanza in corso...

Elimina una pianificazione delle istanze quando non ti serve più rimuovendo tutte le istanze VM collegate ed eliminando il criterio delle risorse.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.

  3. Seleziona le caselle di controllo per le pianificazioni delle istanze che vuoi eliminare.

  4. Fai clic su Elimina nella parte superiore della pagina. Si apre una nuova finestra di dialogo per confermare l'azione.

  5. Nella finestra di dialogo, fai clic su Elimina.

gcloud

  1. Rimuovila se la pianificazione dell'istanza è collegata a qualsiasi istanza VM.
    1. Per verificare a quali istanze VM è collegata questa pianificazione, descrivi la pianificazione delle istanze.
    2. Per ogni istanza VM a cui è collegata questa pianificazione, rimuovi la pianificazione dell'istanza.
  2. 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 dell'istanza da eliminare.
    • REGION: (facoltativo) la regione in cui si trova la pianificazione dell'istanza.

REST

  1. Rimuovila se la pianificazione dell'istanza è collegata a qualsiasi istanza VM.
    1. Per verificare a quali istanze VM è collegata questa pianificazione, descrivi la pianificazione delle istanze.
    2. Per ogni istanza VM a cui è collegata questa pianificazione, rimuovi la pianificazione dell'istanza.
  2. Per eliminare una pianificazione di istanze utilizzando l'API Compute Engine, effettua 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 dell'istanza da eliminare.

Utilizzo delle pianificazioni delle istanze con le istanze VM

Per utilizzare una pianificazione delle istanze, collegala a una o più istanze VM che vuoi seguire. 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 la pianificazione di un'istanza VM collegata, rimuovi la pianificazione dall'istanza VM.

Collegamento di una pianificazione di istanza durante la creazione di una nuova istanza VM

Per collegare una pianificazione di istanza a una nuova istanza VM, devi creare l'istanza VM nella stessa regione della pianificazione dell'istanza che utilizzi. Scopri di più sulla creazione di un'istanza VM.

Console

Non puoi collegare una pianificazione di istanza durante la creazione di un'istanza con la console Google Cloud. Per utilizzare la console Google Cloud al fine di collegare una pianificazione di un'istanza a una nuova istanza VM, crea un'istanza VM e poi collega una pianificazione all'istanza VM.

gcloud

Per collegare una pianificazione di un'istanza 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 di 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:

  • VM_NAME: il nome dell'istanza VM a cui vuoi collegare una pianificazione dell'istanza.
  • SCHEDULE_NAME: il nome della pianificazione dell'istanza da collegare.
  • ZONE: (facoltativo) 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 deprecata. Ad esempio, se specifichi --image-family debian-10, Compute Engine crea una VM dall'ultima versione dell'immagine del sistema operativo nella famiglia di immagini Debian 10.
    • IMAGE_PROJECT: il progetto contenente l'immagine.

REST

Per collegare una pianificazione di un'istanza a un'istanza VM utilizzando l'API Compute Engine, effettua una richiesta utilizzando il metodo instances.insert e includi l'attributo resourcePolicies. Ad esempio, per creare un'istanza VM da un'immagine pubblica con una pianificazione di istanze collegate, effettua la richiesta seguente:

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:

  • 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 usare 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, specifica debian-cloud come progetto dell'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 viene creata la VM dall'immagine del 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 del sistema operativo nella famiglia di immagini Debian 10.
  • REGION: la regione in cui si trova la pianificazione dell'istanza.
  • SCHEDULE_NAME: il nome della pianificazione dell'istanza da collegare.

Per verificare se la pianificazione dell'istanza viene eseguita correttamente, controlla gli audit log per il criterio delle risorse per la pianificazione delle istanze e l'istanza VM collegata. Potresti dover attendere fino a 15 minuti dopo l'orario pianificato per ogni operazione.

Collegamento di una pianificazione di un'istanza a un'istanza VM esistente

Puoi collegare una pianificazione di istanza a qualsiasi istanza VM esistente che si trova nella stessa regione della pianificazione dell'istanza.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.

  3. Fai clic sul nome della pianificazione dell'istanza da collegare. Viene visualizzata la pagina Dettagli pianificazione istanza.

  4. Fai clic su Aggiungi istanze alla pianificazione. Si apre il riquadro Aggiungi istanze alla pianificazione.

  5. Seleziona la casella di controllo per ogni istanza VM a cui vuoi collegare questa pianificazione.

  6. Fai clic su Aggiungi.

gcloud

Per collegare una pianificazione di un'istanza a un'istanza VM mediante 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:

  • VM_NAME: il nome dell'istanza VM a cui vuoi collegare una pianificazione dell'istanza.
  • SCHEDULE_NAME: il nome della pianificazione dell'istanza da collegare.
  • ZONE: (facoltativo) la zona in cui si trova l'istanza VM.

REST

Per collegare una pianificazione di un'istanza a un'istanza VM utilizzando l'API Compute Engine, effettua una richiesta utilizzando il metodo instances.addResourcePolicies:

POST https://www.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances/VM_NAME/addResourcePolicies
{
  "resourcePolicies": "https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME"
}

Sostituisci quanto segue:

  • 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 dell'istanza.
  • REGION: la regione in cui si trova la pianificazione dell'istanza.
  • SCHEDULE_NAME: il nome della pianificazione dell'istanza da collegare.

Per verificare se la pianificazione dell'istanza viene eseguita correttamente, controlla gli audit log per il criterio delle risorse per la pianificazione delle istanze e l'istanza VM collegata. Potresti dover attendere fino a 15 minuti dopo l'orario pianificato per ogni operazione.

Rimozione di una pianificazione di istanza 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

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic sulla scheda Pianificazioni istanze nella parte superiore della pagina. Viene visualizzato un elenco di tutte le pianificazioni delle istanze per questo progetto.

  3. Fai clic sul nome della pianificazione dell'istanza da rimuovere. Viene visualizzata la pagina Dettagli pianificazione istanza.

  4. Nella sezione Istanze collegate, seleziona la casella di controllo per ogni istanza VM che vuoi rimuovere dalla pianificazione.

  5. Fai clic su Rimuovi istanze dalla pianificazione. Si apre una nuova finestra di dialogo per confermare l'azione.

  6. Nella finestra di dialogo, fai clic su Rimuovi.

gcloud

Per rimuovere una pianificazione di un'istanza da un'istanza VM mediante 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:

  • VM_NAME: il nome dell'istanza VM da cui vuoi rimuovere una pianificazione dell'istanza.
  • SCHEDULE_NAME: il nome della pianificazione dell'istanza da rimuovere.
  • ZONE: (facoltativo) la zona in cui si trova l'istanza VM.

REST

Per rimuovere una pianificazione di istanza da un'istanza VM utilizzando l'API Compute Engine, effettua una richiesta utilizzando il metodo instances.removeResourcePolicies:

POST https://www.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances/VM_NAME/removeResourcePolicies
{
  "resourcePolicies": "https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME"
}

Sostituisci quanto segue:

  • 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 pianificazione dell'istanza.
  • SCHEDULE_NAME: il nome della pianificazione dell'istanza da rimuovere.

Passaggi successivi