Bootstrap FreeKB - OpenShift - List Machine Config Pools using the oc get machineconfigpool command
OpenShift - List Machine Config Pools using the oc get machineconfigpool command

Updated:   |  OpenShift articles

If you are not familiar with the oc command, refer to OpenShift - Getting Started with the oc command.

I like to think of a machine as OpenShift representation of a Virtual Machine, such as an Amazon Web Services (AWS) EC2 Instance, or a VMWare Virtual Machine, and then a Node, and then the pods running on the node. Machine Configs can be used to configure the Virtual Machine Operating System, such as configuring a Linux systemd service such as sshd or chronyd or Network Manager.

 

The Machine Config Pool contains the Machine Config that will be used by each Machine in each Availability Zone your OpenShift cluster is in, assuming you are running your OpenShift cluster on Amazon Web Services (AWS). In this example, the worker machines will use the rendered-worker-0ed1cb20db859faef7f01f41079c21b2 Machine Config.

The oc get machineconfigpool (or oc get mcp) command can be used to display the machine configs in the machine config pool. 

~]$ oc get machineconfigpool
NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
master   rendered-master-1ec876f89fa31673bcd9206c12063264   True      False      False      3              3                   3                     0                      628d
worker   rendered-worker-0ed1cb20db859faef7f01f41079c21b2   True      False      False      10             10                  10                    0                      628d

 

Or to only display the master machine config.

~]$ oc get machineconfigpool master
NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
master   rendered-master-1ec876f89fa31673bcd9206c12063264   True      False      False      3              3                   3                     0                      628d

 

Or to only display the worker machine config.

~]$ oc get machineconfigpool worker
NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
worker   rendered-worker-0ed1cb20db859faef7f01f41079c21b2   True      False      False      10             10                  10                    0                      628d

 

The oc get machineconfigs command can be used to list every Machine Config.

~]$ oc get machineconfigs
NAME                                                    GENERATEDBYCONTROLLER                      IGNITIONVERSION   AGE
00-master                                               64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             628d
00-worker                                               64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             628d
01-master-container-runtime                             64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             628d
01-master-kubelet                                       64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             628d
01-worker-container-runtime                             64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             628d
01-worker-kubelet                                       64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             628d
50-master-chrony                                                                                   2.2.0             628d
50-worker-chrony                                                                                   2.2.0             628d
97-master-generated-kubelet                             64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             62d
97-worker-generated-kubelet                             64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             62d
98-master-generated-kubelet                             64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             317d
98-worker-generated-kubelet                             64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             317d
99-master-generated-crio-add-inheritable-capabilities                                              3.2.0             628d
99-master-generated-registries                          64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             628d
99-master-ssh                                                                                      3.2.0             628d
99-worker-generated-crio-add-inheritable-capabilities                                              3.2.0             628d
99-worker-generated-kubelet                             64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             90d
99-worker-generated-registries                          64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             628d
99-worker-ssh                                                                                      3.2.0             628d
rendered-master-0c42f927476ca3dfcf0f21c42ffada1a        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             62d
rendered-master-0cf231fe40e2ee10a653f23e8d60ecbe        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             432d
rendered-master-17f080c2790200ba472aebf7b67bca4c        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             481d
rendered-master-1ec876f89fa31673bcd9206c12063264        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             5d8h
rendered-master-309954ecbf6cf1870ec75a7624b82ef9        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             432d
rendered-master-34e30df059394127a0a12145b64a022a        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             72d
rendered-master-3a40b33ba4fe625c09ab454cdd61d020        88140227ee7d79c77092efd92b5a4363971333e2   3.2.0             317d
rendered-master-3f631ba4fa5881fb07ec092ebcb1c827        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             566d
rendered-master-42db34aacc552e27f517c7c9590130b1        4b695d06395dd3b14870c92ea1ecee79760014d6   3.2.0             628d
rendered-master-4442d872002d5b14f4ccc8f3ba5b6c2f        4b695d06395dd3b14870c92ea1ecee79760014d6   3.2.0             628d
rendered-master-4a157cb4984fd90163cf443b430ebc72        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             317d
rendered-master-5ca2beed1143451a4943d3846634dc1a        4b695d06395dd3b14870c92ea1ecee79760014d6   3.2.0             628d
rendered-master-6f070efe6d4acf19e3669676fc7e6eb2        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             183d
rendered-master-889b19402c4355f4c21ea14d987f3d47        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             48d
rendered-master-915261fa36a26b362bce70139adaca0f        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             71d
rendered-master-9466c8877d9b0d5ae34c7e13fb57a6c0        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             336d
rendered-master-b16f61b0b5b7191cc134e35e3d1c595a        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             317d
rendered-master-bb40ba1076f30bb735b89c0543667258        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             103d
rendered-master-c5a295a7ef6c95d3cf48d9893728f92b        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             337d
rendered-master-d583473d1b6a387c02a87f41331192f6        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             432d
rendered-master-d59c91a38fcb41f75e5a50e7e2413b27        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             72d
rendered-master-e776cefb7c47a44768a54212320c76c6        842b60b1ff77a2f2bcb263a4b9488651758eb7f9   3.4.0             62d
rendered-master-eef58630a39fe353035b4b61b3fe88fb        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             5d8h
rendered-master-f95b1ea7b824bce1d0178766b7ea237a        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             44d
rendered-worker-0ed1cb20db859faef7f01f41079c21b2        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             5d8h
rendered-worker-1050b9a939caed5a973ccdd171f82100        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             90d
rendered-worker-16cc21fcb47a909833a16d5fae8b9bae        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             70d
rendered-worker-267902e8315de9355e8973ff3eec4a27        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             481d
rendered-worker-283484a22eded9758bcd4ac79459fc74        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             44d
rendered-worker-303cd4f594a0b8efced611a89997aaa4        88140227ee7d79c77092efd92b5a4363971333e2   3.2.0             317d
rendered-worker-41bffecfa559a06a1920e255b22175b1        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             317d
rendered-worker-43d0b767e58ba36d7b660477c246ba8f        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             432d
rendered-worker-53c61f0cd02511359a2416dd721a384a        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             62d
rendered-worker-5649a1cc2c5b244520393445e45023e9        4b695d06395dd3b14870c92ea1ecee79760014d6   3.2.0             628d
rendered-worker-580bf7ac19fb565deebb69d04e28ecf5        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             71d
rendered-worker-83d16ec7d5700061a2e73f5c64044488        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             432d
rendered-worker-87ab40b85c9055b285ca20ac20295adc        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             566d
rendered-worker-9692a31fffd67744779c10fe5ee1426a        4b695d06395dd3b14870c92ea1ecee79760014d6   3.2.0             628d
rendered-worker-96deeb665f02c4adca59c6ecf766d30b        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             183d
rendered-worker-a3fec6c7048cd3c77c29d2ccf91df471        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             72d
rendered-worker-b15e222c9ef3408c57b3d6712e0d0b11        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             103d
rendered-worker-b363e2a6cb3e0bb4e07ac154ba104f9e        842b60b1ff77a2f2bcb263a4b9488651758eb7f9   3.4.0             62d
rendered-worker-b3b1fae5f5fbc1a1994668f1f2395657        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             72d
rendered-worker-b88fa18d33df8605d21ce60e7e6cc458        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             476d
rendered-worker-c01770eacbadad099f4722ba6f4d5fe4        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             317d
rendered-worker-c8def51150154b427b27cb5149e52665        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             48d
rendered-worker-c8e725839a1e4d5070e8c8ba1265f445        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             337d
rendered-worker-cd60c085b15101c9af3d2fded8b7514c        4b695d06395dd3b14870c92ea1ecee79760014d6   3.2.0             628d
rendered-worker-d785d9ce8351abb59b3633f4a9c0ec74        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             432d
rendered-worker-e5dfd828b46bfc78af3a742c6db5f30a        64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             5d8h
rendered-worker-eaf0fe1f276ec7121ec17489b8e5417c        c29fe458496f7351a1e5c60e3af04d400a3d95c1   3.4.0             72d
rendered-worker-f18670f87f0069e90a3df7cb7652b73e        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             336d
rendered-worker-f89783b23f4474697a616283b5348d5a        e54335a3855fc53597e883ba98b548add39a8938   3.2.0             511d

 

