Scaling basé sur les planifications


L'autoscaling basé sur les planifications vous permet d'améliorer la disponibilité de vos charges de travail en planifiant la capacité de manière à anticiper la charge attendue. Si vous exécutez votre charge de travail sur un groupe d'instances géré (MIG), vous pouvez planifier un nombre requis d'instances de machines virtuelles (VM) pour des modèles de charge récurrents et des événements ponctuels. Utilisez des planifications de scaling si l'initialisation de votre charge de travail prend beaucoup de temps et que vous souhaitez effectuer un scaling horizontal afin d'anticiper les pics de charge attendus.

Ce document explique comment créer, répertorier, modifier, désactiver, réactiver et supprimer des planifications de scaling pour un groupe d'instances géré existant. Pour en savoir plus sur les groupes d'instances gérés et l'autoscaling, consultez les pages Créer des groupes d'instances gérés et Procéder à l'autoscaling de groupes d'instances.

Avant de commencer

  • Découvrez les principes de base de l'autoscaler.
  • Si ce n'est pas déjà fait, configurez l'authentification. L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Google Cloud. Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes:

    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

      Pour utiliser les exemples Terraform de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.

      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.

      Pour en savoir plus, consultez Set up authentication for a local development environment.

      REST

      Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.

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

        gcloud init

      Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.

Limites

Les planifications de scaling présentent les mêmes limites que celles applicables à tous les autoscalers ainsi que les limites suivantes :

  • Vous pouvez définir jusqu'à 128 planifications de scaling par groupe d'instances géré. Pour cette raison, supprimez les planifications de scaling à l'état OBSOLETE que vous ne prévoyez pas d'exécuter à nouveau.
  • La durée minimale des planifications de scaling est de 5 minutes.

Créer une planification de scaling

Vous pouvez créer jusqu'à 128 planifications de scaling par groupe d'instances géré. Pour plus d'informations, consultez la section Paramètres de la planification de scaling.

Les instructions suivantes expliquent comment créer une planification de scaling pour un groupe d'instances géré.

Console

  1. Dans la console Google Cloud, accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

  2. Cliquez sur le nom d'un groupe d'instances géré dans la liste.

  3. Cliquez sur Modifier.

  4. Si aucune configuration d'autoscaling n'existe :

    1. Sous Autoscaling, cliquez sur Configurer l'autoscaling.
    2. Sous Mode autoscaling, sélectionnez Activé : ajouter et supprimer des instances au groupe pour activer l'autoscaling. Si vous souhaitez effectuer le scaling de votre groupe d'instances géré uniquement en fonction des planifications, supprimez la métrique d'utilisation de processeur par défaut après avoir ajouté les planifications.
  5. Pour chaque planification de scaling que vous souhaitez ajouter :

    1. Développez la section Planifications d'autoscaling, cliquez sur Gérer les planifications, puis sur Créer une planification.
    2. Dans le volet Créer une planification de scaling, saisissez un Nom.
    3. Facultatif : saisissez une Description.
    4. Saisissez le Nombre minimal d'instances requis que la planification fournit lorsqu'elle est active
    5. Spécifiez l'heure de début et la récurrence de votre planification de scaling en utilisant l'interface par défaut ou, si vous souhaitez configurer une planification avec une heure de début et une récurrence plus complexes, en utilisant une expression Cron.
      • Interface par défaut
        1. Dans le champ Heure de début, saisissez une valeur ou cliquez sur afin de sélectionner une heure de début.
        2. Dans le champ Récurrence, sélectionnez la fréquence de répétition de la planification. Si vous sélectionnez Toutes les semaines ou Tous les mois, utilisez le menu déroulant supplémentaire pour sélectionner quel jour de la semaine ou du mois la planification commence.
      • Expression Cron
        1. Pour activer cette option, cliquez sur le bouton Utiliser une expression CRON.
        2. Saisissez une expression CRON.
    6. Dans le champ Fuseau horaire, sélectionnez un fuseau horaire.

    7. Dans les champs Durée et Unité de temps, saisissez une durée et sélectionnez une unité de temps correspondante.

    8. Cliquez sur Enregistrer. Le volet Planifications de scaling s'ouvre.

    9. Facultatif : vous pouvez créer une autre planification de scaling en cliquant sur Créer une planification.

  6. Lorsque vous avez fini de créer vos planifications, cliquez sur OK.

  7. Pour fermer la page Groupes d'instances, cliquez sur Enregistrer.

gcloud

Pour ajouter une planification de scaling à un groupe d'instances géré qui ne dispose pas de règle d'autoscaling, utilisez la commande 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]

Pour ajouter une planification de scaling à un groupe d'instances géré avec une règle d'autoscaling existante, exécutez la commande 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]

