Scalabilità in base alle pianificazioni


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

Questo documento descrive come creare, elencare, modificare, disattivare, riattivare ed eliminare le pianificazioni di scalabilità per un gruppo di istanze gestite esistente. Per maggiori informazioni sui gruppi di istanze gestite e sulla scalabilità automatica, consulta Creazione di gruppi di istanze gestite e gruppi di istanze con scalabilità automatica.

Prima di iniziare

  • Scopri di più sui fondamenti del gestore della scalabilità automatica.
  • Se non l'hai ancora 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. Terraform

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

      1. Install the Google Cloud CLI.
      2. To initialize the gcloud CLI, run the following command:

        gcloud init
      3. 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.

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

      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.

Limitazioni

Le pianificazioni di scalabilità sono limitate dai limiti per tutti i gestori della scalabilità automatica nonché dai seguenti limiti:

  • Puoi avere fino a 128 pianificazioni di scalabilità per gruppo di istanze gestite. Per mitigare questo limite, elimina le pianificazioni di scalabilità con OBSOLETE e che non prevedi di eseguirlo 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 gruppo di istanze gestite. Per ulteriori informazioni, consulta 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 gruppo di istanze gestite nell'elenco.

  3. Fai clic su Modifica.

  4. Se non esiste una configurazione di scalabilità automatica:

    1. In Scalabilità automatica, fai clic su Configura la 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 tuo gruppo di istanze gestite solo in base alle pianificazioni, elimina la metrica di utilizzo della CPU predefinita dopo aver aggiunto le pianificazioni.
  5. Per ogni pianificazione 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 Numero minimo di istanze richieste che questa pianificazione indica quando è attiva.
    5. Specifica l'ora di inizio e la ricorrenza della pianificazione di scalabilità utilizzando l'interfaccia predefinita o, se vuoi configurare una pianificazione con ora di inizio e ricorrenza più complesse, utilizzando un espressione cron.
      • Interfaccia predefinita
        1. Nel campo Ora inizio, digita o fai clic su per selezionare un'ora di inizio.
        2. Nel campo Ricorrenza, seleziona la frequenza della 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 di inizio della 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 selezioni 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 di scalabilità a un gruppo di istanze gestite che non ha un criterio 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 di scalabilità a un gruppo di istanze gestite con un criterio di scalabilità automatica esistente, utilizza la 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 gruppo di istanze gestite con un criterio di scalabilità automatica esistente.
  • MIN_NUM_REPLICAS: Facoltativo: il numero minimo di istanze richieste per questo gruppo di istanze gestite. Google consiglia di impostare questo valore sul numero minimo di istanze di cui hai bisogno quando non è attiva alcuna pianificazione di scalabilità. Se imposti questo valore su 0 e configurare la scalabilità automatica con le pianificazioni o le metriche di Cloud Monitoring. con singole serie temporali per gruppo, il gruppo di istanze gestite può fare lo scale in fino a 0 VM. Scalabilità a 0 VM non è possibile quando il criterio ha altri indicatori, richiedono i dati di una singola VM, ad esempio l'utilizzo della CPU.
  • MAX_NUM_REPLICAS: il numero massimo di istanze che possono essere fornite per questo gruppo di istanze gestite. Facoltativo per un gruppo di istanze gestite con un criterio di scalabilità automatica esistente.
  • SCHEDULE_NAME: il nome del nuovo pianificazione della scalabilità.
  • CRON_EXPRESSION: l'ora di inizio e ricorrenza di questa pianificazione formattata come espressione cron.
  • DURATION: la durata, in secondi, che questa pianificazione sia attiva.
  • TIME_ZONE: Facoltativo: il campo Fuso orario IANA per l'ora di inizio della pianificazione, per esempio, Europe/Paris. Il valore predefinito è UTC.
  • MIN_REQ_REPLICAS: il numero di il numero minimo di istanze richieste questa pianificazione indica quando è attiva.
  • DESCRIPTION: Facoltativo: una descrizione della nuova pianificazione della scalabilità.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il gruppo di istanze gestite.

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

Pianificazione ricorrente

