Scalabilità in base alle pianificazioni


La scalabilità automatica basata sulla pianificazione ti consente di migliorare la disponibilità dei tuoi carichi di lavoro pianificando la capacità in anticipo rispetto al carico previsto. Se esegui il tuo workload su un gruppo di istanze gestite (MIG), puoi pianificare un numero richiesto di istanze di macchine virtuali (VM) per pattern di carico ricorrenti ed eventi una tantum. Utilizza le pianificazioni di scalabilità se l'inizializzazione del tuo workload richiede molto tempo e vuoi eseguire lo scale out in anticipo rispetto ai picchi di carico previsti.

Questo documento descrive come creare, elencare, modificare, disattivare, riattivare ed eliminare le pianificazioni di scalabilità per un MIG esistente. Per ulteriori informazioni su MIG e scalabilità automatica, consulta Creazione di gruppi di istanze gestite e Gruppi di istanze a scalabilità automatica.

Prima di iniziare

  • Scopri i concetti fondamentali del gestore della scalabilità automatica.
  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso ai Google Cloud servizi e alle API. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

      1. After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      2. Set a default region and zone.
      3. Terraform

        Per utilizzare gli esempi di Terraform in questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.

        1. Install the Google Cloud CLI.

        2. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

        3. To initialize the gcloud CLI, run the following command:

          gcloud init
        4. If you're using a local shell, then create local authentication credentials for your user account:

          gcloud auth application-default login

          You don't need to do this if you're using Cloud Shell.

          If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.

        Per ulteriori informazioni, vedi Set up authentication for a local development environment.

        REST

        Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

          After installing the Google Cloud CLI, initialize it by running the following command:

          gcloud init

          If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

        Per saperne di più, consulta la sezione Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .

Limitazioni

Le pianificazioni di scalabilità sono limitate dalle limitazioni per tutti i gestori della scalabilità automatica e da quelle riportate di seguito:

  • Puoi avere fino a 128 pianificazioni di scalabilità per gruppo di istanze gestite. Per ridurre questo limite, elimina le pianificazioni di scalabilità con stato OBSOLETE e che non prevedi di eseguire di nuovo.
  • La durata minima per le pianificazioni di scalabilità è di 5 minuti.

Creazione di una pianificazione di scalabilità

Puoi creare fino a 128 pianificazioni di scalabilità per ogni gruppo di istanze gestite. Per ulteriori informazioni, vedi Impostazioni della pianificazione della scalabilità.

Le seguenti istruzioni spiegano come creare una pianificazione di scalabilità per un gruppo di istanze gestite.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic sul nome di un MIG nell'elenco.

  3. Fai clic su Modifica.

  4. Se non è presente una configurazione di scalabilità automatica:

    1. In Scalabilità automatica, fai clic su Configura scalabilità automatica.
    2. In Modalità di scalabilità automatica, seleziona On: aggiungi e rimuovi istanze al gruppo per abilitare la scalabilità automatica. Se vuoi scalare il MIG solo in base alle pianificazioni, elimina la metrica di utilizzo della CPU predefinita dopo aver aggiunto le pianificazioni.
  5. Per ogni programma di scalabilità che vuoi aggiungere:

    1. Espandi la sezione Pianificazioni di scalabilità automatica, fai clic su Gestisci pianificazioni e poi su Crea pianificazione.
    2. Nel riquadro Crea pianificazione di scalabilità, inserisci un nome.
    3. (Facoltativo) Inserisci una Descrizione.
    4. Inserisci il numero di istanze minime richieste che questa pianificazione fornisce quando è attiva.
    5. Specifica l'ora di inizio e la ricorrenza della pianificazione di scalabilità utilizzando l'interfaccia predefinita oppure, se vuoi configurare una pianificazione con ora di inizio e ricorrenza più complesse, utilizzando un'espressione cron.
      • Interfaccia predefinita
        1. Nel campo Ora di inizio, digita o fai clic su per selezionare un'ora di inizio.
        2. Nel campo Ricorrenza, seleziona la frequenza con cui la pianificazione si ripete. Se selezioni Ogni settimana o Ogni mese, utilizza il menu a discesa aggiuntivo per selezionare i giorni della settimana o del mese in cui inizia la pianificazione.
      • Espressione cron
        1. Per attivare l'opzione, fai clic sul pulsante di attivazione/disattivazione Utilizza espressione CRON.
        2. Inserisci un'espressione CRON.
    6. Nel campo Fuso orario, seleziona un fuso orario.

    7. Nei campi Durata e Unità di tempo, inserisci una durata e seleziona un'unità di tempo corrispondente.

    8. Fai clic su Salva. Si apre il riquadro Pianificazioni di scalabilità.

    9. (Facoltativo) Puoi creare un'altra pianificazione di scalabilità facendo clic su Crea pianificazione.

  6. Al termine della creazione delle pianificazioni, fai clic su Fine.

  7. Per chiudere la pagina Gruppi di istanze, fai clic su Salva.

gcloud

Per aggiungere una pianificazione della scalabilità a un MIG che non ha una policy di scalabilità automatica esistente, utilizza il comando gcloud compute instance-groups managed set-autoscaling.

gcloud compute instance-groups managed set-autoscaling MIG_NAME \
    [--min-num-replicas=MIN_NUM_REPLICAS] \
    --max-num-replicas=MAX_NUM_REPLICAS \
    --set-schedule=SCHEDULE_NAME \
    --schedule-cron="CRON_EXPRESSION" \
    --schedule-duration-sec=DURATION \
    [--schedule-time-zone="TIME_ZONE"] \
    --schedule-min-required-replicas=MIN_REQ_REPLICAS \
    [--schedule-description="DESCRIPTION"] \
    [--zone=ZONE | --region=REGION]

Per aggiungere una pianificazione della scalabilità a un MIG con una policy di scalabilità automatica esistente, utilizza il comando gcloud compute instance-groups managed update-autoscaling.

gcloud compute instance-groups managed update-autoscaling MIG_NAME \
    [--min-num-replicas=MIN_NUM_REPLICAS] \
    [--max-num-replicas=MAX_NUM_REPLICAS] \
    --set-schedule=SCHEDULE_NAME \
    --schedule-cron="CRON_EXPRESSION" \
    --schedule-duration-sec=DURATION \
    [--schedule-time-zone="TIME_ZONE"] \
    --schedule-min-required-replicas=MIN_REQ_REPLICAS \
    [--schedule-description="DESCRIPTION"] \
    [--zone=ZONE | --region=REGION]

