Gestisci le pianificazioni di snapshot per i dischi


Questo documento descrive come gestire le pianificazioni di snapshot per disco permanente a livello di zona e di regione e e Google Cloud Hyperdisk.

Puoi gestire le pianificazioni di snapshot come segue:

  • Visualizzare le pianificazioni degli snapshot
  • Modifica pianificazioni snapshot
  • Elimina pianificazioni snapshot

Puoi anche configurare avvisi per gli snapshot pianificati.

Prima di iniziare

  • Se non l'hai già fatto, configura l'autenticazione. Autenticazione è Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione 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. 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 ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Ruoli e autorizzazioni richiesti

Per ottenere le autorizzazioni necessarie per creare una pianificazione di snapshot, chiedi all'amministratore di concederti seguenti ruoli IAM sul progetto:

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Questi ruoli predefiniti le autorizzazioni necessarie per creare una pianificazione di snapshot. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per creare una pianificazione snapshot sono necessarie le seguenti autorizzazioni:

  • Per visualizzare le pianificazioni di snapshot: compute.resourcePolicies.list del progetto o dell'organizzazione
  • Per aggiornare una pianificazione di snapshot:
    • compute.resourcePolicies.update sul criterio delle risorse
    • compute.resourcePolicies.get sul criterio delle risorse
  • Per sostituire una pianificazione di snapshot:
    • compute.resourcePolicies.use sul criterio delle risorse
    • compute.disks.addResourcePolicies sul disco
    • compute.disks.removeResourcePolicies sul disco
  • Per eliminare una pianificazione di snapshot:
    • compute.resourcePolicies.delete sul criterio delle risorse
    • compute.disks.removeResourcePolicies sul disco

Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati e altri ruoli predefiniti.

Visualizza pianificazioni snapshot

Per visualizzare un elenco delle pianificazioni di snapshot, utilizza il comando gcloud della console, o il metodo dell'API Compute Engine. Questa richiesta mostra il nome, la descrizione e la regione di le pianificazioni di snapshot all'interno di un progetto.

Console

  1. Nella console Google Cloud, vai alla pagina Snapshot.

    Vai alla pagina Snapshot

  2. Seleziona la scheda Pianificazioni snapshot.
  3. Utilizza il campo Filtro per restringere l'elenco delle pianificazioni di snapshot.
  4. Fai clic sul nome di una pianificazione di snapshot per visualizzarne i dettagli.

gcloud

Per visualizzare un elenco delle pianificazioni di snapshot, utilizza la Comando resource-policies list.

 gcloud compute resource-policies list

Per visualizzare la descrizione di una pianificazione di snapshot specifica, utilizza il metodo Comando resource-policies describe.

gcloud compute resource-policies describe SCHEDULE_NAME

Sostituisci SCHEDULE_NAME con il nome dello snapshot programmazione.

REST

Invia una richiesta GET a resourcePolicies.aggregatedList per restituire un elenco delle pianificazioni di snapshot di un progetto.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/resourcePolicies

Sostituisci PROJECT_ID con il nome del progetto.

Visualizza le pianificazioni di snapshot per regione

Per visualizzare le pianificazioni degli snapshot per un progetto all'interno di una determinata regione, utilizza Console Google Cloud, gcloud CLI o REST.

Console

  1. Nella console Google Cloud, vai alla pagina Snapshot.

    Vai alla pagina Snapshot

  2. Seleziona la scheda Pianificazioni snapshot.
  3. Utilizza il campo Filtro per elencare le pianificazioni di snapshot per una regione specifica.

gcloud

Per visualizzare le pianificazioni degli snapshot per un progetto all'interno di una regione specifica, utilizza la Comando resource-policies list.

gcloud compute resource-policies list PROJECT_ID --filter REGION

Sostituisci quanto segue:

  • PROJECT_ID: il nome del progetto
  • REGION: la regione, ad esempio us-west1

REST

Invia una richiesta GET a Metodo resourcePolicies.list per recuperare le pianificazioni di snapshot create all'interno di una regione.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies

Sostituisci quanto segue:

  • PROJECT_ID: il nome del progetto
  • REGION: la regione, ad esempio us-west1