Questo comando di esempio crea una pianificazione che si ripete. Questa pianificazione specifica che il gruppo di istanze gestite deve contenere almeno 10 istanze VM ogni lunedì, martedì, mercoledì, giovedì e venerdì dalle 8:30 alle 17:00 (ora universale coordinata UTC). Questo comando usa anche i flag --min-num-replicas e --max-num-replicas per aggiornare il numero minimo di istanze è pari a 0 e il numero massimo di istanze su 30 per tutti gli indicatori di scalabilità automatica del gruppo di istanze gestite selezionato. Questo comando presuppone che tu abbia un gruppo di istanze gestite esistente denominato example-mig con un criterio 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"

Pianificazione una tantum

Questo comando di esempio crea una pianificazione che viene eseguita una volta. Questa pianificazione specifica che il tuo gruppo di istanze gestite deve contenere almeno 30 istanze VM per tutto il giorno il 30 gennaio 2030 per il fuso orario America/New_York. Questo comando presuppone che tu abbia un gruppo di istanze gestite esistente denominato example-mig che si trova in us-east1-b e ha di un criterio 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 gruppo di istanze gestite, 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 gruppo di istanze gestite, utilizza il metodo autoscalers.insert per un gruppo di istanze gestite a livello di zona o il metodo regionAutoscalers.insert per un gruppo di istanze gestite a livello di regione.

Esegui la seguente chiamata per creare una pianificazione per un gruppo di istanze gestite a livello di zona che non ha un criterio di scalabilità automatica esistente:

POST https://www.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"
      },
      ...
    }
  }
}

Creare pianificazioni per un gruppo di istanze gestite con una scalabilità automatica esistente. utilizza Metodo autoscalers.patch per un gruppo di istanze gestite a livello di zona Metodo regionAutoscalers.patch per un gruppo di istanze gestite a livello di regione.

Ad esempio, effettua la seguente chiamata per creare una pianificazione per un gruppo di istanze gestite zonale con un criterio di scalabilità automatica esistente:

PATCH https://www.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 gruppo di istanze gestite.
  • AUTOSCALER_NAME: il nome di un lo scalare automatico esistente. Spesso corrisponde al nome del gruppo di istanze gestite.
  • MIN_NUM_REPLICAS: Facoltativo: il numero minimo di istanze richieste per questo gruppo di istanze gestite. Google consiglia di impostare questo valore sul numero minimo di istanze quando non è attiva alcuna pianificazione di scalabilità. Quando imposti questo valore su 0 e configuri la scalabilità automatica con le pianificazioni o le metriche di Cloud Monitoring con singole serie temporali per gruppo, il MIG può ridurre il numero di VM a 0. Non è possibile scalare fino a 0 VM quando il criterio ha altri indicatori, che richiedono dati da una singola VM, ad esempio l'utilizzo della CPU.
  • MAX_NUM_REPLICAS: il numero massimo di istanze che possono essere fornite per questo gruppo di istanze gestite. Facoltativo per di un gruppo di istanze gestite con un criterio di scalabilità automatica esistente.
  • SCHEDULE_NAME: il nome della nuova pianificazione dell'autoscaling.
  • MIN_REQ_REPLICAS: il numero minimo di istanze richieste fornito da questa pianificazione quando è attiva.
  • CRON_EXPRESSION: l'ora di inizio e la frequenza di questa pianificazione formattata come espressione CRON.
  • TIME_ZONE: Facoltativo: il campo Fuso orario IANA per l'ora di inizio della pianificazione, per esempio, Europe/Paris. Il valore predefinito è UTC.
  • DURATION: la durata, in secondi, che questa pianificazione sia attiva.
  • DESCRIPTION: Facoltativo: una descrizione della nuova pianificazione della scalabilità.

Puoi creare pianificazioni che vengono eseguite una 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 8:30 alle 17:00 (UTC). Questa chiamata API utilizza anche i campi minNumReplicas e maxNumReplicas per aggiornare il numero minimo di istanze su 0 e il numero massimo di istanze su 30 per tutti gli indicatori di scalabilità automatica del gruppo di istanze gestite selezionato. Questa chiamata API presuppone che tu abbia un progetto esistente chiamato example-project con un gruppo di istanze gestite a livello di zona che si trova in us-east1-b e che abbia un regolatore automatico denominato example-autoscaler con un criterio di scalabilità automatica esistente.

PATCH https://www.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 gruppo di istanze gestite a livello di regione, effettua una richiesta simile utilizzando il metodo regionAutoscalers.patch e specifica una regione anziché una zona.

Pianificazione una tantum

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