Sostituisci quanto segue:

  • MIG_NAME: il nome di un MIG con una policy di scalabilità automatica esistente.
  • MIN_NUM_REPLICAS: (facoltativo) il numero minimo di istanze richieste per questo MIG. Google consiglia di impostare questo valore sul numero minimo di istanze necessarie quando non è attiva alcuna pianificazione di scalabilità. Per scalare il MIG a zero istanze, imposta questo valore su 0 e assicurati che siano soddisfatte le condizioni necessarie.
  • MAX_NUM_REPLICAS: il numero massimo di istanze che possono essere fornite per questo MIG. Facoltativo per un MIG con una policy di scalabilità automatica esistente.
  • SCHEDULE_NAME: il nome della nuova pianificazione di scalabilità.
  • CRON_EXPRESSION: l'ora di inizio e la ricorrenza di questa pianificazione formattate come espressione cron.
  • DURATION: la durata, in secondi, per cui questa pianificazione è attiva.
  • TIME_ZONE: (facoltativo) il fuso orario IANA per l'ora di inizio della pianificazione, ad esempio Europe/Paris. Il valore predefinito è UTC.
  • MIN_REQ_REPLICAS: il numero di istanze minime richieste che questa pianificazione fornisce quando è attiva.
  • DESCRIPTION: (Facoltativo) una descrizione della nuova pianificazione di scalabilità.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il MIG.

Puoi creare pianificazioni che vengono eseguite una sola volta o che si ripetono periodicamente.

Programmazione ripetuta

Questo comando di esempio crea una pianificazione che si ripete. Questa pianificazione specifica che vuoi che il tuo MIG contenga almeno 10 istanze VM ogni lunedì, martedì, mercoledì, giovedì e venerdì dalle 08:30 alle 17:00 UTC (Coordinated Universal Time). Questo comando utilizza anche i flag --min-num-replicas e --max-num-replicas per aggiornare il numero minimo di istanze a 0 e il numero massimo di istanze a 30 per tutti gli indicatori di scalabilità automatica del MIG selezionato. Questo comando presuppone che tu abbia un MIG esistente denominato example-mig con una policy di scalabilità automatica esistente.

gcloud compute instance-groups managed update-autoscaling example-mig \
    --min-num-replicas=0 \
    --max-num-replicas=30 \
    --set-schedule=workday-capacity \
    --schedule-cron="30 8 * * Mon-Fri" \
    --schedule-duration-sec=30600 \
    --schedule-min-required-replicas=10 \
    --schedule-description="Have at least 10 VMs every Monday through Friday from 8:30 AM to 5 PM UTC"

Programmazione una tantum

Questo comando di esempio crea una pianificazione che viene eseguita una sola volta. Questa pianificazione specifica che vuoi che il tuo MIG contenga almeno 30 istanze VM tutto il giorno del 30 gennaio 2030 per il fuso orario America/New_York. Questo comando presuppone che tu disponga di un MIG esistente denominato example-mig che si trova in us-east1-b e che abbia una policy di scalabilità automatica esistente.

gcloud compute instance-groups managed update-autoscaling example-mig \
    --set-schedule=example-onetime-schedule \
    --schedule-cron="0 0 30 1 * 2030" \
    --schedule-duration-sec=86400 \
    --schedule-time-zone="America/New_York" \
    --schedule-min-required-replicas=30 \
    --schedule-description="Schedule a minimum of 30 VMs all day for January 30, 2030" \
    --zone=us-east1-b

Terraform

Per aggiungere una pianificazione di scalabilità a un MIG, utilizza la risorsa google_compute_autoscaler.

resource "google_compute_autoscaler" "default" {
  provider = google-beta
  name     = "my-autoscaler"
  zone     = "us-central1-f"
  target   = google_compute_instance_group_manager.default.id

  autoscaling_policy {
    max_replicas    = 5
    min_replicas    = 1
    cooldown_period = 60

    scaling_schedules {
      name                  = "every-weekday-morning"
      description           = "Increase to 2 every weekday at 7AM for 12 hours."
      min_required_replicas = 2
      schedule              = "0 7 * * MON-FRI"
      time_zone             = "America/New_York"
      duration_sec          = 43200
    }
  }
}

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

REST

Per creare un gestore della scalabilità automatica con pianificazioni di scalabilità per un MIG, utilizza il metodo autoscalers.insert per un MIG a livello di zona o il metodo regionAutoscalers.insert per un MIG a livello di regione.

Esegui la seguente chiamata per creare una pianificazione per un MIG a livello di zona che non dispone di una policy di scalabilità automatica esistente:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/autoscalers/

{
  "name": "AUTOSCALER_NAME",
  "target": "https://www.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instanceGroupManagers/MIG_NAME",
  "autoscalingPolicy": {
    "minNumReplicas": MIN_NUM_REPLICAS,
    "maxNumReplicas": MAX_NUM_REPLICAS,
    "scalingSchedules": {
      "SCHEDULE_NAME": {
        "minRequiredReplicas": MIN_REQ_REPLICAS,
        "schedule": "CRON_EXPRESSION",
        "timeZone": "TIME_ZONE",
        "durationSec": DURATION,
        "description": "DESCRIPTION"
      },
      ...
    }
  }
}

Per creare pianificazioni per un MIG con una norma di scalabilità automatica esistente, utilizza il metodo autoscalers.patch per un MIG a livello di zona o il metodo regionAutoscalers.patch per un MIG a livello di regione.

Ad esempio, esegui la seguente chiamata per creare una pianificazione per un MIG a livello di zona che ha un criterio di scalabilità automatica esistente:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/autoscalers?autoscaler=AUTOSCALER_NAME

{
  "autoscalingPolicy": {
    "minNumReplicas": MIN_NUM_REPLICAS,
    "maxNumReplicas": MAX_NUM_REPLICAS,
    "scalingSchedules": {
      "SCHEDULE_NAME": {
        "minRequiredReplicas": MIN_REQ_REPLICAS,
        "schedule": "CRON_EXPRESSION",
        "timeZone": "TIME_ZONE",
        "durationSec": DURATION,
        "description": "DESCRIPTION"
      },
      ...
    }
  }
}

