|
| 1 | +// Module included in the following assemblies: |
| 2 | +// |
| 3 | +// * machine-configuration/mco-update-boot-skew-mgmt-modes.adoc |
| 4 | + |
| 5 | +:_mod-docs-content-type: REFERENCE |
| 6 | +[id="mco-update-boot-skew-mgmt-about-modes_{context}"] |
| 7 | += About boot image skew enforcement modes |
| 8 | + |
| 9 | +[role="_abstract"] |
| 10 | +Review the following information to learn about the boot image skew enforcement modes. Use the information to determine the best method for your cluster. |
| 11 | + |
| 12 | +Boot image skew enforcement operates in one of the following modes: |
| 13 | + |
| 14 | +Automatic:: |
| 15 | +When set to `Automatic`, with boot image management also enabled, if the cluster is updated from one {product-title} version to the next, the MCO automatically updates the boot image version in the `MachineConfiguration` object and tests the boot image version for skew. |
| 16 | ++ |
| 17 | +[NOTE] |
| 18 | +==== |
| 19 | +In {product-title} 4.22, the automatic mode is available only for {aws-short}, {gcp-short}, {azure-short}, and {vmw-short} clusters and is the default for these platforms. |
| 20 | +==== |
| 21 | ++ |
| 22 | +The MCO automatically configures this mode when the following conditions are met: |
| 23 | ++ |
| 24 | +-- |
| 25 | +* Boot image management is available for the platform that your cluster uses. Currently boot image management is available for only {aws-short}, {gcp-short}, {azure-short}, and {vmw-short} clusters. |
| 26 | +* You have enabled boot image management for compute machine sets. |
| 27 | +* You have not set skew enforcement to the manual or none mode. |
| 28 | +-- |
| 29 | ++ |
| 30 | +For information on boot image management, see "Boot image management". |
| 31 | ++ |
| 32 | +.Example `MachineConfiguration` object with automatic skew enforcement |
| 33 | +[source,yaml] |
| 34 | +---- |
| 35 | +apiVersion: operator.openshift.io/v1 |
| 36 | +kind: MachineConfiguration |
| 37 | +metadata: |
| 38 | + name: cluster |
| 39 | +status: |
| 40 | +# ... |
| 41 | + bootImageSkewEnforcementStatus: |
| 42 | + automatic: |
| 43 | + ocpVersion: 4.22.0 |
| 44 | + mode: Automatic |
| 45 | +---- |
| 46 | ++ |
| 47 | +The MCO examines the boot image reported in the `ocpVersion` parameter to determine if the cluster is violating the boot image version skew limits. |
| 48 | + |
| 49 | +Manual:: |
| 50 | +When set to `Manual`, if the boot image version is updated, a cluster administrator is responsible for manually updating the `MachineConfiguration` object with the {op-system} version of the new boot image or the {product-title} version associated with the new boot image. The MCO then tests the boot image version for skew. |
| 51 | ++ |
| 52 | +.Example `MachineConfiguration` object with skew enforcement based on an {op-system} version |
| 53 | +[source,yaml] |
| 54 | +---- |
| 55 | +apiVersion: operator.openshift.io/v1 |
| 56 | +kind: MachineConfiguration |
| 57 | +metadata: |
| 58 | + name: cluster |
| 59 | +# ... |
| 60 | +spec: |
| 61 | + bootImageSkewEnforcement: |
| 62 | + mode: Manual |
| 63 | + manual: |
| 64 | + mode: RHCOSVersion |
| 65 | + rhcosVersion: 9.2.20251023-0 |
| 66 | +# ... |
| 67 | +status: |
| 68 | + bootImageSkewEnforcementStatus: |
| 69 | + manual: |
| 70 | + mode: RHCOSVersion |
| 71 | + rhcosVersion: 9.2.20251023-0 |
| 72 | + mode: Manual |
| 73 | +---- |
| 74 | ++ |
| 75 | +.Example `MachineConfiguration` object with skew enforcement based on an {product-title} version |
| 76 | +[source,yaml] |
| 77 | +---- |
| 78 | +apiVersion: operator.openshift.io/v1 |
| 79 | +kind: MachineConfiguration |
| 80 | +metadata: |
| 81 | + name: cluster |
| 82 | +# ... |
| 83 | +spec: |
| 84 | + bootImageSkewEnforcement: |
| 85 | + manual: |
| 86 | + mode: OCPVersion |
| 87 | + ocpVersion: 4.22.0 |
| 88 | + mode: Manual |
| 89 | +# ... |
| 90 | +status: |
| 91 | + bootImageSkewEnforcementStatus: |
| 92 | + manual: |
| 93 | + mode: OCPVersion |
| 94 | + ocpVersion: 4.22.0 |
| 95 | + mode: Manual |
| 96 | +---- |
| 97 | ++ |
| 98 | +The MCO examines the boot image reported in the `rhcosVersion` or `ocpVersion` parameter to determine if the cluster is violating the boot image version skew limits. |
| 99 | + |
| 100 | +None:: |
| 101 | +When set to `None`, boot image skew enforcement is disabled. When disabled, the MCO does not monitor for boot image skew and does not report if new nodes are provisioned with older boot images, which could introduce issues when scaling new nodes. |
| 102 | ++ |
| 103 | +.Example `MachineConfiguration` object with skew enforcement disabled |
| 104 | +[source,yaml] |
| 105 | +---- |
| 106 | +apiVersion: operator.openshift.io/v1 |
| 107 | +kind: MachineConfiguration |
| 108 | +metadata: |
| 109 | + name: cluster |
| 110 | +# ... |
| 111 | +spec: |
| 112 | + bootImageSkewEnforcement: |
| 113 | + mode: None |
| 114 | +# ... |
| 115 | +status: |
| 116 | + bootImageSkewEnforcementStatus: |
| 117 | + mode: None |
| 118 | +---- |
| 119 | ++ |
| 120 | +When in the none mode, the MCO reports a Prometheus alert that skew enforcement is disabled and that scale-up might run into issues due to old boot images. The alert does not cause any functional issues for the cluster. |
| 121 | ++ |
| 122 | +{sno-caps} clusters default to the none mode regardless of platform, because they do not scale. The skew enforcement Prometheus alert is not reported for {sno} clusters. |
| 123 | ++ |
| 124 | +Bare-metal clusters running {product-title} version 4.10 and later do not use the MCO to keep their boot images up-to-date. Skew enforcement defaults to the none mode and the skew enforcement Prometheus alert mentioned is not reported. For bare-metal clusters running {product-title} version 4.9 and earlier, you need to perform a one-time action to migrate to the 4.10 system, this is explained further in the bare metal boot image update docs. For information, see "Manually updating the boot image". |
0 commit comments