PATCH https://www.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 gruppo di istanze gestite a livello di regione, effettua una richiesta simile utilizzando il metodo regionAutoscalers.patch e specifica una regione anziché una zona.

Più pianificazioni

Questo esempio di chiamata API 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 Gruppo di istanze gestite di zona situato in us-east1-b e con un gestore della scalabilità automatica denominato example-autoscaler con un criterio di scalabilità automatica esistente.

PATCH https://www.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 gruppo di istanze gestite a livello di regione, effettua una richiesta simile utilizzando il metodo regionAutoscalers.patch e specifica una regione anziché una zona.

Dopo aver creato una pianificazione, potrebbe essere necessario attendere qualche minuto prima di vederne informazioni sullo stato.

Elenco delle pianificazioni di scalabilità

Puoi visualizzare un elenco delle pianificazioni di 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 gruppo di istanze gestite nell'elenco.

  3. Fai clic su Modifica.

  4. Puoi vedere il numero totale di pianificazioni in Pianificazioni con 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 visualizzare i dettagli di un gruppo di istanze gestite, tra cui 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 gruppo di istanze gestite con un criterio di scalabilità automatica esistente.
  • ZONE o REGION. Facoltativa: la zona o la regione in cui si trova il gruppo di istanze gestite.

Sono elencate tutte le pianificazioni di scalabilità per il tuo gruppo di istanze gestite 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 visualizzare i dettagli di un gestore della scalabilità automatica, tra cui le configurazioni e gli stati delle relative pianificazioni di scalabilità, utilizza il metodo autoscalers.get per un gruppo di istanze gestite zonale o il metodo regionAutoscalers.get per un gruppo di istanze gestite a livello di regione.

Ad esempio, effettua la chiamata seguente per elencare le pianificazioni per un gruppo di istanze gestite a livello di zona per cui esiste un criterio di scalabilità automatica:

GET https://www.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 gruppo di istanze gestite.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del gruppo di istanze gestite.

Sono elencate tutte le pianificazioni di scalabilità per il tuo gruppo di istanze gestite 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 di scalabilità esistente per modificare qualsiasi impostazione, ad eccezione del nome della pianificazione. Puoi anche disattivare o riattivare una pianificazione della 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 gruppo di istanze gestite nell'elenco.

  3. Fai clic su Modifica.

  4. Puoi vedere il numero totale di pianificazioni in Pianificazioni con 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 del ridimensionamento da modificare.

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

  7. Nel nuovo riquadro Modifica pianificazione di scalabilità, modifica i campi che vuoi modificare. Per ulteriori informazioni su ogni campo, consulta Creazione di una pianificazione di scalabilità.

  8. Al termine, fai clic su Salva.

Potrebbe essere necessario attendere alcuni minuti 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 la Comando gcloud compute instance-groups managed update-autoscaling. Utilizza il flag --update-schedule per indicare il nome della pianificazione per aggiornamento. Includi gli altri flag in base alle modifiche necessarie.

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 gruppo di istanze gestite con una pianificazione di scalabilità esistente.
  • SCHEDULE_NAME: il nome dell'elemento esistente pianificazione della scalabilità.
  • CRON_EXPRESSION: facoltativi: la nuova ora di inizio e ricorrenza di questa pianificazione formattata come espressione cron.
  • DURATION: facoltativo: il nuovo duration, in secondi, in cui la programmazione è attiva.
  • TIME_ZONE: facoltativo: il nuovo Fuso orario IANA per l'ora di inizio della pianificazione, per esempio, Europe/Paris. Il valore predefinito è UTC.
  • MIN_REQ_REPLICAS: facoltativo: il nuovo numero di istanze minime richieste fornito da questa pianificazione quando è attiva.
  • DESCRIPTION: facoltativo, una nuova descrizione della pianificazione della scalabilità.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il gruppo di istanze gestite.

REST

Per aggiornare le pianificazioni di scalabilità esistenti per un gruppo di istanze gestite, utilizza il metodo Metodo autoscalers.patch per un gruppo di istanze gestite a livello di zona Metodo regionAutoscalers.patch per un gruppo di istanze gestite a livello di regione.

Ad esempio, effettua la seguente chiamata per modificare una pianificazione per un gruppo di istanze gestite zonale con un criterio di scalabilità automatica esistente:

