Ajustement automatique

L'ajustement automatique vous permet d'ajuster automatiquement le nombre ou l'état du cycle de vie des instances de calcul d'un groupe d'instances. Cela vous permet d'offrir une performance cohérente aux utilisateurs finaux pendant les périodes de demande élevée et de réduire les coûts pendant les périodes de faible demande.

Vous pouvez appliquer les types d'ajustement automatique suivants à un groupe d'instances :

L'ajustement automatique est pris en charge pour les groupes d'instances de machine virtuelle et sans système d'exploitation qui utilisent des formes standard, à E/S denses et GPU.

Vous pouvez effectuer les tâches suivantes avec l'ajustement automatique.

Fonctionnement de l'ajustement automatique : Informations de base

Vous utilisez des configurations d'ajustement automatique pour gérer automatiquement la taille et l'état du cycle de vie des groupes d'instances. Lorsque l'ajustement automatique provisionne les instances d'un groupe, le groupe est augmenté. Lorsque l'ajustement automatique supprime des instances d'un groupe, le groupe est réduit. Vous pouvez également utiliser l'ajustement automatique pour arrêter et démarrer les instances d'un groupe en fonction d'une programmation.

Lorsqu'un groupe d'instances diminue, les instances sont arrêtées (supprimées). Les instances sont arrêtées dans l'ordre suivant : le nombre d'instances est équilibré dans tous les domaines de disponibilité, puis dans tous les domaines d'erreur. Enfin, dans un domaine d'erreur, l'instance la plus ancienne finit en premier.

Une configuration d'ajustement automatique comprend une ou plusieurs politiques d'ajustement automatique. Ces politiques déterminent les critères qui déclenchent les actions d'ajustement automatique et les mesures à entreprendre. Chaque configuration d'ajustement automatique peut avoir une politique basée sur les mesures ou plusieurs politiques basées sur une programmation. Vous pouvez ajouter un maximum de 50 politiques d'ajustement automatique basées sur une programmation à une configuration.

Chaque groupe d'instances peut avoir une seule configuration d'ajustement automatique.

Ajustement automatique basé sur les mesures

Pour l'ajustement automatique basé sur les mesures, vous sélectionnez une mesure de performance à surveiller et définissez les seuils que la mesure doit atteindre pour déclencher un événement d'ajustement automatique. Lorsque l'utilisation du système atteint un seuil, l'ajustement automatique redimensionne dynamiquement le groupe d'instances en temps quasi réel. À mesure que la charge augmente, le groupe est augmenté. À mesure que la charge diminue, le groupe est réduit.
Conseil

Évitez de modifier la valeur affectée au nombre initial d'instances après l'ajustement du groupe. Réduire cette valeur après l'augmentation du nombre d'instances dans la taille du groupe entraîne l'arrêt des instances du groupe. Si vous devez modifier cette valeur, la nouvelle valeur doit être égale ou supérieure au nombre d'instances actuellement dans le groupe.