Remplacez les éléments suivants :

  • MIG_NAME : nom d'un groupe d'instances géré avec une règle d'autoscaling existante
  • MIN_NUM_REPLICAS (facultatif) : nombre minimal d'instances requis pour ce groupe d'instances géré. Google recommande de définir cette valeur sur le nombre minimal d'instances dont vous avez besoin lorsqu'aucune planification de scaling n'est active. Lorsque vous définissez cette valeur sur 0 et que vous configurez l'autoscaling en utilisant des planifications ou des métriques Cloud Monitoring avec une seule série temporelle par groupe, votre groupe d'instances géré peut être réduit jusqu'à ne plus contenir de VM. Le scaling à la baisse jusqu'à ne plus avoir de VM n'est pas possible lorsque la règle comporte d'autres signaux nécessitant des données de VM individuelles telles que l'utilisation de processeur.
  • MAX_NUM_REPLICAS : nombre maximal d'instances pouvant être fournies pour ce groupe d'instances géré. Facultatif pour un MIG avec une règle d'autoscaling existante.
  • SCHEDULE_NAME : nom de la nouvelle planification de scaling
  • CRON_EXPRESSION : heure de début et récurrence de la planification présentées sous forme d'expression Cron
  • DURATION : durée (en secondes) pendant laquelle la planification est active
  • TIME_ZONE (facultatif) : fuseau horaire IANA pour l'heure de début de la planification, tel que Europe/Paris La valeur par défaut est UTC.
  • MIN_REQ_REPLICAS : nombre d'instances minimales requises fournies par la planification lorsqu'elle est active
  • DESCRIPTION (facultatif) : description de la nouvelle planification de scaling
  • ZONE ou REGION (facultatifs) : zone ou région où se trouve le groupe d'instances géré

Vous pouvez créer des planifications qui s'exécutent une seule fois ou qui se répètent régulièrement.

Planification récurrente

Cet exemple de commande permet de créer une planification qui se répète. Cette planification indique que votre groupe d'instances géré doit contenir au moins 10 instances de VM chaque lundi, mardi, mercredi, jeudi et vendredi de 8h30 à 17h (UTC). Cette commande utilise également les options --min-num-replicas et --max-num-replicas pour définir le nombre minimal d'instances sur 0 et le nombre maximal d'instances sur 30 pour tous les signaux d'autoscaling du groupe d'instances géré sélectionné. Cette commande suppose que vous disposez d'un groupe d'instances géré nommé example-mig avec une règle d'autoscaling existante.

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"

Planification unique

Cet exemple de commande permet de créer une planification qui s'exécute une fois. Cette planification indique que votre groupe d'instances géré doit contenir au moins 30 instances de VM toute la journée du 30 janvier 2030 (fuseau horaire America/New_York). Cette commande suppose que vous disposez d'un groupe d'instances géré nommé example-mig, qui se trouve dans la zone us-east1-b et contient une règle d'autoscaling.

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

Pour ajouter une planification de scaling à un groupe d'instances géré, utilisez la ressource 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
    }
  }
}

Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.

REST

Pour créer un autoscaler avec des planifications de scaling pour un groupe d'instances géré, utilisez la commande suivante : méthode autoscalers.insert pour un MIG zonal ou méthode regionAutoscalers.insert pour un MIG régional.

Effectuez l'appel suivant afin de créer une planification pour un groupe d'instances géré zonal sans règle d'autoscaling existante :

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"
      },
      ...
    }
  }
}

Pour créer des planifications pour un groupe d'instances géré avec une règle d'autoscaling existante, utilisez la méthode autoscalers.patch (pour un groupe d'instances géré zonal) ou la méthode regionAutoscalers.patch (pour un groupe d'instances géré régional).

Par exemple, effectuez l'appel suivant afin de créer une planification pour un groupe d'instances géré zonal avec une règle d'autoscaling existante :

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"
      },
      ...
    }
  }
}

Remplacez l'élément suivant :

  • PROJECT : ID de votre projet
  • ZONE : zone où se trouve votre groupe d'instances géré
  • AUTOSCALER_NAME : nom d'un autoscaler existant (souvent identique au nom du groupe d'instances géré)
  • MIN_NUM_REPLICAS (facultatif) : nombre minimal d'instances requis pour ce groupe d'instances géré. Google recommande de définir cette valeur sur le nombre minimal d'instances dont vous avez besoin lorsqu'aucune planification de scaling n'est active. Lorsque vous définissez cette valeur sur 0 et que vous configurez l'autoscaling en utilisant des planifications ou des métriques Cloud Monitoring avec une seule série temporelle par groupe, votre groupe d'instances géré peut être réduit jusqu'à ne plus contenir de VM. Le scaling à la baisse jusqu'à ne plus avoir de VM n'est pas possible lorsque la règle comporte d'autres signaux nécessitant des données de VM individuelles telles que l'utilisation de processeur.
  • MAX_NUM_REPLICAS : nombre maximal d'instances pouvant être fournies pour ce groupe d'instances géré. Facultatif pour un MIG avec une règle d'autoscaling existante.
  • SCHEDULE_NAME : nom de la nouvelle planification de scaling
  • MIN_REQ_REPLICAS : nombre minimal d'instances fournies par la planification lorsqu'elle est active
  • CRON_EXPRESSION : heure de début et récurrence de la planification présentées sous forme d'expression Cron
  • TIME_ZONE (facultatif) : fuseau horaire IANA pour l'heure de début de la planification, tel que Europe/Paris La valeur par défaut est UTC.
  • DURATION : durée (en secondes) pendant laquelle la planification est active
  • DESCRIPTION (facultatif) : description de la nouvelle planification de scaling