Sostituisci quanto segue:

  • PROJECT: il tuo ID progetto.
  • ZONE: la zona in cui si trova il MIG.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del MIG.
  • MIN_NUM_REPLICAS: (facoltativo) il numero minimo di istanze richieste per questo MIG. Google consiglia di impostare questo valore sul numero minimo di istanze necessarie quando non è attiva alcuna pianificazione di scalabilità. Per scalare il MIG a zero istanze, imposta questo valore su 0 e assicurati che siano soddisfatte le condizioni necessarie.
  • MAX_NUM_REPLICAS: il numero massimo di istanze che possono essere fornite per questo MIG. Facoltativo per un MIG con una policy di scalabilità automatica esistente.
  • SCHEDULE_NAME: il nome della nuova pianificazione di scalabilità.
  • MIN_REQ_REPLICAS: il numero minimo di istanze richieste che questa pianificazione fornisce quando è attiva.
  • CRON_EXPRESSION: l'ora di inizio e la ricorrenza di questa pianificazione formattate come espressione cron.
  • TIME_ZONE: (facoltativo) il fuso orario IANA per l'ora di inizio della pianificazione, ad esempio Europe/Paris. Il valore predefinito è UTC.
  • DURATION: la durata, in secondi, per cui questa pianificazione è attiva.
  • DESCRIPTION: (Facoltativo) una descrizione della nuova pianificazione di scalabilità.

Puoi creare pianificazioni che vengono eseguite una sola volta o che si ripetono periodicamente.

Programmazione ripetuta

Questa chiamata API di esempio crea una pianificazione che si ripete. Questa pianificazione specifica che vuoi che un gruppo di istanze gestite zonale contenga almeno 10 istanze VM ogni lunedì, martedì, mercoledì, giovedì e venerdì dalle 08:30 alle 17:00 UTC (Tempo Coordinato Universale). Questa chiamata API utilizza anche i campi minNumReplicas e maxNumReplicas per aggiornare il numero minimo di istanze a 0 e il numero massimo di istanze a 30 per tutti gli indicatori di scalabilità automatica del MIG selezionato. Questa chiamata API presuppone che tu abbia un progetto esistente denominato example-project con un MIG a livello di zona che si trova in us-east1-b e che abbia un gestore della scalabilità automatica denominato example-autoscaler con una policy di scalabilità automatica esistente.

PATCH https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-east1-b/autoscalers?autoscaler=example-autoscaler

{
  "autoscalingPolicy": {
    "minNumReplicas": 0,
    "maxNumReplicas": 30,
    "scalingSchedules": {
      "workday-capacity": {
        "minRequiredReplicas": 10,
        "schedule": "30 8 * * Mon-Fri",
        "durationSec": 30600,
        "description": "Have at least 10 VMs every Monday through Friday from 8:30 AM to 5 PM UTC"
      }
    }
  }
}

Per utilizzare questo esempio per un MIG a livello di regione, crea una richiesta simile utilizzando il metodo regionAutoscalers.patch e specifica una regione anziché una zona.

Programmazione una tantum

Questa chiamata API di esempio crea una pianificazione che viene eseguita una sola volta. Questa pianificazione specifica che vuoi che un MIG zonale contenga almeno 30 istanze VM tutto il giorno del 30 gennaio 2030 per il fuso orario America/New_York. Questa chiamata API presuppone che tu abbia un progetto esistente denominato example-project con un MIG a livello di zona che si trova in us-east1-b e che abbia un gestore della scalabilità automatica denominato example-autoscaler con una policy di scalabilità automatica esistente.

PATCH https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-east1-b/autoscalers?autoscaler=example-autoscaler

{
  "autoscalingPolicy": {
    "scalingSchedules": {
      "example-onetime-schedule": {
        "minRequiredReplicas": 30,
        "schedule": "0 0 30 1 * 2030",
        "timeZone": "America/New_York",
        "durationSec": 86400,
        "description": "Schedule a minimum of 30 VMs all day for January 30, 2030"
      }
    }
  }
}

Per utilizzare questo esempio per un MIG a livello di regione, crea una richiesta simile utilizzando il metodo regionAutoscalers.patch e specifica una regione anziché una zona.

Più pianificazioni

Questa chiamata API di esempio utilizza il metodo autoscalers.patch per due pianificazioni, workday-capacity e january-30-2030-schedule, in una singola chiamata. Questa chiamata API presuppone che tu abbia un progetto esistente denominato example-project con un MIG a livello di zona che si trova in us-east1-b e che abbia un gestore della scalabilità automatica denominato example-autoscaler con una policy di scalabilità automatica esistente.

PATCH https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-east1-b/autoscalers?autoscaler=example-autoscaler

{
  "autoscalingPolicy": {
    "scalingSchedules": {
      "workday-capacity": {
        "minRequiredReplicas": 10,
        "schedule": "30 8 * * Mon-Fri",
        "durationSec": 30600,
        "description": "Have at least 10 VMs every Monday through Friday from 8:30 AM to 5 PM UTC"
      },
      "january-30-2030-schedule": {
        "minRequiredReplicas": 30,
        "schedule": "0 0 30 1 * 2030",
        "timeZone": "America/New_York",
        "durationSec": 86400,
        "description": "Schedule a minimum of 30 VMs all day for January 30, 2030"
      }
    }
  }
}

Per utilizzare questo esempio per un MIG a livello di regione, crea una richiesta simile utilizzando il metodo regionAutoscalers.patch e specifica una regione anziché una zona.

Una volta creato un programma, potrebbe essere necessario attendere alcuni minuti per visualizzare le relative informazioni sullo stato.

Elenco delle pianificazioni di scalabilità

Puoi visualizzare un elenco delle pianificazioni per un gruppo di istanze gestite. L'elenco mostra le impostazioni e le informazioni sullo stato di ogni pianificazione.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic sul nome di un MIG nell'elenco.

  3. Fai clic su Modifica.

  4. Puoi visualizzare il numero totale di pianificazioni in Pianificazioni di scalabilità automatica. Fai clic su Gestisci pianificazioni per visualizzare l'elenco delle pianificazioni di scalabilità esistenti.

Al termine, puoi chiudere l'elenco facendo clic su Fine.

gcloud

Per ottenere i dettagli di un MIG, inclusi le configurazioni e gli stati delle relative pianificazioni di scalabilità, utilizza il comando gcloud compute instance-groups managed describe.

