Configurer la mise à l'échelle automatique (autoscaling) pour les services de données et les Routes
Configurez la mise à l'échelle horizontale du pod Horizontal Pod Autoscaling (HPA) pour les ressources allouées aux services de données et Routes dans un environnement Dynamic Engine, afin que les services de données et Routes soient capables de gérer un grand volume de trafic ou messages.
Avant de commencer
- Les définitions des ressources personnalisées dynamic-engine-crd doivent avoir été installées à l'aide du chart Helm oci://ghcr.io/talend/helm/dynamic-engine-crd. Si ce n'est pas le cas, exécutez les commandes suivantes pour l'installation :
- Trouvez la version du chart à utiliser :
- Exécutez la commande Helm suivante :
helm show chart oci://ghcr.io/talend/helm/dynamic-engine-crd --version <engine_version> - Visualisez la version directement depuis Talend Management Console ou consultez le Dynamic Engine journal de modification de la version du graphique dans votre version de Dynamic Engine.
- Utilisez un appel d'API pour l'endpoint de version de Dynamic Engine (en anglais).
- Exécutez la commande Helm suivante :
- Exécutez la commande suivante pour installer le chart Helm dans une version donnée :Remplacez <helm_chart_version> par la version du chart supportée par votre version du Dynamic Engine.
helm install dynamic-engine-crd oci://ghcr.io/talend/helm/dynamic-engine-crd --version <helm_chart_version>Si vous ne spécifiez pas la version, vous installez la dernière version disponible du chart dynamic-engine-crd.
- Trouvez la version du chart à utiliser :
-
Votre Dynamic Engine doit avoir été déployé. Si ce n'est pas le cas, exécutez cette commande pour le déployer :Ce déploiement est celui par défaut, car la personnalisation courante est nécessaire uniquement côté environnement du Dynamic Engine. Ainsi, aucune personnalisation n'a été configurée pour l'instance du Dynamic Engine.
helm install dynamic-engine -f <engine-id>-helm-values/<engine-id>-values.yaml oci://ghcr.io/talend/helm/dynamic-engine -
Le support de la mise à l'échelle automatique s'appuie sur un Metrics server.
Pour vérifier si un Metrics server est installé, exécutez :
kubectl top podSi vous obtenez une erreur de type error: Metrics API not available, vous devez installer un Metrics server.
Pourquoi et quand exécuter cette tâche
Pour activer la mise à l'échelle automatique du pod pour les services de données et les Routes, configurez le chart dynamic-engine-environment. Cette configuration vous permet également de configurer le nombre maximal de réplicas (instances de pods) pour la mise à l'échelle automatique.
Procédure
Résultats
Après le déploiement réussi, l'environnement de Dynamic Engine peut augmenter automatiquement le nombre d'instances de pods en fonction des variations de workload lors de l'exécution des services de données et des Routes, jusqu'au nombre maximal.
Dans Talend Management Console, le statut de cet environnement devient Ready (Prêt), confirmant qu'il est prêt à exécuter des tâches ou des plans.
Que faire ensuite
Les paramètres de mise à l'échelle automatique configurés au niveau de l'environnement s'appliquent à toutes les tâches de services de données et de Routes s'exécutant sur cet environnement par défaut. Cependant, vous pouvez écraser ces paramètres au niveau des environnements à l'aide des paramètres de mise à l'échelle automatique au niveau des profils. Cela vous permet de personnaliser le comportement de mise à l'échelle pour des tâches spécifiques via les paramètres de mise à l'échelle automatique au niveau des profils, sans modifier les paramètres au niveau des environnements.
Les paramètres de mise à l'échelle automatique au niveau du profil d'exécution sont utiles, notamment quand :
- Une tâche de service de données ou de Route a différentes caractéristiques de performances et nécessite des seuils de mise à l'échelle différents de ceux de l'environnement par défaut.
- Pour éviter de surcharger votre cluster, limitez la mise à l'échelle pour les tâches consommant beaucoup de ressources.
- Une tâche est critique et nécessite un nombre de réplicas minimal à celui de l'environnement par défaut.
Pour écraser la mise à l'échelle automatique pour une tâche, créez ou mettez à jour un profil d'exécution avec les paramètres de mise à l'échelle automatique souhaités pour les arguments JVM (par exemple : -K8S:AutoscalingMaxReplicas=5). Toute tâche utilisant ce profil d'exécution hérite de ces paramètres personnalisés, ce qui écrase la configuration correspondante au niveau de l'environnement.
Pour la liste complète des paramètres de mise à l'échelle automatique et leurs arguments de profil d'exécution correspondants, consultez Configurer les paramètres de mise à l'échelle automatique au niveau des tâches.