Vous pouvez créer des planifications qui s'exécutent une seule fois ou qui se répètent régulièrement.

Planification récurrente

Cet exemple d'appel d'API permet de créer une planification qui se répète. Cette planification indique qu'un groupe d'instances géré zonal doit contenir au moins 10 instances de VM chaque lundi, mardi, mercredi, jeudi et vendredi de 8h30 à 17h (UTC). Cet appel d'API utilise également les champs minNumReplicas et maxNumReplicas pour définir le nombre minimal d'instances sur 0 et le nombre maximal d'instances sur 30 pour tous les signaux d'autoscaling du groupe d'instances géré sélectionné. Cet appel d'API suppose que vous disposez d'un projet nommé example-project, qui contient un groupe d'instances géré zonal situé dans la zone us-east1-b et un autoscaler nommé example-autoscaler avec une règle d'autoscaling existante.

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"
      }
    }
  }
}

Pour utiliser cet exemple avec un groupe d'instances géré régional, envoyez une requête similaire en utilisant la méthode regionAutoscalers.patch, et spécifiez une région plutôt qu'une zone.

Planification unique

Cet exemple d'appel d'API permet de créer une planification qui s'exécute une fois. Cette planification indique qu'un groupe d'instances géré zonal doit contenir au moins 30 instances de VM toute la journée du 30 janvier 2030 (fuseau horaire America/New_York). Cet appel d'API suppose que vous disposez d'un projet nommé example-project, qui contient un groupe d'instances géré zonal situé dans la zone us-east1-b et un autoscaler nommé example-autoscaler avec une règle d'autoscaling existante.

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"
      }
    }
  }
}

Pour utiliser cet exemple avec un groupe d'instances géré régional, envoyez une requête similaire en utilisant la méthode regionAutoscalers.patch, et spécifiez une région plutôt qu'une zone.

Plusieurs planifications

Cet exemple d'appel d'API utilise la méthode autoscalers.patch pour deux planifications, workday-capacity et january-30-2030-schedule, dans un seul appel. Cet appel d'API suppose que vous disposez d'un projet nommé example-project, qui contient un groupe d'instances géré zonal situé dans la zone us-east1-b et un autoscaler nommé example-autoscaler avec une règle d'autoscaling existante.

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"
      }
    }
  }
}

Pour utiliser cet exemple avec un groupe d'instances géré régional, envoyez une requête similaire en utilisant la méthode regionAutoscalers.patch, et spécifiez une région plutôt qu'une zone.

Une fois la planification créée, vous devrez peut-être attendre quelques minutes avant de pouvoir consulter les informations sur son état.

Répertorier vos planifications de scaling

Vous pouvez afficher la liste des planifications pour un groupe d'instances géré. La liste affiche les paramètres et les informations d'état de chaque planification.

Console

  1. Dans la console Google Cloud, accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

  2. Cliquez sur le nom d'un groupe d'instances géré dans la liste.

  3. Cliquez sur Modifier.

  4. Vous pouvez consulter le nombre total de planifications sous Planifications d'autoscaling. Cliquez sur Gérer les planifications pour afficher la liste de vos planifications de scaling existantes.

Lorsque vous avez terminé, vous pouvez fermer la liste en cliquant sur OK.

gcloud

Pour obtenir les détails d'un groupe d'instances géré, y compris la configuration et l'état de ses planifications de scaling, utilisez la commande gcloud compute instance-groups managed describe.

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

Remplacez l'élément suivant :

  • MIG_NAME : nom d'un groupe d'instances géré avec une règle d'autoscaling existante
  • ZONE ou REGION (facultatifs) : zone ou région où se trouve le groupe d'instances géré

Toutes les planifications de scaling de votre groupe d'instances géré sont répertoriées dans le résultat, comme illustré dans l'exemple suivant.

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

Pour obtenir les détails d'un autoscaler, y compris la configuration et l'état de ses planifications de scaling, utilisez la méthode autoscalers.get (pour un groupe d'instances géré zonal) ou la méthode regionAutoscalers.get (pour un groupe d'instances géré régional).

Par exemple, effectuez l'appel suivant afin de répertorier les planifications d'un groupe d'instances géré zonal avec une règle d'autoscaling existante :

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

Remplacez l'élément suivant :

  • PROJECT : ID de votre projet
  • ZONE : zone où se trouve votre groupe d'instances géré
  • AUTOSCALER_NAME : nom d'un autoscaler existant (souvent identique au nom du groupe d'instances géré)

Toutes les planifications de scaling de votre groupe d'instances géré sont répertoriées dans le résultat, comme illustré dans l'exemple suivant.

{
  ...
  "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"
    },
    ...
  },
...
}

Modifier une planification de scaling

Vous pouvez modifier une planification de scaling existante afin de modifier ses paramètres, sauf son nom. Vous pouvez également désactiver ou réactiver une planification de scaling.