gcloud compute instance-groups managed describe MIG_NAME \
    [--zone=ZONE | --region=REGION]

Sostituisci quanto segue:

  • MIG_NAME: il nome di un MIG con una policy di scalabilità automatica esistente.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il MIG.

Eventuali pianificazioni di scalabilità per il tuo MIG sono elencate nell'output, come mostrato nell'esempio seguente.

...
autoscalingPolicy:
  ...
  maxNumReplicas: 30
  minNumReplicas: 0
  ...
  scalingSchedules:
    example-onetime-schedule:
      description: Schedule a minimum of 30 VMs all day for January 30, 2030
      disabled: false
      durationSec: 86400
      minRequiredReplicas: 30
      schedule: 0 0 30 1 * 2030
      timeZone: America/New_York
    workday-capacity:
      description: Have at least 10 VMs every Monday through Friday from 8:30
        AM to 5 PM UTC
      disabled: false
      durationSec: 30600
      minRequiredReplicas: 10
      schedule: 30 8 * * Mon-Fri
      timeZone: UTC
...
scheduledScalingStatus:
    example-onetime-schedule:
        state: READY
        nextStartTime: '2030-01-30T00:00:00.000-05:00'
        lastStartTime: ''
    workday-capacity:
        state: READY
        nextStartTime: '2020-11-04T08:30:00.000-00:00'
        lastStartTime: '2020-11-03T08:30:00.000-00:00'
...

REST

Per ottenere i dettagli di un gestore della scalabilità automatica, incluse le configurazioni e gli stati delle relative pianificazioni di scalabilità, utilizza il metodo autoscalers.get per un MIG a livello di zona o il metodo regionAutoscalers.get per un MIG a livello di regione.

Ad esempio, esegui la seguente chiamata per elencare le pianificazioni per un MIG a livello di zona con una policy di scalabilità automatica esistente:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/autoscalers?autoscaler=AUTOSCALER_NAME

Sostituisci quanto segue:

  • PROJECT: il tuo ID progetto.
  • ZONE: la zona in cui si trova il MIG.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del MIG.

Eventuali pianificazioni di scalabilità per il tuo MIG sono elencate nell'output, come mostrato nell'esempio seguente.

{
  ...
  "autoscalingPolicy": {
    ...
    "minNumReplicas": 0,
    "maxNumReplicas": 30,
    ...
    "scalingSchedules": {
      "example-onetime-schedule": {
        "minRequiredReplicas": 30,
        "schedule": "0 0 30 1 * 2030",
        "timeZone": "America/New_York",
        "durationSec": 86400,
        "description": "Schedule a minimum of 30 VMs all day for January 30, 2030",
        "disabled": false
      },
      "workday-capacity": {
        "minRequiredReplicas": 10,
        "schedule": "30 8 * * Mon-Fri",
        "timeZone": "",
        "durationSec": 30600,
        "description": "Have at least 10 VMs every Monday through Friday from 8:30 AM to 5 PM UTC",
        "disabled": false
      },
      ...
    }
  },
  "scheduledScalingStatus": {
    "example-onetime-schedule": {
      "state": "READY",
      "nextStartTime": "2030-01-30T00:00:00.000-05:00",
      "lastStartTime": ''
    },
    "workday-capacity": {
      "state": "READY",
      "nextStartTime": "2020-11-04T08:30:00.000",
      "lastStartTime": "2020-11-03T08:30:00.000"
    },
    ...
  },
...
}

Modificare una pianificazione di scalabilità

Puoi modificare una pianificazione dello scaling esistente per cambiarne le impostazioni, ad eccezione del nome della pianificazione. Puoi anche disattivare o riattivare un programma di scalabilità.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic sul nome di un MIG nell'elenco.

  3. Fai clic su Modifica.

  4. Puoi visualizzare il numero totale di pianificazioni in Pianificazioni di scalabilità automatica. Fai clic su Gestisci pianificazioni per visualizzare l'elenco delle pianificazioni di scalabilità esistenti.

  5. Seleziona la casella di controllo relativa alla pianificazione dello scaling da modificare.

  6. Nella parte superiore del riquadro Programmazioni di scalabilità, fai clic su Modifica.

  7. Nel nuovo riquadro Modifica pianificazione dello scaling, modifica i campi che vuoi cambiare. Per saperne di più su ogni campo, vedi Creare una pianificazione dello scaling.

  8. Al termine, fai clic su Salva.

Potresti dover attendere qualche minuto prima che le modifiche abbiano effetto. Puoi monitorare lo stato delle pianificazioni facendo clic su Aggiorna nella parte superiore del riquadro Pianificazioni di scalabilità.

Al termine, puoi chiudere l'elenco facendo clic su Fine.

gcloud

Per aggiornare una pianificazione di scalabilità esistente, utilizza il comando gcloud compute instance-groups managed update-autoscaling. Utilizza il flag --update-schedule per indicare il nome della pianificazione da aggiornare. Includi gli altri flag necessari per le modifiche.

gcloud compute instance-groups managed update-autoscaling MIG_NAME \
    --update-schedule=SCHEDULE_NAME \
    [--schedule-cron="CRON_EXPRESSION"] \
    [--schedule-duration-sec=DURATION] \
    [--schedule-time-zone="TIME_ZONE"] \
    [--schedule-min-required-replicas=MIN_REQ_REPLICAS] \
    [--schedule-description="DESCRIPTION"] \
    [--zone=ZONE | --region=REGION]

Sostituisci quanto segue:

  • MIG_NAME: il nome di un MIG con una pianificazione di scalabilità esistente.
  • SCHEDULE_NAME: il nome della pianificazione di scalabilità esistente.
  • CRON_EXPRESSION: facoltativo: la nuova ora di inizio e la ricorrenza di questa pianificazione formattata come espressione cron.
  • DURATION: facoltativo: la nuova durata, in secondi, per cui questa pianificazione è attiva.
  • TIME_ZONE: Facoltativo: il nuovo fuso orario IANA per l'ora di inizio della pianificazione, ad esempio Europe/Paris. Il valore predefinito è UTC.
  • MIN_REQ_REPLICAS: (facoltativo) il nuovo numero di istanze minime richieste che questa pianificazione fornisce quando è attiva.
  • DESCRIPTION: (Facoltativo) una nuova descrizione della pianificazione di scalabilità.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il MIG.