PATCH https://www.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 gruppo di istanze gestite.
  • AUTOSCALER_NAME: il nome di un lo scalare automatico esistente. Spesso corrisponde al nome del gruppo di istanze gestite.
  • SCHEDULE_NAME: il nome dell'elemento esistente pianificazione della scalabilità.
  • MIN_REQ_REPLICAS: facoltativo: il nuovo numero di istanze minime richieste fornito da questa pianificazione quando è attiva.
  • CRON_EXPRESSION: facoltativi: la nuova ora di inizio e ricorrenza di questa pianificazione formattata come espressione cron.
  • TIME_ZONE: facoltativo, il nuovo fuso orario IANA per l'ora di inizio della programmazione, ad esempioEurope/Paris. Il valore predefinito è UTC.
  • DURATION: facoltativo. La nuova durata, in secondi, per cui questa pianificazione è attiva.
  • DESCRIPTION: facoltativo, una nuova descrizione della pianificazione della scalabilità.

Disattivare e riattivare una pianificazione di scalabilità

Le pianificazioni della scalabilità sono abilitate per impostazione predefinita. Se vuoi, disattiva una pianificazione Impedisce l'attivazione di una pianificazione ma vuoi salvarne la configurazione. Riattiva una programmazione disattivata quando vuoi usarla di nuovo.

Se non devi memorizzare la pianificazione o hai raggiunto il limite di 128 pianificazioni per questo MIG, elimina la pianificazione. Se vuoi disattivare la scalabilità automatica per un gruppo di istanze gestite, disattivala.

Console

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

    Vai a Gruppi di istanze

  2. Fai clic sul nome di un gruppo di istanze gestite dall'elenco.

  3. Fai clic su Modifica.

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

  5. Seleziona le caselle di controllo corrispondenti alle pianificazioni della scalabilità che vuoi disabilitare. o attivare.

  6. Disattiva o abilita le pianificazioni selezionate.

    • Per disattivare le pianificazioni selezionate:
      1. Nella parte superiore del riquadro Pianificazioni di scalabilità, fai clic su Disattiva.
      2. Nella nuova finestra di dialogo Disattiva pianificazioni, fai clic su Disattiva.
    • Per attivare le pianificazioni selezionate:
      1. Nella parte superiore del riquadro Pianificazioni di scalabilità, fai clic su Attiva.
      2. Nella nuova finestra di dialogo Attiva pianificazioni, fai clic su Attiva.

Potrebbe essere necessario attendere alcuni minuti prima che le modifiche abbiano effetto. Per monitorare lo stato delle pianificazioni, fai 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.

Disabilitazione di 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 gruppo di istanze gestite con una pianificazione di scalabilità esistente.
  • SCHEDULE_NAME: il nome del della scalabilità che vuoi disabilitare.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il gruppo di istanze gestite.

Riattivazione di una pianificazione di scalabilità

Per riattivare una pianificazione di 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 gruppo di istanze gestite con una pianificazione di scalabilità esistente.
  • SCHEDULE_NAME: il nome della programmazione di scalabilità che vuoi riattivare.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il gruppo di istanze gestite.

REST

Per disabilitare o riattivare le pianificazioni di scalabilità per un gruppo di istanze gestite, utilizza il metodo Metodo autoscalers.patch per un gruppo di istanze gestite a livello di zona Metodo regionAutoscalers.patch per un gruppo di istanze gestite 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 gruppo di istanze gestite zonale con un criterio di scalabilità automatica esistente:

PATCH https://www.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 gruppo di istanze gestite.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del gruppo di istanze gestite.
  • SCHEDULE_NAME: il nome del della scalabilità che vuoi disabilitare.

Riattivazione delle pianificazioni di scalabilità

Per ogni pianificazione di scalabilità che vuoi riattivare, imposta il campo disabled su false. Ad esempio, effettua la chiamata seguente per riabilitare una pianificazione per un gruppo di istanze gestite a livello di zona per cui esiste un criterio di scalabilità automatica:

PATCH https://www.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 gruppo di istanze gestite.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del gruppo di istanze gestite.
  • SCHEDULE_NAME: il nome del della scalabilità che vuoi riattivare.

Eliminare una pianificazione di scalabilità

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

