Pianificare l'avvio e l'arresto di un'istanza VM


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

    1. Install the Google Cloud CLI, then initialize it by running the following command:

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

  • 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.

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:

  • 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 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:

  • 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

L'amministratore potrebbe anche assegnare 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, 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.

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

  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 programmazione. Viene visualizzato il riquadro Crea una pianificazione.

  4. Inserisci un nome.

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

  6. 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:

      1. 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.
      2. Nel menu a discesa Frequenza nella parte inferiore del riquadro, seleziona la frequenza di ripetizione di Ora di inizio e Ora di fine.
    • Espressioni cron:

      1. Per attivare le espressioni CRON, fai clic sul pulsante di attivazione/disattivazione Utilizza espressione CRON nella parte superiore del riquadro.
      2. 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.
  7. Nel menu a discesa Fuso orario, seleziona il fuso orario per Ora inizio e Ora fine.

  8. (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.

  9. (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.

  10. 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 \
    --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 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.

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:

  • 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.

Ogni pianificazione dell'istanza ha le seguenti impostazioni:

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

Oltre a questi valori, ogni campo di un'espressione cron può anche utilizzare i seguenti caratteri speciali.
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 (o 1-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), 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, 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:

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

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:

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

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

  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 in questione.

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:

  • SCHEDULE_NAME: il nome della programmazione delle istanze da descrivere.
  • REGION: la regione in cui si trova la pianificazione delle istanze.

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:

  • 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.

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

  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 da eliminare.

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

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

gcloud

  1. Se questa pianificazione istanza è associata a istanze VM, rimuovile.
    1. Per controllare a quali istanze VM è associata questa pianificazione, descrivi la pianificazione dell'istanza.
    2. Per ogni istanza VM a cui è associata questa pianificazione, rimuovi la pianificazione dell'istanza.
  2. 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.

REST

  1. Se questa pianificazione istanza è associata a istanze VM, rimuovile.
    1. Per controllare a quali istanze VM è associata questa pianificazione, descrivi la pianificazione dell'istanza.
    2. Per ogni istanza VM a cui è associata questa pianificazione, rimuovi la pianificazione dell'istanza.
  2. 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.

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:

  • 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.

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'attributo resourcePolicies. 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:

  • 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, specifica debian-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.
  • REGION: la regione in cui si trova la programmazione dell'istanza.
  • SCHEDULE_NAME: il nome della programmazione delle istanze da collegare.

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

  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. Viene visualizzato il riquadro Aggiungi istanze alla pianificazione.

  5. Seleziona la casella di controllo in corrispondenza di ogni istanza VM a cui vuoi collegare questa programmazione.

  6. Fai clic su Aggiungi.

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:

  • 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.

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:

  • 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.

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

  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 rimuovere. Viene visualizzata la pagina Dettagli pianificazione istanza.

  4. Nella sezione Istanze collegate, seleziona la casella di controllo per ogni istanza VM da rimuovere da questa pianificazione.

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

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

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:

  • 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.

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:

  • 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.

Passaggi successivi