L'ajustement automatique basé sur les mesures repose sur les mesures de performance qui sont collectées par le service Surveillance, comme l'utilisation de l'UC. Ces mesures de performance sont agrégées dans des périodes d'une minute, puis une moyenne est calculée pour toutes les instances du groupe. Lorsque trois valeurs consécutives (c'est-à-dire les mesures moyennes pour trois minutes consécutives) atteignent le seuil, un événement d'ajustement automatique est déclenché.

Une période de stabilisation entre les événements d'ajustement automatique basé sur les mesures permet au système de se stabiliser au niveau mis à jour. La période de stabilisation commence lorsque le groupe d'instances atteint l'état En cours d'exécution. L'ajustement automatique continue à évaluer les mesures de performance pendant la période de stabilisation. Lorsque la période de stabilisation se termine, l'ajustement automatique de la taille du groupe d'instances est nécessaire.

Ajustement automatique basé sur une programmation

Vous pouvez utiliser l'ajustement automatique basée sur une programmation pour ajuster la taille du groupe sur demande ou pour arrêter et démarrer des instances en fonction d'une programmation.

L'ajustement automatique basé sur une programmation est idéale pour les groupes d'instances où la demande se comporte de manière prévisible en fonction d'une programmation, comme un mois, une date ou une heure. Les programmations peuvent être récurrentes ou ponctuelles. Par exemple :

  • Un groupe d'instances est très utilisé pendant les heures ouvrables. Le groupe est légèrement utilisé en soirée et pendant les fins de semaine. Vous pouvez programmer l'augmentation du groupe le matin pendant la semaine et sa réduction en soirée.
  • Un groupe d'instances est soumis à une forte demande la veille du Nouvel an. Vous pouvez programmer l'augmentation du groupe chaque année, le 30 décembre, et sa réduction le 2 janvier.
  • Vous lancez une nouvelle application qui s'exécute dans le groupe d'instances et vous prévoyez que de nombreuses personnes commenceront à l'utiliser après l'annonce publique. Vous pouvez programmer à l'avance les instances du groupe à démarrer le jour du lancement.

Une configuration d'ajustement automatique basé sur une programmation peut avoir plusieurs politiques, chacune ayant une programmation et une taille cible de groupe ou une action du cycle de vie différentes. Pour configurer des événements d'augmentation et de réduction, vous devez créer au moins deux politiques distinctes. Une politique définit la taille cible du groupe et la programmation de l'augmentation, et l'autre définit la taille cible du groupe et la programmation de la réduction. De même, si vous souhaitez programmer des événements d'arrêt et de démarrage, vous devez créer au moins deux politiques distinctes. Une politique définit l'action du cycle de vie et la programmation pour arrêter les instances, et l'autre définit l'action du cycle de vie et la programmation pour démarrer les instances.

Après l'exécution d'une politique d'ajustement automatique basé sur une programmation, le groupe d'instances conserve la taille cible ou l'état du cycle de vie correspondante jusqu'à ce qu'elle soit modifiée, par exemple avec une autre politique d'ajustement automatique. Toutefois, si vous modifiez manuellement la taille du groupe ou l'état du cycle de vie, l'ajustement automatique basé sur une programmation ne la réajuste pas jusqu'à l'exécution de la prochaine politique d'ajustement automatique programmé.

Lorsque vous utilisez l'ajustement automatique basé sur une programmation pour arrêter ou redémarrer les instances, les informations sur les instances sont conservées. Lorsque les instances sont démarrées après un arrêt, elles retournent à l'état dans lequel elles se trouvaient avant l'arrêt.

Vous définissez les programmations d'ajustement automatique à l'aide d'expressions cron. L'ajustement automatique utilise la mise en oeuvre cron Quartz. Vous pouvez utiliser un générateur d'expression cron en ligne pour vérifier les expressions cron; par exemple FREEFORMATTER.

Indiquez toutes les heures au format UTC.

Note

Les configurations d'ajustement automatique basé sur une programmation comprennent un attribut pour la période de stabilisation, que vous voyez dans la console et lorsque vous utilisez l'API, les trousses SDK et l'interface de ligne de commande. Toutefois, la période de stabilisation n'a aucune incidence sur les configurations d'ajustement automatique basé sur une programmation.

Gestion de programmations multiples

Si des politiques d'ajustement automatique basé sur plusieurs programmations existent, les programmations peuvent être en conflit. En cas de conflit, Oracle choisit une politique d'état du cycle de vie et une politique d'ajustement automatique à exécuter. La politique d'état du cycle de vie est exécutée en premier.

Pour la politique d'état du cycle de vie, la politique dotée de la priorité la plus élevée est choisie. Les actions sont classées par ordre de priorité comme suit, de la priorité la plus élevée à la priorité la plus faible :

  • Forcer le redémarrage
  • Redémarrer
  • Démarrer
  • Forcer l'arrêt
  • Arrêter

Pour la politique d'ajustement automatique, la politique avec le nombre d'instances le plus élevé est choisie.

Pour voir l'incidence que la programmation d'ajustement automatique aura sur la taille du groupe à l'avenir, consultez la prévision de la taille du groupe.

À propos des expressions cron

Une expression cron est une chaîne composée de six ou sept champs qui représentent les différentes parties d'une programmation, comme les heures ou les jours de la semaine. Les expressions cron utilisent le format suivant :

<second> <minute> <hour> <day of month> <month> <day of week> <year>

Expressions Cron

Le tableau suivant liste les valeurs et les caractères spéciaux autorisés pour chaque champ.

Champ Valeurs autorisées Caractères spéciaux autorisés
Seconde

0

Note : Lorsque vous utilisez l'API, l'interface de ligne de commande ou les trousses SDK pour l'ajustement automatique, vous devez spécifier 0 comme valeur pour les secondes, même si d'autres valeurs créent une expression cron valide. Vous n'avez pas besoin d'indiquer de valeur pour les secondes lors de l'utilisation de la console.

Aucun
Minute 0-59 * - , /
Heure 0-23 * - , /
Jour du mois 1-31 * - , ? / L W
Mois 1-12 ou JAN-DEC * - , /
Jour de la semaine 1-7 ou SUN-SAT * - , ? / L #
Année 1970-2099 * - , /

Les caractères spéciaux sont décrits dans le tableau suivant.

Caractère spécial Description Exemple
* Indique toutes les valeurs pour un champ. * dans le champ du mois signifie tous les mois.
- Indique un intervalle de valeurs. 8-17 dans le champ d'heure signifie les heures comprises entre 8 et 17, ou de 8 h à 17 h.
, Indique plusieurs valeurs. 3,5 dans le champ du jour de la semaine signifie mardi et jeudi.
?

Indique qu'il n'y a pas de valeur spécifique.

Lorsque vous voulez spécifier un jour du mois, utilisez ? dans le champ du jour de la semaine.

Lorsque vous voulez spécifier un jour de la semaine, utilisez ? dans le champ du jour du mois.

0 0 10? * MON * signifie 10 h tous les lundis.
/ Utilisez n/m pour indiquer des incréments. La valeur avant la barre oblique est l'heure de début et le nombre après la barre oblique est la valeur d'incrément. 0/20 dans le champ des minutes indique les minutes 0, 20 et 40.
L

Dernier jour de la semaine ou dernier jour du mois.

Utilisez xL dans le champ du jour de la semaine pour indiquer le dernier x jour du mois.

Utilisez L-n dans le champ du jour du mois pour indiquer un décalage de n jours à compter du dernier jour du mois.

N'utilisez pas L avec plusieurs valeurs ou un intervalle de valeurs.

L dans le champ du jour du mois signifie le 31 janvier, le 28 février dans les années non bissextiles, etc.

6L dans le champ du jour de la semaine signifie le dernier vendredi du mois.

L-5 signifie 5 jours avant le dernier jour du mois.

W

Jour de la semaine (lundi à vendredi) qui est le plus proche du jour indiqué.

La valeur ne chevauche pas les mois.

Vous pouvez combiner les caractères L et W (LW) dans le champ du jour du mois pour indiquer le dernier jour de la semaine du mois.

N'utilisez pas W avec plusieurs valeurs ou un intervalle de valeurs.

10W signifie le jour de la semaine le plus proche du 10 du mois. Si le 10 est un samedi, la valeur signifie vendredi le 9. Si le 10 est un dimanche, la valeur signifie lundi le 11. Si le 10 est un mercredi, la valeur signifie mercredi le 10.
# Utilisez x#n pour indiquer le nième x jour du mois. 5#2 signifie le deuxième jeudi du mois.

Exemples d'expression cron

Utilisez ces exemples d'expression cron comme point de départ pour créer vos propres programmations d'ajustement automatique. Combinez chaque expression cron à une taille de groupe cible pour créer une politique d'ajustement automatique. Puis incluez une ou plusieurs politiques d'ajustement automatique dans une configuration d'ajustement automatique.

Exemples cron

Objectif : Une programmation unique avec un seul événement d'ajustement. À 23:00 h, le 31 décembre 2020, ajuster un groupe d'instances à 100 instances. Vous aurez besoin d'une politique d'ajustement automatique.

  • Politique 1 :

    • Taille cible du groupe : 100 instances
    • Heure d'exécution : 23:00 h, le 31e jour de décembre, en 2020
    • Expression Cron : 0 0 23 31 12? 2020

Objectif : Une programmation unique avec un événement d'augmentation et un événement de réduction. À 10:00 h, le 1er mars 2021, augmenter à 75 instances. À 16:00 h, le 7 mars 2021, réduire à 30 instances. Vous aurez besoin de deux politiques d'ajustement automatique.

  • Politique 1 - augmentation :

    • Taille cible du groupe : 75 instances
    • Heure d'exécution : 10:00 h, le 1er jour de mars, en 2021
    • Expression cron : 0 0 1 3? 2021
  • Politique 2 - réduction :

    • Taille cible du groupe : 30 instances
    • Heure d'exécution : 16:00 h, le 1er jour de mars, en 2021
    • Expression cron : 0 16 7 3? 2021

Objectif : Une programmation quotidienne récurrente. Tous les matins de la semaine à 8:30 h, augmenter à 10 instances. Tous les soirs de la semaine à 18 h, réduire à deux instances. Vous aurez besoin de deux politiques d'ajustement automatique.

  • Politique 1 - augmentation le matin :

    • Taille cible du groupe : 10 instances
    • Heure d'exécution : 8:30 h, chaque lundi à vendredi, tous les mois, tous les ans
    • Expression cron : 0 30 8? * MON-FRI *
  • Politique 2 - réduction le soir :

    • Taille cible du groupe : 2 instances
    • Heure d'exécution : 18:00 h, chaque lundi à vendredi, tous les mois, tous les ans
    • Expression cron : 0 0 18? * MON-FRI *

Objectif : Une programmation hebdomadaire récurrente. Tous les mardis et jeudis, augmenter le groupe à 30 instances. Tous les autres jours de la semaine, réduire le groupe à 20 instances. Vous aurez besoin de deux politiques d'ajustement automatique.

  • Politique 1 - Mardi et jeudi :

    • Taille cible du groupe : 30 instances
    • Heure d'exécution : 1 h, tous les mardis et jeudis, tous les mois, tous les ans
    • Expression cron expression : 0 0 1 ? * TUE,THU *
  • Politique 2 - tous les autres jours :

    • Taille cible du groupe : 20 instances
    • Heure d'exécution : 1 h, du dimanche au lundi, le mercredi et du vendredi au samedi, tous les mois, tous les ans
    • Expression cron : 0 0 1 ? * SUN-MON,WED,FRI-SAT *

Objectif : Une programmation mensuelle récurrente. Tous les jours du mois, régler la taille du groupe à 20 instances. Le 15e jour du mois, augmenter à 40 instances. Vous aurez besoin de deux politiques d'ajustement automatique.

  • Politique 1 - taille quotidienne du groupe :

    • Taille cible du groupe : 20 instances
    • Heure d'exécution : Minuit tous les jours, tous les mois, tous les ans
    • Expression cron : 0 0 0 *? *
  • Politique 2 - augmentation :

    • Taille cible du groupe : 40 instances
    • Heure d'exécution : 00:05 h, le 15e jour du mois, tous les mois, tous les ans
    • Expression cron : 0 5 0 15 *? * *

Politique GIA requise

Pour utiliser Oracle Cloud Infrastructure, un administrateur doit être membre d'un groupe auquel l'accès de sécurité est accordé dans une politique par un administrateur de location. Cet accès est requis que vous utilisiez la console ou l'API REST avec une trousse SDK, l'interface de ligne de commande ou un autre outil. Si vous obtenez un message indiquant que vous ne disposez pas de l'autorisation requise, vérifiez auprès de l'administrateur de la location quel type d'accès vous avez et dans quel compartiment votre accès fonctionne.

Pour les administrateurs : Pour une politique standard qui donne accès aux configurations d'ajustement automatique, voir Autoriser les utilisateurs à gérer les configurations d'ajustement automatique du service de calcul.

Marquage de ressources

Appliquer des marqueurs aux ressources afin de les organiser en fonction des besoins de l'entreprise. Vous pouvez appliquer des marqueurs lorsque vous créez une ressource, et vous pouvez mettre à jour une ressource plus tard pour ajouter, réviser ou supprimer des marqueurs. Pour des informations générales sur l'application de marqueurs, voir Marqueurs de ressource.

Exigences pour l'ajustement automatique

  • Vous disposez d'un groupe d'instances. Facultativement, vous pouvez attacher un équilibreur de charge ou un équilibreur de charge de réseau au groupe d'instances.
  • Pour l'ajustement automatique basé sur les mesures, la surveillance est activée sur les instances du groupe et la service de surveillance reçoit les mesures émises par l'instance. Lorsque vous créez initialement un groupe d'instances à l'aide d'instances prenant en charge la surveillance, la surveillance est activée par défaut, quels que soient les paramètres de la configuration des instances du groupe.
  • Vous disposez de limites de service suffisantes pour créer le nombre maximal d'instances pour l'augmentation.