10.3. Création de pools de configuration de machines pour effectuer une mise à jour de déploiement canary
La première tâche à effectuer lors de la mise à jour du déploiement de Canary est de créer un ou plusieurs pools de configuration de machines (MCP).
Créer un MCP à partir d'un nœud de travail.
Dressez la liste des nœuds de travail de votre cluster.
oc get -l 'node-role.kubernetes.io/master!=' -o 'jsonpath={range .items[*]}{.metadata.name}{"\n"}{end}' nodes
$ oc get -l 'node-role.kubernetes.io/master!=' -o 'jsonpath={range .items[*]}{.metadata.name}{"\n"}{end}' nodes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
ci-ln-pwnll6b-f76d1-s8t9n-worker-a-s75z4 ci-ln-pwnll6b-f76d1-s8t9n-worker-b-dglj2 ci-ln-pwnll6b-f76d1-s8t9n-worker-c-lldbm
ci-ln-pwnll6b-f76d1-s8t9n-worker-a-s75z4 ci-ln-pwnll6b-f76d1-s8t9n-worker-b-dglj2 ci-ln-pwnll6b-f76d1-s8t9n-worker-c-lldbm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pour les nœuds que vous souhaitez retarder, ajoutez une étiquette personnalisée au nœud :
oc label node <node name> node-role.kubernetes.io/<custom-label>=
$ oc label node <node name> node-role.kubernetes.io/<custom-label>=
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Par exemple :
oc label node ci-ln-0qv1yp2-f76d1-kl2tq-worker-a-j2ssz node-role.kubernetes.io/workerpool-canary=
$ oc label node ci-ln-0qv1yp2-f76d1-kl2tq-worker-a-j2ssz node-role.kubernetes.io/workerpool-canary=
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
node/ci-ln-gtrwm8t-f76d1-spbl7-worker-a-xk76k labeled
node/ci-ln-gtrwm8t-f76d1-spbl7-worker-a-xk76k labeled
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer le nouveau MCP :
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <nom_du_fichier>
oc create -f <nom_du_fichier>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
machineconfigpool.machineconfiguration.openshift.io/workerpool-canary created
machineconfigpool.machineconfiguration.openshift.io/workerpool-canary created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Afficher la liste des MCP du cluster et leur état actuel :
oc get machineconfigpool
$ oc get machineconfigpool
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
NAME CONFIG UPDATED UPDATING DEGRADED MACHINECOUNT READYMACHINECOUNT UPDATEDMACHINECOUNT DEGRADEDMACHINECOUNT AGE master rendered-master-b0bb90c4921860f2a5d8a2f8137c1867 True False False 3 3 3 0 97m workerpool-canary rendered-workerpool-canary-87ba3dec1ad78cb6aecebf7fbb476a36 True False False 1 1 1 0 2m42s worker rendered-worker-87ba3dec1ad78cb6aecebf7fbb476a36 True False False 2 2 2 0 97m
NAME CONFIG UPDATED UPDATING DEGRADED MACHINECOUNT READYMACHINECOUNT UPDATEDMACHINECOUNT DEGRADEDMACHINECOUNT AGE master rendered-master-b0bb90c4921860f2a5d8a2f8137c1867 True False False 3 3 3 0 97m workerpool-canary rendered-workerpool-canary-87ba3dec1ad78cb6aecebf7fbb476a36 True False False 1 1 1 0 2m42s worker rendered-worker-87ba3dec1ad78cb6aecebf7fbb476a36 True False False 2 2 2 0 97m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Le nouveau pool de configuration de machines,
workerpool-canary
, est créé et le nombre de nœuds auxquels vous avez ajouté l'étiquette personnalisée est indiqué dans le décompte des machines. Le nombre de machines MCP du travailleur est réduit du même nombre. La mise à jour du nombre de machines peut prendre plusieurs minutes. Dans cet exemple, un nœud a été déplacé du MCPworker
vers le MCPworkerpool-canary
.