REST

Per aggiornare le pianificazioni della scalabilità esistenti per un MIG, utilizza il metodo autoscalers.patch per un MIG a livello di zona o il metodo regionAutoscalers.patch per un MIG a livello di regione.

Ad esempio, esegui la seguente chiamata per modificare una pianificazione per un MIG a livello di zona che ha un criterio di scalabilità automatica esistente:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/autoscalers?autoscaler=AUTOSCALER_NAME

{
  "autoscalingPolicy": {
    "scalingSchedules": {
      "SCHEDULE_NAME": {
        "minRequiredReplicas": MIN_REQ_REPLICAS,
        "schedule": "CRON_EXPRESSION",
        "timeZone": "TIME_ZONE",
        "durationSec": DURATION,
        "description": "DESCRIPTION"
      },
      ...
    }
  }
}

Sostituisci quanto segue:

  • PROJECT: il tuo ID progetto.
  • ZONE: la zona in cui si trova il MIG.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del MIG.
  • SCHEDULE_NAME: il nome della pianificazione di scalabilità esistente.
  • MIN_REQ_REPLICAS: (facoltativo) il nuovo numero di istanze minime richieste che questa pianificazione fornisce quando è attiva.
  • CRON_EXPRESSION: facoltativo: la nuova ora di inizio e la ricorrenza di questa pianificazione formattata come espressione cron.
  • TIME_ZONE: Facoltativo: il nuovo fuso orario IANA per l'ora di inizio della pianificazione, ad esempio Europe/Paris. Il valore predefinito è UTC.
  • DURATION: facoltativo: la nuova durata, in secondi, per cui questa pianificazione è attiva.
  • DESCRIPTION: (Facoltativo) una nuova descrizione della pianificazione di scalabilità.

Disabilitare e riabilitare una pianificazione di scalabilità

Le pianificazioni di scalabilità sono attive per impostazione predefinita. Disattiva una programmazione se vuoi impedire che sia attiva, ma vuoi salvare la sua configurazione. Riattiva una pianificazione disattivata quando vuoi utilizzarla di nuovo.

Se non devi archiviare la pianificazione o hai raggiunto il limite di 128 pianificazioni per questo MIG, elimina la pianificazione. Se vuoi disattivare la scalabilità automatica per un MIG, disattiva la scalabilità automatica.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic sul nome di un MIG nell'elenco.

  3. Fai clic su Modifica.

  4. Puoi visualizzare il numero totale di pianificazioni in Pianificazioni di scalabilità automatica. Fai clic su Gestisci pianificazioni per visualizzare l'elenco delle pianificazioni di scalabilità esistenti.

  5. Seleziona le caselle di controllo delle pianificazioni di scalabilità da disattivare o attivare.

  6. Disattiva o attiva le pianificazioni selezionate.

    • Per disabilitare le pianificazioni selezionate:
      1. Nella parte superiore del riquadro Programmazioni di scalabilità, fai clic su Disattiva.
      2. Nella nuova finestra di dialogo Disabilita pianificazioni, fai clic su Disabilita.
    • Per abilitare le pianificazioni selezionate:
      1. Nella parte superiore del riquadro Programmazioni di scalabilità, fai clic su Attiva.
      2. Nella nuova finestra di dialogo Attiva pianificazioni, fai clic su Attiva.

Potresti dover attendere qualche minuto prima che le modifiche abbiano effetto. Puoi monitorare lo stato delle pianificazioni facendo clic su Aggiorna nella parte superiore del riquadro Pianificazioni di scalabilità.

Al termine, puoi chiudere l'elenco facendo clic su Fine.

gcloud

Per disattivare o riattivare una pianificazione di scalabilità, utilizza il comando gcloud compute instance-groups managed update-autoscaling.

Disattivare una pianificazione di scalabilità

Per disattivare una pianificazione di scalabilità, utilizza il flag --disable-schedule.

gcloud compute instance-groups managed update-autoscaling MIG_NAME \
    --disable-schedule=SCHEDULE_NAME \
    [--zone=ZONE | --region=REGION]

Sostituisci quanto segue:

  • MIG_NAME: il nome di un MIG con una pianificazione di scalabilità esistente.
  • SCHEDULE_NAME: il nome della pianificazione di scalabilità che vuoi disattivare.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il MIG.

Riattivazione di una pianificazione di scalabilità

Per riattivare una pianificazione della scalabilità, utilizza il flag --enable-schedule.

gcloud compute instance-groups managed update-autoscaling MIG_NAME \
    --enable-schedule=SCHEDULE_NAME \
    [--zone=ZONE | --region=REGION]

Sostituisci quanto segue:

  • MIG_NAME: il nome di un MIG con una pianificazione di scalabilità esistente.
  • SCHEDULE_NAME: il nome della pianificazione di scalabilità che vuoi riattivare.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il MIG.

REST

Per disattivare o riattivare le pianificazioni di scalabilità per un MIG, utilizza il metodo autoscalers.patch per un MIG a livello di zona o il metodo regionAutoscalers.patch per un MIG a livello di regione.

Disabilitazione delle pianificazioni di scalabilità

Per ogni pianificazione di scalabilità da disattivare, imposta il campo disabled su true. Ad esempio, esegui la seguente chiamata per disattivare una pianificazione per un MIG a livello di zona con un criterio di scalabilità automatica esistente:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/autoscalers?autoscaler=AUTOSCALER_NAME

{
  "autoscalingPolicy": {
    "scalingSchedules": {
      "SCHEDULE_NAME": {
        "disabled": true
      },
      ...
    }
  }
}

Sostituisci quanto segue:

  • PROJECT: il tuo ID progetto.
  • ZONE: la zona in cui si trova il MIG.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del MIG.
  • SCHEDULE_NAME: il nome della pianificazione di scalabilità che vuoi disattivare.

Riattivazione delle pianificazioni di scalabilità

Per ogni programma di scalabilità da riattivare, imposta il campo disabled su false. Ad esempio, esegui la seguente chiamata per riattivare una pianificazione per un MIG a livello di zona con una policy di scalabilità automatica esistente:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/autoscalers?autoscaler=AUTOSCALER_NAME

{
  "autoscalingPolicy": {
    "scalingSchedules": {
      "SCHEDULE_NAME": {
        "disabled": false
      },
      ...
    }
  }
}