Modificare una pianificazione snapshot

Dopo aver creato una pianificazione degli snapshot, puoi modificare i seguenti campi dinamicamente utilizzando la procedura Aggiornare una pianificazione degli snapshot:

  • Descrizione
  • Pianificazione snapshot
  • Etichette applicate agli snapshot generati
  • Il criterio di eliminazione del disco di origine per gestire gli snapshot generati automaticamente se il disco di origine è stato eliminato
  • Criterio di conservazione per definire per quanto tempo conservare gli snapshot generati dalla pianificazione di snapshot

Per aggiornare altri valori per una pianificazione di snapshot, devi eliminare lo snapshot pianificare e crearne uno nuovo, come descritto Sostituisci una pianificazione di snapshot.

Gli aggiornamenti della pianificazione degli snapshot vengono applicati nel primo snapshot dopo il aggiornamenti. Se uno snapshot è in esecuzione durante l'aggiornamento della relativa pianificazione, il le modifiche avranno effetto nell'istantanea seguente.

Aggiorna una pianificazione snapshot

Puoi utilizzare Google Cloud CLI o l'API Compute Engine per modificare alcune proprietà della pianificazione di snapshot, come descritto in Modificare una pianificazione di snapshot.

Per modificare altre proprietà della pianificazione di snapshot, utilizza il descritto in Sostituisci una pianificazione di snapshot.

Console

  1. Nella console Google Cloud, vai alla pagina Snapshot.

    Vai alla pagina Snapshot

  2. Seleziona Pianificazioni snapshot per visualizzare un elenco delle tue pianificazioni.
  3. Fai clic sul nome della pianificazione snapshot da modificare.
  4. Nella pagina dei dettagli della pianificazione snapshot, fai clic su Modifica pianificazione. .

gcloud

Utilizza la Comando compute resource-policies update aggiornare la descrizione, la pianificazione, il criterio di conservazione di una pianificazione snapshot etichette.

gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \
   --region=REGION \
   --description="DESCRIPTION" \
   --snapshot-labels="KEY=VALUE" \
   --max-retention-days=DAYS \
   --on-source-disk-delete=DELETE_OPTION \
   --start-time=START_TIME \
   SCHEDULE_FLAG

Sostituisci quanto segue:

  • SCHEDULE_NAME: il nome dello snapshot programmazione.
  • REGION: la regione in cui la pianificazione di snapshot.
  • DESCRIPTION: una descrizione dell'istantanea programmazione. Racchiudi tra virgolette la descrizione.
  • KEY e VALUE: una coppia chiave-valore che può essere utilizzata raggruppare le risorse correlate o associate.
  • DAYS: numero massimo di giorni per cui viene conservato lo snapshot prima dell'eliminazione.
  • DELETE_OPTION: comportamento di conservazione dei segmenti di pubblico dopo l'eliminazione del disco originale. Il valore deve essere uno dei seguenti:
    • apply-retention-policy: quando il disco di origine viene eliminato, continua per applicare il periodo di conservazione a tutti gli snapshot creati la pianificazione di snapshot.
    • keep-auto-snapshots: (impostazione predefinita) se il disco di origine viene eliminato, di conservare tutti gli snapshot creati dalla pianificazione degli snapshot, del periodo di conservazione.
  • START_TIME: ora di inizio UTC. L'ora deve iniziare a un'ora. Ad esempio:
    • 14:00 PST è 22:00.
    • Se imposti un'ora di inizio pari a 22:13, riceverai un errore.
  • SCHEDULE_FLAG: uno dei seguenti flag:

    • --hourly-schedule=HOURLY_INTERVAL: il di ore tra ogni snapshot. La HOURLY_INTERVAL deve essere un numero intero compreso tra 1 e 23. Ad esempio, se imposti --hourly-schedule su 12, significa lo snapshot viene generato ogni 12 ore.
    • --daily-schedule: esegue uno snapshot ogni giorno, alla START_TIME
    • --weekly-schedule=WEEKLY_INTERVAL: definisce il giorno in cui vuoi che venga eseguita la creazione dello snapshot. Devi precisare il giorno della settimana; I valori non sono sensibili alle maiuscole.

    • --weekly-schedule-from-file=FILE_NAME: specifica un file contenente la pianificazione di snapshot settimanale. Tu puoi specificare programmazioni settimanali per giorni diversi della settimana usando un file in tempi diversi. Ad esempio, potrebbe specificare una pianificazione di snapshot per il lunedì e il mercoledì: none [{"day": "MONDAY", "startTime": "04:00"}, {"day": "WEDNESDAY", "startTime": "02:00"}] Se includi un'ora di inizio nel file, Non devi impostare il flag --start-time. La pianificazione utilizza fuso orario UTC. L'ora deve iniziare in base all'ora. Ad esempio:

      • 14:00 PST è 22:00.
      • Se imposti un'ora di inizio pari a 22:13, riceverai un errore.

    La frequenza dello snapshot segnala hourly-schedule, daily-schedule, weekly-schedule e weekly-schedule-from-file sono si escludono a vicenda. Puoi utilizzarne solo uno per la pianificazione di snapshot.