Un criterio di scalabilità automatica deve avere sempre almeno un indicatore di scalabilità. Se non esiste nessun altro indicatore di scalabilità automatica, non puoi eliminare tutte le pianificazioni di scalabilità senza eliminare l'intero criterio 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 pianificazione e salvarla per un uso futuro, disattivala. Se vuoi eliminare la configurazione della scalabilità automatica per un gruppo di istanze gestite, 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 gruppo di istanze gestite 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 corrispondenti alle pianificazioni della scalabilità che vuoi eliminare.

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

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

Potrebbe essere necessario attendere alcuni minuti prima che le modifiche abbiano effetto. Per monitorare lo stato delle pianificazioni, fai 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 di scalabilità, 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 gruppo di istanze gestite con una pianificazione di scalabilità esistente.
  • SCHEDULE_NAME: il nome del della scalabilità che vuoi eliminare.
  • ZONE o REGION: facoltativo: la zona o la regione in cui si trova il gruppo di istanze gestite.

REST

Per eliminare le pianificazioni di scalabilità per un gruppo di istanze gestite, utilizza Metodo autoscalers.patch per un gruppo di istanze gestite a livello di zona Metodo regionAutoscalers.patch per un gruppo di istanze gestite a livello di regione. Per ogni pianificazione di scalabilità che vuoi eliminare, imposta la configurazione della pianificazione su null

Ad esempio, effettua la chiamata seguente per eliminare una pianificazione per un gruppo di istanze gestite a livello di zona per cui esiste un criterio di scalabilità automatica:

PATCH https://www.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 gruppo di istanze gestite.
  • AUTOSCALER_NAME: il nome di un gestore della scalabilità automatica esistente. Spesso corrisponde al nome del gruppo di istanze gestite.
  • SCHEDULE_NAME: il nome della programmazione di scalabilità da 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 gruppo di istanze gestite, ogni pianificazione contiene le seguenti impostazioni:

  • Istanze minime richieste: il numero di VM necessarie nel gruppo di istanze gestite quando questa pianificazione di scalabilità è attiva.

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

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

    R elenco di valori disponibili è definito dal Database dei fusi orari IANA: per ad esempio Europe/Paris. Se non viene fornito alcun fuso orario, UTC è utilizzato da predefinito. Alcuni fusi orari IANA osservano l'ora legale. Per ulteriori informazioni l'ora legale influisce sulle pianificazioni di scalabilità, vedi Ora legale.

  • Durata: la quantità di tempo entro cui vuoi scalare la pianificazione dell'attivazione.

    La pianificazione di scalabilità è attiva dall'ora di inizio per durata massima. La durata minima è di 5 minuti. Durante questo periodo, il gestore della scalabilità automatica scala il gruppo di istanze gestite in modo da avere almeno il numero di VM definito dalle istanze richieste dalla pianificazione. Dopo la 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 predefinito e seguendo eventuali controlli di scale in configurati.

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

Quando utilizzi Google Cloud CLI o REST, devi configurare l'ora di inizio e la ricorrenza di una pianificazione dell'automazione 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 attivare la pianificazione del ridimensionamento.

    All'ora di inizio, la pianificazione di scalabilità inizia a creare VM ogni volta che la dimensione del gruppo di istanze gestite è inferiore alle istanze richieste dalla pianificazione. Imposta l'ora di inizio in modo da lasciare tempo sufficiente per l'avvio e l'inizializzazione delle nuove VM. Ad esempio, se il carico di lavoro impiega 10 minuti Creare una VM per avviare la pubblicazione, quindi imposta l'ora di inizio su 10 minuti prima del momento in cui serve che le VM siano pronte.

  • Ricorrenza: se e con quale frequenza la pianificazione di scalabilità si ripete, come definito dalle seguenti opzioni:

    • Una volta: una pianificazione una tantum che inizia solo nella data selezionata.
    • Ogni giorno: una programmazione ricorrente che inizia ogni giorno.
    • Ogni settimana: una programmazione ricorrente che inizia ogni settimana il in determinati giorni della settimana, ad esempio da lunedì a venerdì.
    • Ogni mese: una pianificazione ripetuta che inizia ogni mese nei giorni selezionati del mese, ad esempio il primo giorno di ogni mese. Gli ultimi giorni del mese (dal 29 al 31) sono validi solo nei 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 scheduler di job basato sul tempo originariamente utilizzato in sistemi operativi per computer.

Sintassi

Un'espressione cron è una stringa che comprende di 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 (Facoltativo) Anno
0-59 0-23 1-31 1-12 (gen-dic)