Console

  1. Dans la console Google Cloud, accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

  2. Cliquez sur le nom d'un groupe d'instances géré dans la liste.

  3. Cliquez sur Modifier.

  4. Vous pouvez consulter le nombre total de planifications sous Planifications d'autoscaling. Cliquez sur Gérer les planifications pour afficher la liste de vos planifications de scaling existantes.

  5. Cochez la case de la planification de scaling que vous souhaitez modifier.

  6. En haut du volet Planifications de scaling, cliquez sur Modifier.

  7. Dans le volet Modifier la planification de scaling, modifiez les champs que vous souhaitez modifier. Pour plus d'informations sur chaque champ, consultez la section Créer une planification de scaling.

  8. Lorsque vous avez terminé, cliquez sur Enregistrer.

Vous devrez peut-être patienter quelques minutes avant que vos modifications ne soient effectives. Vous pouvez surveiller l'état de vos planifications en cliquant sur Actualiser en haut du volet Planifications de scaling.

Lorsque vous avez terminé, vous pouvez fermer la liste en cliquant sur OK.

gcloud

Pour mettre à jour une planification de scaling existante, utilisez la commande gcloud compute instance-groups managed update-autoscaling. Utilisez l'option --update-schedule pour indiquer le nom de la planification à mettre à jour. Incluez d'autres options, le cas échéant.

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]

Remplacez l'élément suivant :

  • MIG_NAME : nom d'un groupe d'instances géré avec une planification d'autoscaling existante
  • SCHEDULE_NAME : nom de la planification de scaling existante
  • CRON_EXPRESSION (facultatif) : nouvelles heure de début et récurrence de la planification présentées sous forme d'expression Cron
  • DURATION (facultatif) : nouvelle durée (en secondes) pendant laquelle la planification est active
  • TIME_ZONE (facultatif) : nouveau fuseau horaire IANA pour l'heure de début de la planification, tel que Europe/Paris La valeur par défaut est UTC.
  • MIN_REQ_REPLICAS (facultatif) : nouveau nombre minimal d'instances fournies par la planification lorsqu'elle est active
  • DESCRIPTION (facultatif) : nouvelle description de la planification de scaling
  • ZONE ou REGION (facultatifs) : zone ou région où se trouve le groupe d'instances géré

REST

Pour mettre à jour des planifications de scaling existantes pour un groupe d'instances géré, utilisez la méthode autoscalers.patch (pour un groupe d'instances géré zonal) ou la méthode regionAutoscalers.patch (pour un groupe d'instances géré régional).

Par exemple, effectuez l'appel suivant afin de modifier une planification pour un groupe d'instances géré zonal avec une règle d'autoscaling existante :

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"
      },
      ...
    }
  }
}

Remplacez l'élément suivant :

  • PROJECT : ID de votre projet
  • ZONE : zone où se trouve votre groupe d'instances géré
  • AUTOSCALER_NAME : nom d'un autoscaler existant (souvent identique au nom du groupe d'instances géré)
  • SCHEDULE_NAME : nom de la planification de scaling existante
  • MIN_REQ_REPLICAS (facultatif) : nouveau nombre minimal d'instances fournies par la planification lorsqu'elle est active
  • CRON_EXPRESSION (facultatif) : nouvelles heure de début et récurrence de la planification présentées sous forme d'expression Cron
  • TIME_ZONE (facultatif) : nouveau fuseau horaire IANA pour l'heure de début de la planification, tel que Europe/Paris La valeur par défaut est UTC.
  • DURATION (facultatif) : nouvelle durée (en secondes) pendant laquelle la planification est active
  • DESCRIPTION (facultatif) : nouvelle description de la planification de scaling

Désactiver et réactiver une planification de scaling

Les planifications de scaling sont activées par défaut. Vous pouvez désactiver une planification si vous souhaitez empêcher son activation mais enregistrer sa configuration. Vous pouvez réactiver une planification désactivée lorsque vous souhaitez l'utiliser à nouveau.

Si vous n'avez pas besoin de stocker la planification ou si vous avez atteint la limite de 128 planifications pour ce groupe d'instances géré, supprimez la planification. Si vous souhaitez désactiver l'autoscaling pour un MIG, désactivez l'autoscaling.

Console

  1. Dans la console Google Cloud, accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

  2. Cliquez sur le nom d'un groupe d'instances géré dans la liste.

  3. Cliquez sur Modifier.

  4. Vous pouvez consulter le nombre total de planifications sous Planifications d'autoscaling. Cliquez sur Gérer les planifications pour afficher la liste de vos planifications de scaling existantes.

  5. Cochez les cases correspondant aux planifications de scaling que vous souhaitez désactiver ou activer.

  6. Désactivez ou activez les planifications sélectionnées.

    • Pour désactiver les planifications sélectionnées :
      1. En haut du volet Planifications de scaling, cliquez sur Désactiver.
      2. Dans la boîte de dialogue Désactiver les planifications, cliquez sur Désactiver.
    • Pour activer les planifications sélectionnées, procédez comme suit :
      1. En haut du volet Planifications de scaling, cliquez sur Activer.
      2. Dans la boîte de dialogue Activer les planifications, cliquez sur Activer.

