4.11. Catalogage de la source d'ordonnancement des pods
Lorsqu'une source de catalogue Operator Lifecycle Manager (OLM) de type grpc
définit une spec.image
, l'opérateur de catalogue crée un pod qui sert le contenu de l'image définie. Par défaut, ce pod définit les éléments suivants dans sa spécification :
-
Seul le sélecteur de nœuds
kubernetes.io/os=linux
- Pas de nom de classe de priorité
- Aucune tolérance
En tant qu'administrateur, vous pouvez remplacer ces valeurs en modifiant les champs de la section facultative spec.grpcPodConfig
de l'objet CatalogSource
.
Ressources supplémentaires
4.11.1. Remplacer le sélecteur de nœuds pour les pods source du catalogue
Prequisites
-
CatalogSource
objet de type sourcegrpc
avecspec.image
défini
Procédure
Modifiez l'objet
CatalogSource
et ajoutez ou modifiez la sectionspec.grpcPodConfig
pour inclure ce qui suit :grpcPodConfig: nodeSelector: custom_label: <label>
où
<label>
est l'étiquette du sélecteur de nœud que vous souhaitez que les pods source du catalogue utilisent pour l'ordonnancement.
Ressources supplémentaires
4.11.2. Remplacer le nom de la classe de priorité pour les pods source du catalogue
Prequisites
-
CatalogSource
objet de type sourcegrpc
avecspec.image
défini
Procédure
Modifiez l'objet
CatalogSource
et ajoutez ou modifiez la sectionspec.grpcPodConfig
pour inclure ce qui suit :grpcPodConfig: priorityClassName: <priority_class>
où
<priority_class>
est l'un des suivants :-
Une des classes de priorité par défaut fournies par Kubernetes :
system-cluster-critical
ousystem-node-critical
-
Un ensemble vide (
""
) pour attribuer la priorité par défaut - Une classe de priorité préexistante et définie sur mesure
-
Une des classes de priorité par défaut fournies par Kubernetes :
Auparavant, le seul paramètre d'ordonnancement des pods qui pouvait être remplacé était priorityClassName
. Pour ce faire, il suffisait d'ajouter l'annotation operatorframework.io/priorityclass
à l'objet CatalogSource
. Par exemple :
apiVersion: operators.coreos.com/v1alpha1 kind: CatalogSource metadata: name: example-catalog namespace: namespace: openshift-marketplace annotations: operatorframework.io/priorityclass: system-cluster-critical
Si un objet CatalogSource
définit à la fois l'annotation et spec.grpcPodConfig.priorityClassName
, l'annotation est prioritaire sur le paramètre de configuration.
Ressources supplémentaires
4.11.3. Dépassement des tolérances pour les pods source du catalogue
Prequisites
-
CatalogSource
objet de type sourcegrpc
avecspec.image
défini
Procédure
Modifiez l'objet
CatalogSource
et ajoutez ou modifiez la sectionspec.grpcPodConfig
pour inclure ce qui suit :grpcPodConfig: tolerations: - key: "<key_name>" operator: "<operator_type>" value: "<value>" effect: "<effect>"
Ressources supplémentaires