dove 1=Jan, 2=Feb, ... 12=Dec
0-6 (dom-sab) o 1-7 (lun-dom)

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

o ogni anno (*) se non specificato

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

Carattere speciale Significato Esempio
* tutte Se il campo Giorno del mese, il campo Giorno della settimana e il campo Anno (se incluso) sono impostati su *, la pianificazione inizia ogni giorno.
- intervallo Se il campo del giorno della settimana è impostato su 1-5 o Mon-Fri, poi la programmazione 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, il valore pianificazione inizia durante il primo mese e, successivamente, ogni 3 mesi: Gennaio, aprile, luglio e ottobre.

Quando scrivi un'espressione cron, considera quanto segue:

  • Lo spazio vuoto viene utilizzato per separare i campi di un'espressione CRON. Ricorda di prestare attenzione non aggiungere spazi vuoti aggiuntivi in un campo che utilizza caratteri speciali.
  • Se specifichi sia un giorno della settimana sia un giorno del mese (quando nessuno dei due è impostato su *), la pianificazione utilizza l'unione di questi valori, non intersezione. Ad esempio, la programmazione 0 8 1 * Mon inizia alle 08:00 ogni lunedì e il primo giorno di ogni mese. La programmazione non iniziano alle 08:00 solo il lunedì che è anche il primo giorno del mese.
  • Puoi utilizzare zero o più caratteri speciali in ogni campo di un'espressione cron. Ad esempio, se vuoi che la programmazione inizi ogni mese tranne maggio, puoi impostare il campo del mese su 1-4,6-12 (un elenco di due intervalli senza spazi vuoti).
  • Quando utilizzi gli intervalli (-), non puoi usare 0-7 o Sun-Sun per il campo del giorno della settimana, per specificare ogni giorno della settimana, usa *, 0-6, 1-7, Sun-Sat, o Mon-Sun.
  • Quando utilizzi i passaggi (/), ricorda che le espressioni cron sono senza stato, quindi a volte i passaggi possono essere irregolari. Ad esempio, se vuoi che una pianificazione dell'esecuzione ogni 6 ore, puoi impostare il campo dell'ora su */6 che equivale a elencare ogni multiplo valido di 6 (0,6,12,18). I passaggi sono uguali perché 24 ore possono essere facilmente suddivise in parti di 6 ore. Tuttavia, se imposti il campo ore su */7, la pianificazione non inizierà sempre a intervalli di 7 ore. */7 utilizza invece le equivale a elencare ogni multiplo valido di 7 (0,7,14,21), il che significa che la programmazione può iniziare durante le ore 00:00, 7:00, 14:00 e 21:00.

Programmazioni ripetute rispetto a quelle una tantum

A seconda di come scrivi l'espressione cron, la pianificazione potrebbe essere eseguita una volta o più volte. Per creare una pianificazione che viene eseguita una sola volta, devi specificare il campo dell'anno. Ad esempio, l'espressione cron 0 0 30 1 * 2030 configura una pianificazione che deve essere 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 da avviare alle 8:30 di ogni lunedì, martedì, mercoledì, giovedì e venerdì.

Informazioni sullo stato della pianificazione

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

  • Stato (state): lo stato attuale della pianificazione della scalabilità, rappresentato in base a uno dei seguenti stati:
    • Pronta (READY): questa programmazione è pronta, ma non è ancora attiva. Lo strumento di scalabilità automatica è in attesa della successiva occorrenza di questa pianificazione.
    • Attivo (ACTIVE): questa pianificazione è attualmente attiva. Gestore della scalabilità automatica sta cercando di fornire a questo gruppo di istanze gestite almeno le istanze richieste pianificazione specifica.
    • Obsoleto (OBSOLETE): questa pianificazione è scaduta e non sarà più attiva. Il gestore della scalabilità automatica ignora questa pianificazione perché non ci sono occorrenze future.
    • Disattivata (DISABLED): questa pianificazione non può essere attiva perché è stata disattivata manualmente. Il gestore della scalabilità automatica ignorerà questa pianificazione fino a quando non verrà riattivata.
  • Ultima occorrenza (lastStartTime): il timestamp dell'ultima volta che si è verificata la pianificazione della scalabilità è diventata attiva. Queste sono la data e l'ora effettive l'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, lastStartTime è oggi alle 11:00.
  • Occasione successiva (nextStartTime): il timestamp della data e dell'ora successiva in cui questa programmazione deve diventare attiva.