Vous devrez peut-être patienter quelques minutes avant que vos modifications ne soient effectives. Vous pouvez surveiller l'état de vos planifications en cliquant sur Actualiser en haut du volet Planifications de scaling.

Lorsque vous avez terminé, vous pouvez fermer la liste en cliquant sur OK.

gcloud

Pour désactiver ou réactiver une planification de scaling, utilisez la commande gcloud compute instance-groups managed update-autoscaling.

Désactiver une planification de scaling

Pour désactiver une planification de scaling, utilisez l'option --disable-schedule.

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

Remplacez l'élément suivant :

  • MIG_NAME : nom d'un groupe d'instances géré avec une planification d'autoscaling existante
  • SCHEDULE_NAME : nom de la planification de scaling à désactiver
  • ZONE ou REGION (facultatifs) : zone ou région où se trouve le groupe d'instances géré

Réactiver une planification de scaling

Pour réactiver une planification de scaling, utilisez l'option --enable-schedule.

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

Remplacez l'élément suivant :

  • MIG_NAME : nom d'un groupe d'instances géré avec une planification d'autoscaling existante
  • SCHEDULE_NAME : nom de la planification de scaling à réactiver
  • ZONE ou REGION (facultatifs) : zone ou région où se trouve le groupe d'instances géré

REST

Pour désactiver ou réactiver des planifications de scaling pour un groupe d'instances géré, utilisez la méthode autoscalers.patch (pour un groupe d'instances géré zonal) ou la méthode regionAutoscalers.patch (pour un groupe d'instances géré régional).

Désactiver les planifications de scaling

Pour chaque planification de scaling que vous souhaitez désactiver, définissez le champ disabled sur true. Par exemple, effectuez l'appel suivant afin de désactiver une planification pour un groupe d'instances géré zonal avec une règle d'autoscaling existante :

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

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

Remplacez l'élément suivant :

  • PROJECT : ID de votre projet
  • ZONE : zone où se trouve votre groupe d'instances géré
  • AUTOSCALER_NAME : nom d'un autoscaler existant (souvent identique au nom du groupe d'instances géré)
  • SCHEDULE_NAME : nom de la planification de scaling à désactiver

Réactiver les planifications de scaling

Pour chaque planification de scaling que vous souhaitez réactiver, définissez le champ disabled sur false. Par exemple, effectuez l'appel suivant afin de réactiver une planification pour un groupe d'instances géré zonal avec une règle d'autoscaling existante :

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

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

Remplacez l'élément suivant :

  • PROJECT : ID de votre projet
  • ZONE : zone où se trouve votre groupe d'instances géré
  • AUTOSCALER_NAME : nom d'un autoscaler existant (souvent identique au nom du groupe d'instances géré)
  • SCHEDULE_NAME : nom de la planification de scaling à réactiver

Supprimer une planification de scaling

Vous pouvez supprimer des planifications de scaling d'un groupe d'instances géré. Supprimez les planifications dont vous n'avez plus besoin, telles que celles à l'état OBSOLETE.

Une règle d'autoscaling doit toujours comporter au moins un signal de scaling. Si aucun autre signal d'autoscaling n'existe, vous ne pouvez pas supprimer toutes les planifications de scaling sans supprimer l'intégralité de la règle d'autoscaling. Si vous souhaitez supprimer toutes les planifications de scaling mais conserver la règle d'autoscaling, vous devez ajouter au moins un signal de scaling avant de supprimer toutes les planifications.

Si vous souhaitez empêcher l'activation d'une planification et l'enregistrer pour une utilisation ultérieure, désactivez-la. Si vous souhaitez supprimer la configuration de l'autoscaling pour un groupe d'instances géré, supprimez l'autoscaler.

Console

  1. Dans la console Google Cloud, accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

  2. Cliquez sur le nom d'un groupe d'instances géré dans la liste.

  3. Cliquez sur Modifier.

  4. Vous pouvez consulter le nombre total de planifications sous Planifications d'autoscaling. Cliquez sur Gérer les planifications pour afficher la liste de vos planifications de scaling existantes.

  5. Cochez les cases correspondant aux planifications de scaling que vous souhaitez supprimer.

  6. En haut du volet Planifications de scaling, cliquez sur Supprimer.

  7. Dans la boîte de dialogue Supprimer les planifications, cliquez sur Supprimer.

Vous devrez peut-être patienter quelques minutes avant que vos modifications ne soient effectives. Vous pouvez surveiller l'état de vos planifications en cliquant sur Actualiser en haut du volet Planifications de scaling.

Lorsque vous avez terminé, vous pouvez fermer la liste en cliquant sur OK.

gcloud

Pour supprimer une planification de scaling, exécutez la commande gcloud compute instance-groups managed update-autoscaling avec l'option --remove-schedule.

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

Remplacez l'élément suivant :

  • MIG_NAME : nom d'un groupe d'instances géré avec une planification d'autoscaling existante
  • SCHEDULE_NAME : nom de la planification de scaling à supprimer
  • ZONE ou REGION (facultatifs) : zone ou région où se trouve le groupe d'instances géré

