Une fois la fonctionnalité serverless activée pour un cluster à spécifications fixes, vous pouvez définir des politiques de mise à l'échelle personnalisées afin de contrôler les limites supérieures et inférieures des ressources du cluster. Vous pouvez également configurer des politiques de cycle de vie pour augmenter automatiquement les ressources avant les pics de trafic prévisibles (événements promotionnels ou pointes de charge) afin de garantir les performances, et réduire les ressources pendant les périodes creuses pour libérer les ressources inactives.
Mise à l'échelle automatique
Déclencheurs de montée en puissance (scale-up) et d'extension horizontale (scale-out)
-
Mise à l'échelle verticale (scale-up)
PolarDB surveille l'utilisation du processeur, l'utilisation de la mémoire et d'autres métriques au niveau du noyau des nœuds principaux et des nœuds en lecture seule. Au cours d'une période de surveillance, le système déclenche généralement une montée en puissance pour un nœud lorsque l'une des conditions suivantes est remplie :
L'utilisation du processeur dépasse le seuil prédéfini (par défaut : 80 %).
-
L'utilisation de la mémoire dépasse un seuil spécifique :
Format serverless
Seuil de montée en puissance
Cluster serverless
90 %
Fonctionnalité serverless pour les clusters à spécifications définies
Inférieur ou égal à 32 Go
90 %
64 Go
92 %
128 Go
96 %
256 Go à 512 Go
98 %
Autres spécifications de mémoire
La mise à l'échelle verticale n'est pas prise en charge.
-
Les spécifications d'un nœud en lecture seule sont inférieures à la moitié de celles du nœud principal.
Par exemple, si un nœud en lecture seule dispose de spécifications de 4 PCU et que le nœud principal possède des spécifications de 10 PCU, le nœud en lecture seule est mis à l'échelle vers le haut jusqu'à atteindre au moins 5 PCU.
-
Mise à l'échelle horizontale (scale-out)
Si un nœud en lecture seule dans un cluster a atteint sa limite maximale configurée et continue de satisfaire aux conditions de déclenchement de la montée en puissance (par exemple, son utilisation du processeur dépasse le seuil personnalisé), une extension horizontale est déclenchée.
Déclencheurs de réduction de puissance (scale-down) et de contraction horizontale (scale-in)
-
Mise à l'échelle verticale (scale-down)
Une réduction de puissance est déclenchée pour un nœud lorsque son utilisation du processeur tombe en dessous du seuil personnalisé (par défaut : 50 %) et que son utilisation de la mémoire est inférieure à un seuil spécifique. Les seuils d'utilisation de la mémoire sont les suivants :
Format serverless
Seuil de réduction de puissance
Cluster serverless
80 %
Fonctionnalité serverless pour les clusters à spécifications définies
Inférieur ou égal à 32 Go
80 %
64 Go
86 %
128 Go
90 %
256 Go à 512 Go
94 %
Autres spécifications de mémoire
La mise à l'échelle verticale n'est pas prise en charge, donc aucun seuil de réduction de puissance ne s'applique.
-
Mise à l'échelle horizontale (scale-in)
Une contraction horizontale est déclenchée pour un nœud en lecture seule si son utilisation du processeur reste inférieure à 15 % et que l'utilisation du processeur de tous les autres nœuds en lecture seule reste inférieure à 60 % pendant une période soutenue de 15 à 30 minutes.
RemarquePour éviter l'instabilité des nœuds, un seul nœud en lecture seule est réduit à la fois. La période de refroidissement entre deux événements de contraction horizontale consécutifs est de 15 à 30 minutes.
Pour réduire immédiatement tous les nœuds en lecture seule, modifiez la Serverless Configuration. Définir à la fois le Maximum Number of Read-only Nodes et le Minimum Number of Read-only Nodes sur 0 déclenche immédiatement une contraction horizontale de tous les nœuds en lecture seule.
Les métriques déclenchant la mise à l'échelle varient en fonction des configurations des paramètres du cluster et des configurations serverless. Vous pouvez spécifier des seuils pour la mise à l'échelle du processeur, mais vous ne pouvez pas modifier les seuils pour les autres métriques.
Lorsque la charge de travail d'un cluster serverless augmente soudainement, les nœuds du cluster sont mis à l'échelle progressivement par étapes pour se rapprocher des spécifications attendues, plutôt qu'en une seule étape. La taille minimale d'étape pour la mise à l'échelle des nœuds est de 0,5 PCU. Pour s'adapter rapidement aux charges de travail actuelles, la taille de l'étape de mise à l'échelle suivante augmente en fonction du nombre actuel de PCU par nœud.
Pour détecter les événements de mise à l'échelle, configurez des règles d'alerte dans la section Performance Monitoring de la console. Pour plus d'informations, consultez la rubrique Configurer la surveillance élastique.
Remarques d'utilisation
Après avoir activé la fonctionnalité serverless pour un cluster à spécifications définies, le nombre maximal de connexions et les IOPS maximales du cluster sont proportionnels aux Maximum Resources for Single Node configurés.
Pour activer la fonctionnalité serverless sur les nœuds de stockage en colonnes en lecture seule dans un cluster à spécifications définies, ajoutez d'abord un nœud de stockage en colonnes en lecture seule. Une fois le nœud ajouté, vous pouvez configurer le nombre de nœuds de stockage en colonnes en lecture seule serverless pouvant être ajoutés au cluster.
-
Lorsque la fonctionnalité serverless est activée sur un cluster à spécifications définies, la mise à l'échelle verticale des nœuds de calcul est limitée par le nombre de cœurs de processeur :
Pour les nœuds de calcul avec des spécifications dédiées, la mise à l'échelle verticale (mise à l'échelle des PCU d'un seul nœud) n'est pas prise en charge si le nœud possède plus de 64 cœurs de processeur.
Pour les nœuds de calcul avec des spécifications partagées, la mise à l'échelle verticale (mise à l'échelle des PCU d'un seul nœud) n'est pas prise en charge si le nœud possède plus de 32 cœurs de processeur.
Un cluster serverless utilise des unités de capacité PolarDB (PCU) pour la facturation à la seconde et la gestion de la mise à l'échelle des ressources. Une PCU équivaut à la capacité de service standard d'un cœur de processeur et de 2 Go de mémoire. La valeur PCU d'un nœud s'ajuste dynamiquement en fonction de la charge de travail dans les limites que vous avez définies. L'unité minimale pour un événement de mise à l'échelle unique est de 0,5 PCU.
Lorsque vous désactivez la fonctionnalité serverless, PolarDB récupère toutes les ressources mises à l'échelle vers le haut et le cluster revient à la spécification fixe d'origine qu'il utilisait avant l'activation de la fonctionnalité serverless. Les valeurs des paramètres, telles que
innodb_buffer_pool_size, sont restaurées aux valeurs utilisées avant l'activation de la fonctionnalité. La récupération de ressources en cours d'utilisation peut provoquer des erreurs. Nous vous recommandons d'effectuer cette opération pendant les heures creuses.Actuellement, seule la Cluster Edition series prend en charge les politiques de cycle de vie.
Configurer les paramètres serverless
Connectez-vous à la console PolarDB. Dans le volet de navigation de gauche, cliquez sur Clusters. Sélectionnez la région où le cluster est déployé, puis cliquez sur l'ID du cluster. Sur la page Basic Information, dans la section Database Nodes, cliquez sur Serverless Configuration.
Configurer les paramètres actuels
Dans la boîte de dialogue Configure Serverless-related Parameters, cliquez sur Edit pour définir les paramètres.
-
Paramètres actuels
Minimum Read-only Nodes : Nombre minimal de nœuds en lecture seule supplémentaires. Valeurs valides : 0 à 15.
Maximum Read-only Nodes : Nombre maximal de nœuds en lecture seule supplémentaires. Valeurs valides : 0 à 15.
RemarqueLe système augmente ou diminue automatiquement le nombre de nœuds en lecture seule en fonction de la charge de travail, dans les limites spécifiées. Pour plus d'informations, consultez la rubrique Mise à l'échelle.
Minimum Resources for Single Node : Nombre minimal de PCU pour chaque nœud du cluster. Valeurs valides : 0 PCU à 16 PCU.
Maximum Resources for Single Node : Nombre maximal de PCU pour chaque nœud du cluster. Valeurs valides : 0 PCU à 16 PCU.
RemarqueExemple : Si vous définissez Minimum Resources for Single Node sur 2 PCU et Maximum Resources for Single Node sur 8 PCU, chaque nœud acquiert une capacité serverless qui évolue entre 2 et 8 PCU en plus de ses spécifications fixes. La base de référence du nœud devient ses spécifications fixes plus 2 PCU (environ 2 cœurs, 4 Go de mémoire). À mesure que la charge de travail augmente, le système ajoute de la capacité jusqu'à un maximum de 8 PCU. Les spécifications finales ne peuvent pas dépasser les spécifications fixes plus 8 PCU (environ 8 cœurs, 16 Go de mémoire).
-
Nombre de nœuds de stockage en colonnes en lecture seule : Nombre de nœuds de stockage en colonnes en lecture seule. Valeurs valides : 0 à 15.
RemarqueCe paramètre est affiché et ne peut être configuré que si votre cluster à spécifications fixes possède déjà des nœuds de stockage en colonnes en lecture seule.
Pour plus d'informations sur les nœuds de stockage en colonnes en lecture seule, consultez la rubrique IMCI (In-Memory Column Index).
-
Paramètres avancés
Ajustez les paramètres avancés en fonction de la pression exercée sur les ressources du cluster serverless.
Scan Interval : En mode Sensible, les ressources serverless répondent plus rapidement à la pression de la charge de travail grâce à des fenêtres d'observation et des temps d'exécution plus courts. Sélectionnez Standard ou Sensitive.
Maximum CPU Resources for Elastic Upgrade (maximum) : seuil de montée en puissance du processeur. Valeurs valides : 40 % à 100 %.
Minimum CPU Resources for Elastic Upgrade (minimum) : seuil de réduction de puissance du processeur. Valeurs valides : 10 % à 70 %.
RemarqueLe seuil de réduction de puissance du processeur doit être inférieur au seuil de montée en puissance du processeur (minimum < maximum), et la différence entre les deux seuils doit être d'au moins 30 (maximum - minimum >= 30).
Le mode Sensible convient aux charges de travail sensibles aux fluctuations transitoires de charge (telles que les pics de processeur) et nécessitant des temps de réponse plus rapides. Toutefois, le cluster peut effectuer des mises à l'échelle vers le haut et vers le bas plus fréquemment en fonction des variations de la charge de travail.
Créer une politique de cycle de vie
Une politique de cycle de vie met à l'échelle les ressources du cluster selon un calendrier prédéfini (quotidien, hebdomadaire ou mensuel). Vous pouvez l'utiliser pour augmenter les ressources lors des périodes de pointe prévisibles, comme les événements promotionnels, et les réduire pendant les heures creuses afin de réduire les coûts.
Actuellement, seule la Cluster Edition series prend en charge les politiques de cycle de vie.
-
Agissez avec prudence :
La suppression d'une politique de cycle de vie n'annule pas une tâche en cours d'exécution. Elle supprime uniquement les tâches en attente.
La désactivation de la fonctionnalité serverless supprime toutes les politiques de cycle de vie associées et leurs tâches planifiées.
-
Dans la boîte de dialogue Configure Serverless-related Parameters, cliquez sur + Add Lifecycle Policy. Le tableau suivant décrit les paramètres.
Paramètre
Valeur
Maximum Resources for Single Node
0 à 16 PCU.
Minimum Resources for Single Node
0 à 16 PCU. La valeur doit être inférieure ou égale à la valeur de Maximum resources for a single node.
Maximum Read-only Nodes
0 à 15.
Minimum Read-only Nodes
0 à 15. La valeur ne peut pas être supérieure à la valeur de Maximum Read-only Nodes.
Nombre de nœuds de stockage en colonnes en lecture seule
0 à 15.
Remarque-
Ce paramètre est affiché et ne peut être configuré que si votre cluster à spécifications fixes possède déjà des nœuds de stockage en colonnes en lecture seule.
-
Pour plus d'informations sur les nœuds de stockage en colonnes en lecture seule, consultez la rubrique IMCI (In-Memory Column Index).
Start/End Time
Plage de temps effective pour la politique de cycle de vie.
Planification de la politique
Calendrier de la politique de cycle de vie.
-
Mensuel : Sélectionnez des jours spécifiques du mois et une heure précise pour l'exécution. Vous pouvez compter à partir du Positive ou du Last du mois. Pour spécifier plusieurs jours, séparez les nombres par des virgules (
,), par exemple,1,3,5. -
Hebdomadaire : Sélectionnez des jours spécifiques de la semaine (lundi à dimanche) et une heure précise pour l'exécution.
-
Quotidien : Sélectionnez une heure précise pour l'exécution quotidienne.
RemarqueAprès avoir configuré une politique de cycle de vie, le système ajuste les paramètres de configuration Serverless du cluster à l'heure planifiée de la politique de cycle de vie dans la plage Start/End Time spécifiée. Une fois l'ajustement terminé, les paramètres de configuration Serverless du cluster ne reviennent pas automatiquement à leur état initial. Pour restaurer les paramètres de configuration d'origine à un moment précis, vous devez configurer une politique de cycle de vie distincte. Pour un exemple détaillé, consultez la rubrique Exemple.
-
-
(Facultatif) Afficher le plan d'exécution. Vous pouvez utiliser l'une des méthodes suivantes :
RemarqueUne politique de cycle de vie génère des tâches planifiées. Lorsque vous créez une politique, le système crée les tâches correspondantes en fonction de son calendrier.
-
Après avoir créé une politique de cycle de vie, vous pouvez la consulter sur la page de détails du cluster.
Sur la page de détails du cluster, vous pouvez afficher les tâches planifiées résultantes dans la section Pending execution plan and failed retry tasks. Cette section affiche des informations telles que l'ID de la tâche, l'état de la tâche (En attente), l'action de la tâche (par exemple, ModifyDBClusterServerlessConf) et l'heure de début planifiée. Vous pouvez également effectuer des actions telles que Cancel ou Modify Scheduled Time.
-
Accédez à Task Management > Scheduled Tasks dans la console.
Sur cette page, vous pouvez afficher l'état de la tâche, tel que Pending ou Canceled. Pour les tâches en attente, vous pouvez cliquer sur Cancel dans la colonne Actions pour les annuler.
-
Exemple
Scénario : Vous souhaitez mettre à l'échelle les ressources à 5 PCU à 9 h 30 et les réduire à 1 PCU à 22 h 00 chaque jour de la semaine (du lundi au vendredi) du 1er août au 30 septembre. Pour ce faire, configurez deux politiques de cycle de vie comme suit :
|
Dans la configuration de la politique de cycle de vie pour la période de pointe, définissez à la fois Maximum resources for a single node et Minimum resources for a single node sur 5 PCU. Définissez à la fois Maximum number of read-only nodes for scaling et Minimum number of read-only nodes for scaling sur 5. Cliquez ensuite sur OK. |
Dans la configuration de la politique de cycle de vie pour la période creuse, définissez à la fois Maximum resources for a single node et Minimum resources for a single node sur 1 PCU. Définissez à la fois Maximum number of read-only nodes for scaling et Minimum number of read-only nodes for scaling sur 1. Cliquez ensuite sur OK. |
Désactiver la fonctionnalité serverless
Seuls les clusters qui ont été initialement créés en tant que clusters à spécifications définies et pour lesquels la fonctionnalité serverless a ensuite été activée prennent en charge la désactivation de la fonctionnalité serverless. Les clusters serverless achetés en tant que tels ne peuvent pas être convertis directement en clusters classiques. Si vous devez effectuer une telle conversion, créez un nouveau cluster à spécifications définies et migrez vos données à l'aide du service Data Transmission Service (DTS).
Lorsque vous désactivez la fonctionnalité serverless, PolarDB récupère toutes les ressources mises à l'échelle vers le haut et le cluster revient à la spécification fixe d'origine qu'il utilisait avant l'activation de la fonctionnalité serverless. Les valeurs des paramètres, telles que innodb_buffer_pool_size, sont restaurées aux valeurs utilisées avant l'activation de la fonctionnalité. La récupération de ressources en cours d'utilisation peut provoquer des erreurs. Nous vous recommandons d'effectuer cette opération pendant les heures creuses.
Connectez-vous à la console PolarDB. Dans le volet de navigation de gauche, cliquez sur Clusters. Sélectionnez la région où votre cluster est déployé et cliquez sur l'ID du cluster. Dans la section Database Nodes de la page Basic Information, cliquez sur Disable Serverless.
Documents connexes
Activer la fonctionnalité serverless pour un cluster à spécifications fixes
API connexes
|
API |
Description |
|
Interroge la configuration serverless d'un cluster. |
|
|
Modifie la configuration serverless d'un cluster. |
|
|
Désactive la fonctionnalité serverless pour un cluster. |