Scheduler et infrastructure de planification Azure Kubernetes Fleet Manager
Cet article fournit une vue d’ensemble conceptuelle du scheduler et de l’infrastructure de planification dans Azure Kubernetes Fleet Manager (Fleet).
Qu’est-ce que le planificateur ?
Le scheduler est un composant essentiel de la charge de travail de la flotte dont la principale responsabilité est de déterminer les décisions de planification d’un pack de ressources en fonction du dernier ClusterSchedulingPolicySnapshot
généré par le ClusterResourcePlacement
.
Par défaut, le scheduler fonctionne en mode par lot, ce qui améliore les performances. Dans ce mode, il lie le ClusterResourceBinding
d’un ClusterResourcePlacement
à plusieurs clusters chaque fois que cela est possible.
Mode par lots
La planification des ressources dans un ClusterResourcePlacement
implique davantage de dépendances par rapport à la planification de pods dans un déploiement Kubernetes. Deux distinctions notables sont à noter :
- Dans un
ClusterResourcePlacement
, plusieurs réplicas de ressources ne peuvent pas être planifiés sur le même cluster. - Le
ClusterResourcePlacement
prend en charge différents types de placement au sein d’un seul objet.
Pour plus d’informations, consultez la documentation sur le planificateur Fleet open source.
Qu’est-ce que l’infrastructure de planification ?
L’infrastructure de planification de la flotte s’aligne étroitement avec l’infrastructure de planification Kubernetes native, intégrant plusieurs modifications et fonctionnalités personnalisées pour prendre en charge la charge de travail de la flotte.
Le principal avantage de cette infrastructure réside dans sa capacité à compiler des plug-ins directement dans le scheduler. Son API facilite l’implémentation de diverses fonctionnalités de planification telles que des plug-ins, garantissant ainsi un cœur léger et gérable.
Le scheduler de la flotte comprend les plug-ins intégrés fondamentaux suivants :
- Plug-in de propagation de topologie : Prend en charge les
TopologySpreadConstraints
dans la stratégie de placement. - Plug-in d’affinité de cluster : Facilite la clause d’affinité dans la stratégie de placement.
- Plug-in d’affinité de même placement : Conçu spécifiquement pour une flotte et empêche plusieurs réplicas d’être placés dans le même cluster.
- Plug-in d’éligibilité du cluster : Active la sélection du cluster en fonction de critères d’état spécifiques.
- Plug-in Répulsion et tolérance : active la sélection du cluster en fonction des répulsions sur le cluster et des tolérances sur le
ClusterResourcePlacement
.
Pour plus d’informations, consultez la documentation sur l’infrastructure de planification Fleet open source.
Étapes suivantes
Azure Kubernetes Service