Sostituisci quanto segue:

  • PROJECT: il tuo ID progetto.
  • ZONE: la zona in cui si trova il MIG.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del MIG.
  • SCHEDULE_NAME: il nome della pianificazione di scalabilità che vuoi riattivare.

Eliminazione di una pianificazione di scalabilità

Rimuovi le pianificazioni di scalabilità da un MIG eliminandole. Elimina le pianificazioni che non ti servono più, ad esempio quelle con lo OBSOLETE stato.

Una policy di scalabilità automatica deve sempre avere almeno un indicatore di scalabilità. Se non esiste un altro indicatore di scalabilità automatica, non puoi eliminare tutte le pianificazioni di scalabilità senza eliminare l'intera policy di scalabilità automatica. Se vuoi eliminare tutte le pianificazioni di scalabilità, ma mantenere il criterio di scalabilità automatica, devi aggiungere almeno un indicatore di scalabilità prima di eliminare tutte le pianificazioni.

Se vuoi impedire l'attivazione di una programmazione e salvarla per un utilizzo futuro, disattivala. Se vuoi eliminare la configurazione della scalabilità automatica per un MIG, elimina il gestore della scalabilità automatica.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic sul nome di un MIG nell'elenco.

  3. Fai clic su Modifica.

  4. Puoi visualizzare il numero totale di pianificazioni in Pianificazioni di scalabilità automatica. Fai clic su Gestisci pianificazioni per visualizzare l'elenco delle pianificazioni di scalabilità esistenti.

  5. Seleziona le caselle di controllo delle pianificazioni di scalabilità da eliminare.

  6. Nella parte superiore del riquadro Programmazioni di scalabilità, fai clic su Elimina.

  7. Nella nuova finestra di dialogo Elimina pianificazioni, fai clic su Elimina.

Potresti dover attendere qualche minuto prima che le modifiche abbiano effetto. Puoi monitorare lo stato delle pianificazioni facendo clic su Aggiorna nella parte superiore del riquadro Pianificazioni di scalabilità.

Al termine, puoi chiudere l'elenco facendo clic su Fine.

gcloud

Per eliminare una pianificazione dello scale, utilizza il comando gcloud compute instance-groups managed update-autoscaling con il flag --remove-schedule.

gcloud compute instance-groups managed update-autoscaling MIG_NAME \
    --remove-schedule=SCHEDULE_NAME \
    [--zone=ZONE | --region=REGION]

Sostituisci quanto segue:

  • MIG_NAME: il nome di un MIG con una pianificazione di scalabilità esistente.
  • SCHEDULE_NAME: il nome della pianificazione di scalabilità che vuoi eliminare.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il MIG.

REST

Per eliminare le pianificazioni di scalabilità per un MIG, utilizza il metodo autoscalers.patch per un MIG a livello di zona o il metodo regionAutoscalers.patch per un MIG a livello di regione. Per ogni pianificazione di scalabilità da eliminare, imposta la configurazione della pianificazione su null

Ad esempio, esegui la seguente chiamata per eliminare una pianificazione per un MIG a livello di zona con un criterio di scalabilità automatica esistente:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/autoscalers?autoscaler=AUTOSCALER_NAME

{
  "autoscalingPolicy": {
    "scalingSchedules": {
      "SCHEDULE_NAME": null
      ...
    }
  }
}

Sostituisci quanto segue:

  • PROJECT: il tuo ID progetto.
  • ZONE: la zona in cui si trova il MIG.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del MIG.
  • SCHEDULE_NAME: il nome della pianificazione di scalabilità che vuoi eliminare.

Concetti

Questa sezione descrive i concetti relativi alla creazione e all'utilizzo delle pianificazioni di scalabilità, incluse le impostazioni di pianificazione e i dettagli sul loro funzionamento.

Impostazioni della pianificazione di scalabilità

Quando crei e modifichi le pianificazioni di scalabilità per un MIG, ogni pianificazione di scalabilità contiene le seguenti impostazioni:

  • Numero minimo di istanze richieste: il numero di VM necessarie nel MIG quando questa pianificazione di scalabilità è attiva.

    Quando questa pianificazione è attiva, il MIG ha almeno questo numero di VM, ma potrebbe averne di più a seconda delle altre impostazioni di scalabilità automatica. Inoltre, la dimensione del MIG è sempre limitata dal numero minimo e massimo di istanze configurato nelle impostazioni di scalabilità automatica del MIG.

  • Fuso orario: il fuso orario IANA basato sulla località per interpretare l'ora di inizio della pianificazione.

    Un elenco dei valori disponibili è definito dal database dei fusi orari IANA, ad esempio Europe/Paris. Se non viene fornito alcun fuso orario, viene utilizzato UTC per impostazione predefinita. Alcuni fusi orari IANA osservano l'ora legale. Per scoprire in che modo l'ora legale influisce sulle pianificazioni di scalabilità, consulta Ora legale.

  • Durata: il periodo di tempo durante il quale vuoi che la pianificazione dello scaling sia attiva.

    La pianificazione dello scaling è attiva dall'ora di inizio per la durata configurata. La durata minima è di 5 minuti. Durante questo periodo, il gestore della scalabilità automatica scala il MIG in modo che abbia almeno tante VM quante definite dalle istanze richieste della pianificazione. Al termine della durata specificata, se la capacità attuale non è più necessaria, il gestore della scalabilità automatica inizia a rimuovere le istanze VM dopo un periodo di stabilizzazione di 10 minuti e seguendo eventuali controlli di scale in configurati.

    Le pianificazioni di scalabilità sono bidirezionali. Le VM vengono rimosse all'ora di arresto specificata e le dimensioni del gruppo vengono ridotte alle dimensioni minime del gruppo impostate, a meno che tu non abbia specificato altri indicatori di scalabilità automatica.

