4.2. Configuration des contraintes d'étalement de la topologie des pods pour Alertmanager
Pour la surveillance de la plateforme OpenShift Container Platform, vous pouvez configurer des contraintes d'étalement de la topologie des pods pour Alertmanager afin d'affiner la planification des répliques de pods sur les nœuds dans les différentes zones. Cela permet de s'assurer que les pods Alertmanager sont hautement disponibles et s'exécutent plus efficacement, car les charges de travail sont réparties sur des nœuds dans différents centres de données ou zones d'infrastructure hiérarchiques.
Vous configurez les contraintes d'étalement de la topologie des pods pour Alertmanager dans la carte de configuration cluster-monitoring-config
.
Conditions préalables
-
Vous avez installé l'OpenShift CLI (
oc
). -
Vous avez accès au cluster en tant qu'utilisateur ayant le rôle
cluster-admin
. -
Vous avez créé l'objet
cluster-monitoring-config
ConfigMap
.
Procédure
Modifiez l'objet
cluster-monitoring-config
ConfigMap
dans l'espace de nomsopenshift-monitoring
:$ oc -n openshift-monitoring edit configmap cluster-monitoring-config
Ajoutez des valeurs pour les paramètres suivants sous
data/config.yaml/alertmanagermain
pour configurer les contraintes d'étalement de la topologie des pods :apiVersion: v1 kind: ConfigMap metadata: name: cluster-monitoring-config namespace: openshift-monitoring data: config.yaml: | alertmanagerMain: topologySpreadConstraints: - maxSkew: 1 1 topologyKey: monitoring 2 whenUnsatisfiable: DoNotSchedule 3 labelSelector: matchLabels: 4 app.kubernetes.io/name: alertmanager
- 1
- Indiquez une valeur numérique pour
maxSkew
, qui définit le degré d'inégalité de la répartition des cosses. Ce champ est obligatoire et la valeur doit être supérieure à zéro. La valeur spécifiée a un effet différent selon la valeur spécifiée pourwhenUnsatisfiable
. - 2
- Spécifiez une clé d'étiquettes de nœuds pour
topologyKey
. Ce champ est obligatoire. Les nœuds qui ont une étiquette avec cette clé et des valeurs identiques sont considérés comme étant dans la même topologie. Le planificateur essaiera de placer un nombre équilibré de pods dans chaque domaine. - 3
- Indiquez une valeur pour
whenUnsatisfiable
. Ce champ est obligatoire. Les options disponibles sontDoNotSchedule
etScheduleAnyway
. IndiquezDoNotSchedule
si vous souhaitez que la valeurmaxSkew
définisse la différence maximale autorisée entre le nombre de modules correspondants dans la topologie cible et le minimum global. IndiquezScheduleAnyway
si vous souhaitez que le planificateur planifie toujours le module, mais qu'il accorde une priorité plus élevée aux nœuds susceptibles de réduire l'asymétrie. - 4
- Spécifiez une valeur pour
matchLabels
. Cette valeur est utilisée pour identifier l'ensemble des pods correspondants auxquels appliquer les contraintes.
Enregistrez le fichier pour appliquer automatiquement les modifications.
AvertissementLorsque vous enregistrez les modifications apportées à la carte de configuration
cluster-monitoring-config
, les pods et autres ressources du projetopenshift-monitoring
peuvent être redéployés. Les processus de surveillance en cours dans ce projet peuvent également redémarrer.