Programmazioni sovrapposte

A seconda dell'ora di inizio, della ricorrenza, della durata e del fuso orario, due o più pianificazioni di scalabilità potrebbero sovrapporsi. Quando è attiva più di una pianificazione, il gestore della scalabilità automatica utilizza il maggior numero di istanze VM richieste da tutte le pianificazioni di scalabilità attive. In questo modo puoi assicurarti che sia sempre disponibile una capacità sufficiente per soddisfare le esigenze di qualsiasi pianificazione attiva. 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 la scalabilità del gruppo di istanze gestite a almeno 20 VM quel giorno. Ciò è utile quando hai requisiti di capacità ricorrenti e regolari, a volte ne hanno bisogno per gestire gli eventi una tantum. Questo comportamento ti consente di pianificare la capacità senza preoccuparti che venga sostituita da altre pianificazioni con requisiti VM inferiori.

Inoltre, un gestore della scalabilità automatica fornisce sempre il maggior numero di istanze VM richiesto da un indicatore di scalabilità automatica attivo. Per ulteriori informazioni, consulta Utilizzare un criterio di scalabilità automatica con più indicatori.

Ora legale

I dettagli dell'ora legale variano in base al fuso orario IANA basato sulla località della pianificazione di scalabilità. Se il fuso orario della pianificazione rispetta l'ora legale, l'ora di inizio della pianificazione si regola automaticamente per rimanere sincronizzato con l'ora dell'elemento in ogni località. Ad esempio, se crei una pianificazione della scalabilità che inizia ogni giorno alle 07:00 per il fuso orario America/New_York, questa pianificazione inizia ogni volta che sono le 07:00 a New York, utilizzando l'ora legale della costa orientale o l'ora solare della costa orientale di conseguenza.

Le pianificazioni di scalabilità vengono eseguite sempre per l'intera durata configurata, ma potrebbero avere orari di inizio e di fine leggermente diversi nei giorni in cui viene attivata l'ora legale. Questo 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 fuso orario inizia alle 02:00 e passa da un'ora all'altra, poi l'orologio cambia dalle 01:59:59 alle 03:00, quindi il periodo di tempo 2:00 - 02:59:59 viene ignorato. 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 dichiarazioni supponiamo che il fuso orario della tua pianificazione utilizzi una transizione ISD di un'ora.

Il primo giorno dell'ora legale (quando si salta un'ora), le pianificazioni di scalabilità hanno le seguenti modifiche:

  • Le pianificazioni attive durante l'ora saltata vengono comunque eseguite per l'intera durata, ma per compensare l'ora saltata, queste pianificazioni terminano un'ora dopo l'ora di fine programmata nei giorni senza transizioni all'ora legale. Generalmente, l'ora di fine di una pianificazione è la somma dell'ora di inizio e della durata della pianificazione stessa. Tuttavia, se il fuso orario salta un'ora mentre è attiva una pianificazione, e la durata e l'ora di inizio rimangono invariate, l'ora di fine per la pianificazione è superiore di 1 ora alla somma della durata e dell'ora di inizio della programmazione.
  • Le pianificazioni configurate per iniziare durante l'ora saltata inizieranno anche un'ora dopo l'ora di inizio nei giorni senza transizioni all'ora legale.

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

  • Le pianificazioni attive durante l'ora di ripetizione vengono comunque eseguite per l'intera durata, ma per compensare l'ora ripetuta, queste pianificazioni terminano un'ora prima dell'ora di fine nei giorni senza transizioni all'ora legale. Di solito, 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 è attiva una programmazione, e la durata e l'ora di inizio rimangono invariate, l'ora di fine della programmazione è inferiore di 1 ora alla somma della programmazione ora di inizio e della durata.
  • Le pianificazioni configurate per l'avvio durante il periodo di transizione vengono avviate all'ora configurata, ma non si riavviano durante la seconda occorrenza ripetuta dell'ora di inizio.

La maggior parte dei fusi orari che osservano l'ora legale utilizzano una transizione di 1 ora punto. Tuttavia, se il fuso orario della tua pianificazione utilizza un periodo di transizione, ad esempio il fuso orario Australia/Lord_Howe, che usa 30 minuti transizioni, il comportamento è lo stesso. Basta sostituire 1 hour con l'ora di transizione al fuso orario DST pertinente.

Passaggi successivi