17.6. Mise à jour des politiques sur les clusters gérés
Le Topology Aware Lifecycle Manager (TALM) remédie à un ensemble de politiques inform
pour les clusters spécifiés dans le CR ClusterGroupUpgrade
. Le TALM remédie aux politiques inform
en faisant des copies enforce
des politiques RHACM gérées. Chaque politique copiée possède sa propre règle de placement RHACM et son propre lien de placement RHACM.
Un par un, TALM ajoute chaque cluster du lot actuel à la règle de placement qui correspond à la politique gérée applicable. Si un cluster est déjà conforme à une politique, le TALM passe à l'application de cette politique sur le cluster conforme. TALM passe ensuite à l'application de la politique suivante au cluster non conforme. Une fois que TALM a terminé les mises à jour d'un lot, tous les clusters sont supprimés des règles de placement associées aux politiques copiées. La mise à jour du lot suivant commence alors.
Si un cluster spoke ne signale aucun état de conformité à RHACM, les politiques gérées sur le cluster hub peuvent manquer d'informations d'état dont le TALM a besoin. TALM gère ces cas de la manière suivante :
-
Si le champ
status.compliant
d'une politique est manquant, TALM ignore la politique et ajoute une entrée de journal. Ensuite, TALM continue à regarder le champstatus.status
de la politique. -
Si le site
status.status
d'une police est manquant, TALM produit une erreur. -
Si le statut de conformité d'un cluster n'est pas indiqué dans le champ
status.status
de la politique, TALM considère que ce cluster n'est pas conforme à cette politique.
La valeur batchTimeoutAction
de la CR ClusterGroupUpgrade
détermine ce qui se passe en cas d'échec de la mise à niveau d'un cluster. Vous pouvez spécifier continue
pour ignorer le cluster défaillant et continuer à mettre à niveau les autres clusters, ou spécifier abort
pour arrêter la remédiation de la politique pour tous les clusters. Une fois le délai écoulé, TALM supprime toutes les politiques d'application pour s'assurer qu'aucune autre mise à jour n'est effectuée sur les clusters.
Pour plus d'informations sur les politiques du RHACM, voir Aperçu des politiques.
17.6.1. Appliquer des stratégies de mise à jour aux clusters gérés Copier lienLien copié sur presse-papiers!
Vous pouvez mettre à jour vos clusters gérés en appliquant vos politiques.
Conditions préalables
- Installez le gestionnaire de cycle de vie Topology Aware (TALM).
- Provisionner un ou plusieurs clusters gérés.
-
Connectez-vous en tant qu'utilisateur disposant des privilèges
cluster-admin
. - Créer des stratégies RHACM dans le cluster hub.
Procédure
Enregistrez le contenu du CR
ClusterGroupUpgrade
dans le fichiercgu-1.yaml
.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Le nom des politiques à appliquer.
- 2
- La liste des clusters à mettre à jour.
- 3
- Le champ
maxConcurrency
indique le nombre de grappes mises à jour en même temps. - 4
- Le délai de mise à jour en minutes.
- 5
- Contrôle ce qui se passe en cas de dépassement du délai d'exécution d'un lot. Les valeurs possibles sont
abort
oucontinue
. Si aucune valeur n'est spécifiée, la valeur par défaut estcontinue
.
Créez le CR
ClusterGroupUpgrade
en exécutant la commande suivante :oc create -f cgu-1.yaml
$ oc create -f cgu-1.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Vérifiez que le CR
ClusterGroupUpgrade
a été créé dans le cluster hub en exécutant la commande suivante :oc get cgu --all-namespaces
$ oc get cgu --all-namespaces
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
NAMESPACE NAME AGE STATE DETAILS default cgu-1 8m55 NotEnabled Not Enabled
NAMESPACE NAME AGE STATE DETAILS default cgu-1 8m55 NotEnabled Not Enabled
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Vérifiez l'état de la mise à jour en exécutant la commande suivante :
oc get cgu -n default cgu-1 -ojsonpath='{.status}' | jq
$ oc get cgu -n default cgu-1 -ojsonpath='{.status}' | jq
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Le champ
spec.enable
dans le CRClusterGroupUpgrade
est mis àfalse
.
Vérifiez l'état des politiques en exécutant la commande suivante :
oc get policies -A
$ oc get policies -A
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Le champ
spec.remediationAction
des politiques actuellement appliquées aux clusters est défini surenforce
. Les politiques gérées en modeinform
à partir de la CRClusterGroupUpgrade
restent en modeinform
pendant la mise à jour.
Remplacez la valeur du champ
spec.enable
partrue
en exécutant la commande suivante :oc --namespace=default patch clustergroupupgrade.ran.openshift.io/cgu-1 \ --patch '{"spec":{"enable":true}}' --type=merge
$ oc --namespace=default patch clustergroupupgrade.ran.openshift.io/cgu-1 \ --patch '{"spec":{"enable":true}}' --type=merge
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Vérification
Vérifiez à nouveau l'état de la mise à jour en exécutant la commande suivante :
oc get cgu -n default cgu-1 -ojsonpath='{.status}' | jq
$ oc get cgu -n default cgu-1 -ojsonpath='{.status}' | jq
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Reflète l'état d'avancement de la mise à jour du lot en cours. Exécutez à nouveau cette commande pour recevoir des informations actualisées sur l'état d'avancement.
Si les politiques incluent des abonnements d'opérateurs, vous pouvez vérifier la progression de l'installation directement sur le cluster à nœud unique.
Exportez le fichier
KUBECONFIG
du cluster à nœud unique dont vous souhaitez vérifier la progression de l'installation en exécutant la commande suivante :export KUBECONFIG=<cluster_kubeconfig_absolute_path>
export KUBECONFIG=<cluster_kubeconfig_absolute_path>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Vérifiez tous les abonnements présents sur le cluster à nœud unique et recherchez celui de la politique que vous essayez d'installer via le CR
ClusterGroupUpgrade
en exécutant la commande suivante :oc get subs -A | grep -i <nom_de_l'abonnement>
oc get subs -A | grep -i <nom_de_l'abonnement>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de résultat pour la politique
cluster-logging
NAMESPACE NAME PACKAGE SOURCE CHANNEL openshift-logging cluster-logging cluster-logging redhat-operators stable
NAMESPACE NAME PACKAGE SOURCE CHANNEL openshift-logging cluster-logging cluster-logging redhat-operators stable
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Si l'une des stratégies gérées inclut une CR
ClusterVersion
, vérifiez l'état des mises à jour de la plate-forme dans le lot actuel en exécutant la commande suivante sur le cluster de rayons :oc get clusterversion
$ oc get clusterversion
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.9.5 True True 43s Working towards 4.9.7: 71 of 735 done (9% complete)
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.9.5 True True 43s Working towards 4.9.7: 71 of 735 done (9% complete)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Vérifiez l'abonnement de l'opérateur en exécutant la commande suivante :
oc get subs -n <operator-namespace> <operator-subscription> -ojsonpath="{.status}"
$ oc get subs -n <operator-namespace> <operator-subscription> -ojsonpath="{.status}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Vérifiez les plans d'installation présents sur le cluster à nœud unique associé à l'abonnement souhaité en exécutant la commande suivante :
oc get installplan -n <subscription_namespace>
oc get installplan -n <subscription_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie pour
cluster-logging
OperatorNAMESPACE NAME CSV APPROVAL APPROVED openshift-logging install-6khtw cluster-logging.5.3.3-4 Manual true
NAMESPACE NAME CSV APPROVAL APPROVED openshift-logging install-6khtw cluster-logging.5.3.3-4 Manual true
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Le champ
Approval
des plans d'installation est défini surManual
et le champApproved
passe defalse
àtrue
après l'approbation du plan d'installation par TALM.
NoteLorsque TALM remédie à une politique contenant un abonnement, il approuve automatiquement tous les plans d'installation liés à cet abonnement. Lorsque plusieurs plans d'installation sont nécessaires pour amener l'opérateur à la dernière version connue, le TALM peut approuver plusieurs plans d'installation, en passant par une ou plusieurs versions intermédiaires pour arriver à la version finale.
Vérifiez si la version du service de cluster pour l'opérateur de la politique que
ClusterGroupUpgrade
installe a atteint la phaseSucceeded
en exécutant la commande suivante :oc get csv -n <operator_namespace>
oc get csv -n <operator_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie pour OpenShift Logging Operator
NAME DISPLAY VERSION REPLACES PHASE cluster-logging.5.4.2 Red Hat OpenShift Logging 5.4.2 Succeeded
NAME DISPLAY VERSION REPLACES PHASE cluster-logging.5.4.2 Red Hat OpenShift Logging 5.4.2 Succeeded
Copy to Clipboard Copied! Toggle word wrap Toggle overflow