Esempi:

Per modificare una pianificazione di snapshot in una pianificazione giornaliera:

gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \
    --region=REGION --daily-schedule --start-time=START_TIME

Per modificare uno snapshot in una pianificazione ogni ora e aggiornare anche la descrizione e l'etichetta dello snapshot:

gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \
    --region=REGION --description="DESCRIPTION" \
    --hourly-schedule=HOURLY_INTERVAL --start-time=START_TIME \
    --snapshot-labels="KEY=VALUE"

Per modificare i criteri di conservazione degli snapshot e di eliminazione del disco di origine per un pianificazione snapshot:

gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \
    --region=REGION --max-retention-days=DAYS \
    --on-source-disk-delete=DELETE_OPTION

REST

Crea una richiesta PATCH Metodo resourcePolicies aggiornare la descrizione, la pianificazione, il criterio di conservazione di una pianificazione di snapshot il criterio di eliminazione del disco di origine o le etichette. Nel corpo della richiesta, è sufficiente per specificare name e i campi da aggiornare.

  • Modifica la descrizione e l'etichetta:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "description": "DESCRIPTION",
        "snapshotProperties": {
            "labels": {"KEY": "VALUE"}
        }
    }
    
  • Modifica la pianificazione degli snapshot su ogni ora:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "snapshotSchedulePolicy": {
            "schedule": {
              "hourlySchedule": {
                  "hoursInCycle": HOURLY_INTERVAL,
                  "startTime": START_TIME
               }
            }
        }
    }
    
  • Modifica la pianificazione degli snapshot in modo che sia giornaliera:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "snapshotSchedulePolicy": {
            "schedule": {
              "dailySchedule": {
                  "daysInCycle": DAILY_INTERVAL,
                  "startTime": START_TIME
               }
            }
        }
    }
    
  • Cambia la pianificazione di snapshot in settimanale:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "snapshotSchedulePolicy": {
            "schedule": {
               "weeklySchedule": {
                  "dayOfWeeks": [
                     {
                        "day": WEEKLY_INTERVAL,
                        "startTime": START_TIME
                     }
                  ]
               }
            }
        }
    }
    
  • Modifica il criterio di conservazione degli snapshot:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "snapshotSchedulePolicy": {
            "retentionPolicy": {
                "maxRetentionDays": DAYS,
                "onSourceDiskDelete":"DELETE_OPTION"
            }
       }
    }
    