You typically just want to list a specific machine config, usually the master or worker machine config in the machine config pool.

~]$ oc get machineconfig rendered-worker-0ed1cb20db859faef7f01f41079c21b2
NAME                                               GENERATEDBYCONTROLLER                      IGNITIONVERSION   AGE
rendered-worker-0ed1cb20db859faef7f01f41079c21b2   64460169e27091d8f8373b0952604ba2700d6d67   3.4.0             5d8h

 

The -o or --output option can be used to display the machine config JSON or YAML.

oc get machineconfig rendered-worker-0ed1cb20db859faef7f01f41079c21b2 --output yaml

 

The oc get nodes command can be used to list each node.

~]# oc get nodes
NAME                    STATUS   ROLES            AGE    VERSION
edge-78v55              Ready    infra,worker     625d   v1.29.10+67d3387
edge-tk6gm              Ready    infra,worker     625d   v1.29.10+67d3387
infra-7hpsl             Ready    infra,worker     625d   v1.29.10+67d3387
infra-jld8v             Ready    infra,worker     625d   v1.29.10+67d3387
infra-wxjgn             Ready    infra,worker     625d   v1.29.10+67d3387
master-0                Ready    master           628d   v1.29.10+67d3387
master-1                Ready    master           628d   v1.29.10+67d3387
master-2                Ready    master           628d   v1.29.10+67d3387

worker-2xqdt            Ready    compute,worker   628d   v1.29.10+67d3387
worker-4nd2v            Ready    compute,worker   628d   v1.29.10+67d3387

 

Each node will be configured with a current machine config and desired machine config. Assuming there is no active change, the current and desired machine config should be the same.

~]$ oc get node worker-2xqdt --output jsonpath='{.metadata.annotations.machineconfiguration\.openshift\.io/desiredConfig}{"\n"}'
rendered-worker-0ed1cb20db859faef7f01f41079c21b2

~]$ oc get node worker-2xqdt --output jsonpath='{.metadata.annotations.machineconfiguration\.openshift\.io/currentConfig}{"\n"}'
rendered-worker-0ed1cb20db859faef7f01f41079c21b

 

If one of the machines is updating, UPDATING will be True and READYMACHINECOUNT should be less than MACHINECOUNT and UPDATEDMACHINECOUNT.

~]$ oc get machineconfigpool
NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
master   rendered-master-1ec876f89fa31673bcd9206c12063264   True      False      False      3              3                   3                     0                      628d
worker   rendered-worker-0ed1cb20db859faef7f01f41079c21b2   False     True       False      10             10                  10                    0                      628d

 

The oc describe machineconfigpool command can be used to show more details of one of the machines. 

oc describe machineconfigpool master

 

Or the oc get mcp command with the --output json or --output yaml option can be used to output the JSON or YAML for the machine.

oc get mcp --output yaml

 

Or like this, to return a certain key.

oc get machineconfigpool/master --template='{{.apiVersion}}'

 




Did you find this article helpful?

If so, consider buying me a coffee over at Buy Me A Coffee



Comments


Add a Comment


Please enter 4c9c35 in the box below so that we can be sure you are a human.