REST

Pour supprimer des planifications de scaling pour un groupe d'instances géré, utilisez la méthode autoscalers.patch (pour un groupe d'instances géré zonal) ou la méthode regionAutoscalers.patch (pour un groupe d'instances géré régional). Pour chaque planification de scaling que vous souhaitez supprimer, définissez la configuration sur null.

Par exemple, effectuez l'appel suivant afin de supprimer une planification pour un groupe d'instances géré zonal avec une règle d'autoscaling existante :

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

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

Remplacez l'élément suivant :

  • PROJECT : ID de votre projet
  • ZONE : zone où se trouve votre groupe d'instances géré
  • AUTOSCALER_NAME : nom d'un autoscaler existant (souvent identique au nom du groupe d'instances géré)
  • SCHEDULE_NAME : nom de la planification de scaling à supprimer

Concepts

Cette section décrit les concepts liés à la création et à l'utilisation de planifications de scaling, y compris les paramètres de planification et leur fonctionnement.

Paramètres de la planification de scaling

Lorsque vous créez et modifiez les planifications de scaling d'un groupe d'instances géré, chaque planification de scaling contient les paramètres suivants:

  • Nombre minimal d'instances requis : nombre de VM que doit contenir le groupe d'instances géré lorsque la planification de scaling est active.

    Lorsque la planification est activée, le groupe d'instances géré comporte au moins ce nombre de VM, mais peut en contenir davantage en fonction d'autres paramètres d'autoscaling. En outre, la taille du groupe d'instances géré est toujours limitée aux nombres minimal et maximal d'instances configurées dans ses paramètres d'autoscaling.

  • Fuseau horaire : fuseau horaire IANA basé sur l'emplacement utilisé pour interpréter l'heure de début de la planification.

    Une liste de valeurs disponibles est définie par la base de données de fuseaux horaires IANA (par exemple, Europe/Paris). Si aucun fuseau horaire n'est fourni, UTC est utilisé par défaut. Certains fuseaux horaires IANA appliquent l'heure d'été. Pour savoir comment l'heure d'été affecte les planifications de scaling, consultez la section Heure d'été.

  • Durée : durée pendant laquelle vous souhaitez que la planification de scaling soit active.

    Elle devient active à l'heure de début définie, pendant la durée configurée. La durée minimale est de 5 minutes. Pendant ce temps, l'autoscaler procède au scaling du groupe d'instances géré, afin qu'il comporte au moins autant de VM que le nombre défini par les instances requises de la planification. Une fois la durée écoulée, si la capacité actuelle n'est plus nécessaire, l'autoscaler commence à supprimer les instances de VM après une période de stabilisation par défaut de 10 minutes et à la suite de n'importe quel contrôle de scaling configuré.

    Les planifications de scaling sont bidirectionnelles. Les VM sont supprimées au moment de l'arrêt spécifié et la taille du groupe est réduite à la taille minimale que vous avez définie, sauf si vous avez spécifié d'autres signaux d'autoscaling.

Lorsque vous utilisez Google Cloud CLI ou REST, vous devez configurer l'heure de début et la récurrence de la planification de scaling à l'aide d'une expression Cron. Toutefois, lorsque vous utilisez la console Google Cloud, vous pouvez configurer l'heure de début et la récurrence d'une planification à l'aide d'une expression Cron ou des paramètres suivants :

  • Heure de début : heure de la journée à laquelle vous souhaitez activer la planification de scaling.

    À l'heure de début, la planification de scaling commence à créer des VM dès que la taille du groupe d'instances géré est inférieure au nombre d'instances requis par la planification. Définissez l'heure de début, afin de laisser suffisamment de temps pour que les nouvelles VM puissent démarrer et s'initialiser. Par exemple, si votre charge de travail prend 10 minutes après la création de la VM pour commencer la diffusion, définissez l'heure de début 10 minutes avant l'heure à laquelle les VM doivent être prêtes.

  • Récurrence : si et à quelle fréquence la planification de scaling se répète, tel que défini par les options suivantes :

    • Une fois : planification unique qui démarre uniquement à une date sélectionnée.
    • Tous les jours : planification répétée qui démarre tous les jours.
    • Toutes les semaines : planification répétée qui démarre chaque semaine les jours sélectionnés (par exemple, du lundi au vendredi).
    • Tous les mois : planification répétée qui démarre tous les mois les jours sélectionnés (par exemple, le premier jour de chaque mois). Les derniers jours du mois (du 29 au 31) ne s'appliquent qu'aux mois qui contiennent ces jours.

Expressions Cron

L'heure de début et la récurrence d'une planification de scaling peuvent être configurées à l'aide d'une expression Cron. Cron est un programmeur de tâches temporelles initialement utilisé dans les systèmes d'exploitation de type Unix.

Syntaxe

Une expression Cron correspond à une chaîne composée de cinq ou six champs séparés par des espaces blancs. Le tableau suivant définit les champs d'une expression Cron et les valeurs possibles pour chaque champ.

Minute Heure jour du mois Mois Jour de la semaine Année (facultatif)
0-59 0-23 1-31 1-12 (Jan-Dec)