Quando utilizzi Google Cloud CLI o REST, devi configurare l'ora di inizio e la ricorrenza di una pianificazione di scalabilità utilizzando un'espressione cron. Tuttavia, quando utilizzi la console Google Cloud , puoi configurare l'ora di inizio e la ricorrenza di una pianificazione utilizzando un'espressione cron o le seguenti impostazioni:

  • Ora di inizio: l'ora del giorno in cui vuoi che la pianificazione dello scaling diventi attiva.

    All'ora di inizio, la pianificazione di scalabilità inizia a creare VM ogni volta che le dimensioni del MIG sono inferiori alle istanze richieste dalla pianificazione. Imposta l'ora di inizio in modo da lasciare abbastanza tempo per l'avvio e l'inizializzazione delle nuove VM. Ad esempio, se il tuo carico di lavoro richiede 10 minuti dalla creazione della VM per iniziare la pubblicazione, imposta l'ora di inizio 10 minuti prima dell'ora in cui vuoi che le VM siano pronte.

  • Ricorrenza: se e con quale frequenza viene ripetuta la pianificazione dello scaling, come definito dalle seguenti opzioni:

    • Una volta: una programmazione una tantum che inizia solo alla data selezionata.
    • Ogni giorno: una pianificazione ripetuta che inizia ogni giorno.
    • Ogni settimana: una pianificazione ripetuta che inizia ogni settimana nei giorni della settimana selezionati, ad esempio dal lunedì al venerdì.
    • Ogni mese: una pianificazione ripetuta che inizia ogni mese nei giorni del mese selezionati, ad esempio il primo giorno di ogni mese. Gli ultimi giorni del mese (dal 29 al 31) sono effettivi solo durante i mesi in cui si verificano.

Espressioni cron

L'ora di inizio e la ricorrenza di una pianificazione di scalabilità possono essere configurate utilizzando un'espressione cron. Cron è uno strumento di pianificazione dei job basato sul tempo utilizzato originariamente nei sistemi operativi dei computer di tipo Unix.

Sintassi

Un'espressione cron è una stringa composta da cinque o sei campi separati da spazi vuoti. La tabella seguente definisce i campi di un'espressione cron e i possibili valori per ciascun campo.

Minuto Ora Giorno del mese Mese Giorno della settimana Anno (facoltativo)
0-59 0-23 1-31 1-12 (gennaio-dicembre)

dove 1=Jan, 2=Feb, ... 12=Dec
0-6 (domenica-sabato) o 1-7 (lunedì-domenica)

dove 0=Sun, 1=Mon, ... 6=Sat, 7=Sun
2000-2036

o ogni anno (*) se non fornito

Oltre a utilizzare questi valori, ogni campo di un'espressione cron può utilizzare anche caratteri speciali:

Carattere speciale Significato Esempio
* tutte Se i campi giorno del mese, giorno della settimana e anno (se incluso) sono impostati su *, allora la pianificazione inizia ogni giorno.
- intervallo Se il campo del giorno della settimana è impostato su 1-5 o Mon-Fri, la pianificazione inizia ogni settimana dal lunedì al venerdì.
, list Se il campo del mese è impostato su 5,7,9 o May,Jul,Sep, la pianificazione inizia ogni maggio, luglio e settembre.
/ passaggio Se il campo del mese è impostato su */3, la pianificazione inizia durante il primo mese e ogni tre mesi successivi: gennaio, aprile, luglio e ottobre.

Quando scrivi un'espressione cron, tieni presente quanto segue:

  • Lo spazio bianco viene utilizzato per separare i campi di un'espressione cron. Ricorda di non aggiungere spazi bianchi aggiuntivi in un campo che utilizza caratteri speciali.
  • Quando specifichi sia un giorno della settimana sia un giorno del mese (quando nessuno dei campi è impostato su *), la pianificazione utilizza l'unione di questi valori, non l'intersezione. Ad esempio, la pianificazione 0 8 1 * Mon inizia alle 8:00 ogni lunedì e il primo giorno di ogni mese. Questa programmazione non inizia alle 8:00 solo il lunedì che coincide anche con il primo giorno del mese.
  • Puoi utilizzare zero o più caratteri speciali in ogni campo di un'espressione cron. Ad esempio, se vuoi che una pianificazione inizi ogni mese tranne maggio, puoi impostare il campo del mese su 1-4,6-12 (un elenco di due intervalli senza spazi bianchi).
  • Quando utilizzi gli intervalli (-), non puoi utilizzare 0-7 o Sun-Sun per il campo del giorno della settimana. Per specificare tutti i giorni della settimana, utilizza invece *, 0-6, 1-7, Sun-Sat o Mon-Sun.
  • Quando utilizzi i passaggi (/), ricorda che le espressioni cron non hanno stato, quindi i passaggi a volte possono essere irregolari. Ad esempio, se vuoi che una pianificazione venga eseguita ogni 6 ore, puoi impostare il campo delle ore su */6, che si comporta allo stesso modo dell'elenco di ogni multiplo valido di 6 (0,6,12,18). I passaggi sono uniformi perché le 24 ore sono divise in parti di 6 ore. Tuttavia, se imposti il campo delle ore su */7, la pianificazione non inizierà sempre a intervalli di 7 ore. */7 si comporta come se elencasse ogni multiplo valido di 7 (0,7,14,21), il che significa che la pianificazione può iniziare alle 00:00, alle 07:00, alle 14:00 e alle 21:00.

Programmazioni ripetute e programmazioni una tantum

A seconda di come scrivi l'espressione cron, la pianificazione potrebbe essere eseguita una sola volta o ripetersi periodicamente. Per creare una pianificazione che viene eseguita una sola volta, devi specificare il campo anno. Ad esempio, l'espressione cron 0 0 30 1 * 2030 configura una pianificazione che viene avviata una sola volta, a mezzanotte del 30 gennaio 2030. Per creare una pianificazione che si ripete, utilizza caratteri speciali per descrivere quando deve ripetersi. Ad esempio, l'espressione cron 30 8 * * Mon-Fri configura una pianificazione che inizia alle 8:30 ogni lunedì, martedì, mercoledì, giovedì e venerdì.

Informazioni sullo stato della pianificazione