Sostituisci quanto segue:

  • PROJECT_ID: il nome del progetto.
  • REGION: la regione in cui viene pianificata la pianificazione di snapshot in cui viene localizzato.
  • SCHEDULE_NAME: il nome dello snapshot programmazione.
  • DESCRIPTION: una descrizione dell'istantanea programmazione. Racchiudi tra virgolette la descrizione.
  • KEY e VALUE: una chiave che può essere utilizzata raggruppare le risorse correlate o associate.
  • HOURLY_INTERVAL: definisce l'intervallo a cui in cui eseguire lo snapshot. Impostare la programmazione oraria utilizzando un numero intero tra 1 e 23. Per fare in modo che gli snapshot siano creati contemporaneamente ogni giorno scegli un numero che si divide equamente in 24 (1, 2, 3, 4, 6, 8 o 12). Ad esempio, se imposti --hourly-schedule su 12, significa lo snapshot viene generato ogni 12 ore.
  • DAILY_INTERVAL: definisce il numero di giorni tra uno snapshot e l'altro. Per creare uno snapshot ogni giorno, utilizza valore 1.
  • WEEKLY_INTERVAL: definisce una pianificazione eseguita il giorno in giorni specifici della settimana. Specifica uno o più giorni. Le seguenti opzioni disponibili: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY e SUNDAY. Devi indicare i giorni della settimana; non fanno distinzione tra maiuscole e minuscole. Puoi definire fino a 7 intervalli dayOfWeeks, uno per ogni giorno della settimana.
  • START_TIME: ora di inizio UTC. L'ora deve iniziano a un'ora. Ad esempio:
    • Le 14:00 PST sono 22:00 UTC.
    • Se imposti un'ora di inizio pari a 22:13, riceverai un errore.
  • DAYS: numero massimo di giorni per cui viene conservato lo snapshot prima dell'eliminazione.
  • DELETE_OPTION: comportamento di conservazione degli snapshot automatici dopo l'eliminazione del disco originale. Il valore deve essere uno dei seguenti:
    • APPLY_RETENTION_POLICY: quando il disco di origine viene eliminato, continua per applicare il periodo di conservazione a tutti gli snapshot creati la pianificazione di snapshot.
    • KEEP_AUTO_SNAPSHOTS: (impostazione predefinita) se il disco di origine viene eliminato, di conservare tutti gli snapshot creati dalla pianificazione degli snapshot, del periodo di conservazione.

Sostituisci una pianificazione di snapshot

Segui questi passaggi per eliminare la pianificazione di snapshot e crearne una nuova. Utilizza le funzionalità di questo metodo per modificare le proprietà della pianificazione snapshot che non possono essere modificata utilizzando aggiorna una pianificazione di snapshot.

Se stai sostituendo una pianificazione di snapshot già collegata a un disco, devi prima scollegare la pianificazione dal disco ed eliminarla. Poi potrai creare creare una nuova pianificazione e collegarla al disco.

Gli snapshot generati dalla pianificazione degli snapshot scollegata non verranno gestiti dal nuovo criterio. Questi snapshot verranno conservati a tempo indeterminato fino a quando non li elimini.

Utilizza la console Google Cloud, gcloud CLI o REST per rimuovere e sostituire la pianificazione di snapshot.

Console

  1. Nella console Google Cloud, vai alla pagina Dischi.

    Vai alla pagina Dischi

  2. Seleziona il disco con la pianificazione da scollegare.
  3. Nella pagina Gestisci disco, fai clic su Modifica. Potresti dover fare clic Menu Altre azioni per prima cosa.
  4. Apri il menu a discesa Pianificazione snapshot.
  5. Fai clic su Nessuna pianificazione per scollegare la pianificazione dal disco.
  6. Puoi creare una nuova programmazione o scambiarla mentre e stanno modificando le opzioni del disco.
  7. Fai clic su Salva per completare l'attività.

gcloud

  1. Utilizza la Comando gcloud disks remove-resource-policies per scollegare la pianificazione degli snapshot dal disco con la pianificazione che che vuoi modificare.

    gcloud compute disks remove-resource-policies DISK_NAME \
        --resource-policies SCHEDULE_NAME \
        --region REGION \
        --zone ZONE
    

    Sostituisci quanto segue:

    • DISK_NAME: il nome del disco con la pianificazione di snapshot associata
    • SCHEDULE_NAME: il nome dello snapshot la pianificazione che vuoi scollegare da questo disco
    • REGION: la regione in cui viene visualizzato lo snapshot la pianificazione risiede
    • ZONE: la zona in cui si trova il disco di zona
  2. Utilizza la Comando gcloud disks add-resource-policies per aggiungere la nuova pianificazione di snapshot al disco.

    gcloud compute disks add-resource-policies DISK_NAME \
         --resource-policies SCHEDULE_NAME \
         --zone ZONE
    

    Sostituisci quanto segue:

    • DISK_NAME: il nome del disco con il criterio delle risorse di pianificazione degli snapshot
    • SCHEDULE_NAME: il nome della programmazione degli snapshot che vuoi aggiungere a questo disco
    • ZONE: la zona in cui il disco risiede