1 = Jan, 2 = Feb, … 12 = Dec
0-6 (Sun-Sat) ou 1-7 (Mon-Sun)

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

ou chaque année (*) si vous ne renseignez pas ce champ

En plus d'utiliser ces valeurs, chaque champ d'une expression Cron peut également utiliser des caractères spéciaux :

Caractère spécial Signification Exemple
* tous Si les champs "Jour du mois", "Jour de la semaine" et "Année" (le cas échéant) sont tous définis sur *, la planification démarre chaque jour.
- plage Si le champ "Jour de la semaine" est défini sur 1-5 ou sur Mon-Fri, la planification démarre chaque semaine du lundi au vendredi.
, list Si le champ "Mois" est défini sur 5,7,9 ou sur May,Jul,Sep, la planification démarre tous les mois de mai, juillet et septembre.
/ étape Si le champ "Mois" est défini sur */3, la planification démarre le premier mois, puis tous les trois mois : janvier, avril, juillet et octobre.

Lorsque vous écrivez une expression Cron, tenez compte des points suivants :

  • Les espaces blancs permettent de séparer les champs d'une expression Cron. N'ajoutez pas d'espace blanc superflu dans un champ qui utilise des caractères spéciaux.
  • Lorsque vous spécifiez à la fois un jour de la semaine et un jour du mois (si aucun de ces champs n'est défini sur *), la planification utilise l'union de ces valeurs, et non l'intersection. Par exemple, la planification 0 8 1 * Mon démarre à 8h chaque lundi et le premier jour de chaque mois. Cette planification ne démarre pas à 8h uniquement les lundis qui correspondent au premier jour du mois.
  • Vous pouvez utiliser la valeur zéro ou plusieurs caractères spéciaux dans chaque champ d'une expression Cron. Par exemple, si vous souhaitez que la planification démarre tous les mois, sauf en mai, vous pouvez définir le champ "Mois" sur 1-4,6-12 (liste de deux plages sans espace blanc).
  • Lorsque vous utilisez des plages (-), vous ne pouvez pas utiliser 0-7 ou Sun-Sun dans le champ "Jour de la semaine". Pour spécifier tous les jours de la semaine, utilisez plutôt *, 0-6, 1-7, Sun-Sat ou Mon-Sun.
  • Lorsque vous utilisez des étapes (/), n'oubliez pas que les expressions Cron sont sans état. Par conséquent, les étapes peuvent parfois être inégales. Par exemple, si vous souhaitez qu'une planification s'exécute toutes les six heures, vous pouvez définir le champ "Heures" sur */6, qui se comporte de la même manière que tous les multiples valides de 6 (0,6,12,18). Les étapes sont égales, car 24 heures sont facilement divisées en parties de 6 heures. Toutefois, si vous définissez le champ "Heures" sur */7, la planification ne démarrera pas toujours à des intervalles de sept heures. Au lieu de cela, */7 revient à définir tous les multiples valides de 7 (0,7,14,21), ce qui signifie que la planification peut démarrer à minuit, 7h, 14h et 21h.

Planifications récurrentes et uniques

Selon la manière dont vous écrivez votre expression Cron, la planification peut s'exécuter une seule fois ou de façon récurrente. Pour créer une planification qui ne s'exécute qu'une seule fois, vous devez spécifier le champ "Année". Par exemple, l'expression Cron 0 0 30 1 * 2030 permet de configurer une planification unique, qui démarrera à minuit le 30 janvier 2030. Pour créer une planification qui se répète, utilisez des caractères spéciaux pour décrire à quel moment elle doit être répétée. Par exemple, l'expression Cron 30 8 * * Mon-Fri permet de configurer une planification qui démarrera à 8h30 chaque lundi, mardi, mercredi, jeudi et vendredi.

Informations sur l'état de la planification

Répertoriez vos planifications de scaling pour afficher leur état. Une planification de scaling présente les informations d'état suivantes :

  • État (state) : état actuel de la planification de scaling, représenté par l'un des états suivants :
    • Prête (READY) : la planification est prête, mais pas encore active. L'autoscaler attend sa prochaine occurrence.
    • Active (ACTIVE) : la planification est actuellement active. L'autoscaler tente de fournir au groupe d'instances géré au moins les instances requises spécifiées par la planification.
    • Obsolète (OBSOLETE) : la planification est arrivée à expiration et ne s'activera plus. L'autoscaler ignore cette planification, car il n'y a plus d'occurrences futures.
    • Désactivée (DISABLED) : la planification ne peut pas être active, car elle a été désactivée manuellement. L'autoscaler ignore la planification jusqu'à ce qu'elle soit réactivée.
  • Dernière occurrence (lastStartTime) : horodatage de la dernière activation de la planification de scaling. Il s'agit de la date et de l'heure réelles de la dernière activation. Par exemple, si vous avez désactivé une planification de scaling avec une récurrence quotidienne, une heure de début définie sur 10h et une durée de 2 heures, et que vous la réactivez à 11h aujourd'hui, la dernière occurrence (lastStartTime) est celle d'aujourd'hui à 11h.
  • Prochaine occurrence (nextStartTime) : horodatage de la prochaine activation de la planification.

Chevauchement de planifications

Selon l'heure de début, la récurrence, la durée et le fuseau horaire, au moins deux planifications de scaling peuvent se chevaucher. Lorsque plusieurs planifications sont actives, l'autoscaler utilise le plus grand nombre d'instances de VM requises parmi ces dernières. Ainsi, vous disposez toujours d'une capacité suffisante pour répondre aux besoins de n'importe quelle planification active. Par exemple, si vous disposez d'une planification qui se répète tous les jours de 8h à 10h et qui requiert au moins 10 VM, mais que vous avez également créé une planification unique qui s'exécute toute la journée et qui nécessite au moins 20 VM, l'autoscaler procède au scaling du groupe d'instances géré afin qu'il contienne au moins 20 VM ce jour-là. Cela s'avère utile lorsque vous avez des exigences régulières en matière de capacité, mais que vous avez parfois besoin de VM supplémentaires pour gérer des événements ponctuels. Ce comportement vous permet de planifier votre capacité sans craindre qu'elle ne soit ignorée par d'autres planifications qui nécessitent moins de VM.

De plus, l'autoscaler fournit toujours le plus grand nombre d'instances de VM requis par tout signal d'autoscaling actif. Pour en savoir plus, consultez la section Utiliser une règle d'autoscaling avec plusieurs signaux.

Heure d'été

Les détails de l'heure d'été varient en fonction du fuseau horaire IANA basé sur un emplacement pour votre planification de scaling. Si le fuseau horaire de votre planification applique l'heure d'été, l'heure de début de la planification est automatiquement ajustée pour rester synchronisée avec l'heure de l'emplacement sélectionné. Par exemple, si vous créez une planification de scaling qui démarre tous les jours à 7h00 pour le fuseau horaire America/New_York, cette planification démarre tous les jours lorsqu'il est 7h00 à New York, en utilisant l'heure utilisant l'heure EDT (heure d'été) ou EST (heure normale) le cas échéant.

Les planifications de scaling s'exécutent toujours pour toute la durée que vous configurez, mais elles peuvent présenter des heures de début et de fin légèrement différentes le jour du basculement à l'heure d'été. En effet, les changements d'heure utilisent des périodes de transition, c'est-à-dire une période sautée le premier jour du passage à l'heure d'été puis récupérée la veille du passage à l'heure d'hiver. Par exemple, si l'heure d'été de votre fuseau horaire prend effet à 2h00 avec une période de transition d'une heure, l'horloge passe directement de 1:59:59 à 3:00:00, de sorte que la période comprise entre 2:00:00 et 2:59:59 est sautée. Si l'heure d'hiver de votre fuseau horaire prend effet à 2h00, l'horloge passe de 2:59:59 à 2:00:00, de sorte que la période comprise entre 2:00:00 et 2:59:59 est répétée. Les instructions suivantes supposent que le fuseau horaire de votre planification utilise une période de transition d'une heure pour les changements d'heure.

Le premier jour de l'heure d'été (où une heure est ignorée), les planifications de scaling présentent les modifications suivantes :

  • Les planifications actives pendant l'heure ignorée sont toujours exécutées pendant toute la durée planifiée, mais se terminent une heure après l'heure de fin aux jours sans transition DST afin de compenser cette heure ignorée. Normalement, l'heure de fin d'une planification correspond à la somme de l'heure de début et de la durée planifiée. Toutefois, si l'heure d'été fait sauter une heure alors qu'une planification est active et que la durée et l'heure de début restent les mêmes, l'heure de fin de cette planification est supérieure d'une heure à la somme de l'heure de début et de la durée planifiée.
  • Les planifications configurées pour démarrer pendant l'heure sautée démarrent également une heure plus tard que leur heure de début les jours sans changement d'heure.

Le dernier jour de l'heure d'été (lorsque l'heure est répétée), les planifications de scaling présentent les modifications suivantes :

  • Les planifications actives pendant l'heure répétée continuent de s'exécuter pendant toute la durée d'exécution, mais pour compenser l'heure répétée, elles se terminent une heure avant l'heure de fin aux jours sans changement d'heure. Normalement, l'heure de fin d'une planification correspond à la somme de l'heure de début et de la durée planifiée. Toutefois, si l'heure d'été répète une heure alors qu'une planification est active et que la durée et l'heure de début restent les mêmes, l'heure de fin de cette planification est inférieure d'une heure à la somme de l'heure de début et de la durée planifiée.
  • Les planifications configurées pour démarrer pendant la période de transition commencent à l'heure de début configurée, mais elles ne redémarrent pas lors de la deuxième occurrence répétée de l'heure de début.

La plupart des fuseaux horaires qui appliquent l'heure d'été utilisent une période de transition d'une heure. Toutefois, si le fuseau horaire de votre planification utilise une période de transition différente, par exemple le fuseau horaire Australia/Lord_Howe dont la période de transition est de 30 minutes, vous pouvez vous attendre au même comportement. Il vous suffit de remplacer 1 heure par la durée de période de transition correspondante.

Étape suivante