Elenca le pianificazioni di scalabilità per visualizzarne lo stato. Una pianificazione dello scaling ha le seguenti informazioni sullo stato:

  • Stato (state): lo stato attuale della pianificazione dello scaling, rappresentato da uno dei seguenti stati:
    • Pronto (READY): questa pianificazione è pronta, ma non ancora attiva. Il gestore della scalabilità automatica è in attesa della prossima occorrenza di questa pianificazione.
    • Attivo (ACTIVE): questa pianificazione è attiva. Il gestore della scalabilità automatica sta tentando di fornire a questo MIG almeno le istanze richieste specificate da questa pianificazione.
    • Obsoleto (OBSOLETE): questa pianificazione è scaduta e non sarà più attiva. Il gestore della scalabilità automatica ignora questa pianificazione perché non sono previste occorrenze future.
    • Disabilitata (DISABLED): questa pianificazione non può essere attiva perché è stata disabilitata manualmente. Lo scalatore automatico ignora questa pianificazione finché non viene riattivata.
  • Ultima occorrenza (lastStartTime): il timestamp dell'ultima volta che questa pianificazione dello scaling è diventata attiva. Si tratta della data e dell'ora effettive dell'ultima attivazione. Ad esempio, se hai una pianificazione di scalabilità disattivata con una ricorrenza giornaliera, un'ora di inizio alle 10:00 e una durata di 2 ore e riattivi la pianificazione alle 11:00 di oggi, allora lastStartTime è le 11:00 di oggi.
  • Prossima occorrenza (nextStartTime): il timestamp della prossima volta che questa pianificazione è impostata per diventare attiva.

Programmazioni sovrapposte

A seconda dell'ora di inizio, della ricorrenza, della durata e del fuso orario, due o più programmazioni di scalabilità potrebbero sovrapporsi. Quando è attiva più di una pianificazione, il gestore della scalabilità automatica utilizza il numero maggiore di istanze VM richieste da tutte le pianificazioni di scalabilità attive. In questo modo puoi assicurarti che ci sia sempre capacità sufficiente per soddisfare le esigenze di qualsiasi programma attivo. Ad esempio, se hai una pianificazione che si ripete ogni giorno dalle 8:00 alle 10:00 e richiede almeno 10 VM, ma hai anche una pianificazione una tantum per l'intera giornata che richiede almeno 20 VM, il gestore della scalabilità automatica esegue lo scale up del MIG fino ad almeno 20 VM in quel giorno. Questa opzione è utile quando hai requisiti di capacità regolari e ricorrenti, ma a volte hai bisogno di più capacità per gestire eventi una tantum. Questo comportamento ti consente di pianificare la capacità senza preoccuparti che venga sostituita da altre pianificazioni con requisiti di VM inferiori.

Inoltre, un gestore della scalabilità automatica fornisce sempre il maggior numero di istanze VM richieste da qualsiasi indicatore di scalabilità automatica attivo. Per ulteriori informazioni, vedi Utilizzare una policy di scalabilità automatica con più indicatori.

Ora legale

I dettagli dell'ora legale (DST) variano in base al fuso orario IANA basato sulla località della pianificazione di scalabilità. Se il fuso orario della pianificazione osserva l'ora legale, l'ora di inizio della pianificazione viene regolata automaticamente per rimanere sincronizzata con l'ora della località selezionata. Ad esempio, se crei una pianificazione di scalabilità che inizia ogni giorno alle 7:00 per il fuso orario America/New_York, questa pianificazione inizia ogni volta che sono le 7:00 a New York, utilizzando l'ora legale della costa orientale o l'ora solare della costa orientale a seconda dei casi.

Le pianificazioni di scalabilità vengono sempre eseguite per l'intera durata configurata, ma potrebbero avere orari di inizio e fine leggermente diversi nei giorni in cui viene applicata l'ora legale. Ciò accade perché i passaggi all'ora legale hanno periodi di transizione: un periodo di tempo che viene saltato il primo giorno dell'ora legale e che si verifica due volte l'ultimo giorno dell'ora legale. Ad esempio, se l'ora legale per il tuo fuso orario inizia alle 2:00 e ha una transizione di 1 ora, l'orologio cambia dalle 1:59:59 alle 3:00, quindi l'intervallo di tempo dalle 2:00 alle 2:59:59 viene saltato. Se l'ora legale per quel fuso orario termina alle 2:00, l'orologio passa dalle 2:59:59 alle 2:00, quindi l'intervallo di tempo dalle 2:00 alle 2:59:59 viene ripetuto. Le seguenti affermazioni presuppongono che il fuso orario per la pianificazione utilizzi una transizione di 1 ora per l'ora legale.

Il primo giorno dell'ora legale (quando viene saltata un'ora), le pianificazioni di scalabilità subiscono le seguenti modifiche:

  • Le pianificazioni attive durante l'ora saltata continuano per tutta la loro durata, ma per compensare l'ora saltata, queste pianificazioni terminano 1 ora dopo l'ora di fine nei giorni senza transizioni all'ora legale. Normalmente, l'ora di fine di una pianificazione è la somma dell'ora di inizio e della durata della pianificazione. Tuttavia, se l'ora legale salta un'ora mentre una programmazione è attiva e la durata e l'ora di inizio rimangono costanti, l'ora di fine della programmazione è un'ora in più rispetto alla somma dell'ora di inizio e della durata della programmazione.
  • Le pianificazioni configurate per iniziare durante l'ora saltata iniziano anche un'ora dopo l'ora di inizio nei giorni senza transizioni all'ora legale.

L'ultimo giorno dell'ora legale (quando l'ora viene ripetuta), le pianificazioni di scalabilità subiscono le seguenti modifiche:

  • Le pianificazioni attive durante l'ora ripetuta continuano per tutta la loro durata, ma per compensare l'ora ripetuta, terminano un'ora prima rispetto all'ora di fine nei giorni senza transizioni all'ora legale. Normalmente, l'ora di fine di una pianificazione è la somma dell'ora di inizio e della durata della pianificazione. Tuttavia, se l'ora legale si ripete per 1 ora mentre una programmazione è attiva e la durata e l'ora di inizio rimangono costanti, l'ora di fine della programmazione è 1 ora in meno rispetto alla somma dell'ora di inizio e della durata della programmazione.
  • Le pianificazioni configurate per iniziare durante il periodo di transizione iniziano all'ora configurata, ma non vengono riavviate durante la seconda occorrenza ripetuta dell'ora di inizio.

La maggior parte dei fusi orari che osservano l'ora legale utilizza un periodo di transizione di un'ora. Tuttavia, se il fuso orario della pianificazione utilizza un periodo di transizione diverso, ad esempio il fuso orario Australia/Lord_Howe, che utilizza transizioni di 30 minuti, puoi aspettarti lo stesso comportamento. Basta sostituire 1 ora con l'ora di transizione all'ora legale pertinente.

Passaggi successivi