REST

  1. Scollega la pianificazione snapshot attuale da un disco costruendo una richiesta POST a disks.removeResourcePolicies

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/removeResourcePolicies
    
    {
      "resourcePolicies": [
         "regions/REGION/resourcePolicies/SCHEDULE_NAME"
      ]
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: il nome del progetto
    • ZONE: la zona in cui si trova il disco
    • DISK_NAME: il nome del disco con la pianificazione snapshot associata
    • REGION: località della pianificazione di snapshot
    • SCHEDULE_NAME: il nome dello snapshot la pianificazione della rimozione da questo disco
  2. Collega la nuova pianificazione degli snapshot al disco creando un POST richiesta alla Metodo disks.addResourcePolicies.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/addResourcePolicies
    
    {
      "resourcePolicies": [
        "regions/REGION/resourcePolicies/SCHEDULE_NAME"
      ]
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: il nome del progetto
    • ZONE: la posizione del disco
    • DISK_NAME: il nome del disco
    • REGION: località della pianificazione di snapshot
    • SCHEDULE_NAME: il nome dello snapshot la pianificazione che applichi a questo disco

Elimina una pianificazione snapshot

Se elimini una pianificazione di snapshot, tutti gli snapshot generati automaticamente associati con la pianificazione di snapshot vengono conservati in modo permanente. Tuttavia, dopo la programmazione non può più generare snapshot.

Le norme di conservazione fanno parte della pianificazione degli snapshot. Dopo la programmazione viene eliminato, il criterio di conservazione non è più valido. Snapshot con già generati vengono conservati in modo permanente finché non li elimini manualmente.

Per eliminare una pianificazione di snapshot esistente, utilizza la Console Google Cloud, Google Cloud CLI o il metodo API Compute Engine. Se pianificazione è già collegata a un disco, scollega la pianificazione dal disco, per poi eliminarlo. Non puoi eliminare una pianificazione snapshot che è collegate a un disco.

Console

  1. Nella console Google Cloud, vai alla pagina Snapshot.

    Vai alla pagina Snapshot

  2. Seleziona Pianificazioni snapshot per visualizzare un elenco delle tue pianificazioni.
  3. Seleziona una pianificazione non associata a un disco.
  4. Fai clic su Elimina.

gcloud

Per eliminare una pianificazione di snapshot, utilizza Comando resource-policies delete.

gcloud compute resource-policies delete SCHEDULE_NAME \
    --region REGION

Sostituisci quanto segue:

  • SCHEDULE_NAME: il nome della pianificazione di snapshot
  • REGION: località della pianificazione di snapshot

REST

Per eliminare una pianificazione di snapshot, invia una richiesta DELETE a Metodo resourcePolicies.delete. Se la pianificazione degli snapshot è già collegata a un disco, riceverai un errore.

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME

Sostituisci quanto segue:

  • PROJECT_ID: il nome del progetto
  • REGION: località della pianificazione di snapshot
  • SCHEDULE_NAME: il nome della pianificazione di snapshot

Logging e monitoraggio

Ogni snapshot pianificato associato a un disco viene creato continuamente un evento di sistema, che viene sempre monitorato e registrato. Gli audit log degli eventi di sistema sempre attiva.

Questi log forniscono informazioni sul comportamento di snapshot pianificati per ciascun disco associato. Puoi visualizzare i log dal Menu Logging nella console Google Cloud.

Per ulteriori informazioni sull'uso di Esplora log, consulta Visualizza i log utilizzando Esplora log.

Console

  1. Nella console Google Cloud, vai alla pagina Esplora log.

    Vai alla pagina Esplora log

  2. Nell'elenco a discesa Risorsa controllata, posiziona il cursore su Disco e seleziona Tutti i dischi_id.

  3. Nell'elenco a discesa Tutti i log, seleziona cloudaudit.googleapis.com/system_event e fai clic su OK.

  4. Nell'elenco a discesa Qualsiasi livello di log, seleziona il tipo di log.

Passaggi successivi