Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions _javascripts/page-loader.js
Original file line number Diff line number Diff line change
Expand Up @@ -115,8 +115,8 @@ function selectVersion(currentVersion) {

// main file to edit is the file path after the version to the html at
// the end.
// Example: https://docs.openshift.com/container-platform/4.4/updating/updating-cluster-between-minor.html
// file path is updating/updating-cluster-between-minor.adoc
// Example: https://docs.openshift.com/container-platform/4.4/updating/updating-cluster-within-minor.html
// file path is updating/updating-cluster-within-minor.adoc

mainFileToEdit =
window.location.pathname.substring(
Expand Down
10 changes: 5 additions & 5 deletions _topic_maps/_topic_map.yml
Original file line number Diff line number Diff line change
Expand Up @@ -433,11 +433,11 @@ Topics:
File: understanding-the-update-service
- Name: Installing and configuring the OpenShift Update Service
File: installing-update-service
- Name: Updating a cluster between minor versions
File: updating-cluster-between-minor
- Name: Updating a cluster within a minor version from the web console
File: updating-cluster
- Name: Updating a cluster within a minor version by using the CLI
- Name: Understanding upgrade channels
File: understanding-upgrade-channels-release
- Name: Updating a cluster within minor versions using the web console
File: updating-cluster-within-minor
- Name: Updating a cluster within a minor version using the CLI
File: updating-cluster-cli
- Name: Performing update using canary rollout strategy
File: update-using-custom-machine-config-pools
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,4 @@ include::modules/ipi-install-verifying-static-ip-address-configuration.adoc[leve

.Additional resources

* See xref:../../updating/updating-cluster-between-minor.adoc#understanding-upgrade-channels_updating-cluster-between-minor[{product-title} upgrade channels and releases] for an explanation of the different release channels.
* See xref:../../updating/updating-cluster-within-minor.adoc#understanding-upgrade-channels_updating-cluster-within-minor[{product-title} upgrade channels and releases] for an explanation of the different release channels.
4 changes: 2 additions & 2 deletions installing/validating-an-installation.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@ include::modules/getting-cluster-version-status-and-update-details.adoc[leveloff

* See xref:../support/troubleshooting/troubleshooting-operator-issues.adoc#troubleshooting-operator-issues[Troubleshooting Operator issues] for information about investigating issues with Operators.

* See xref:../updating/updating-cluster-between-minor.adoc#updating-cluster-between-minor[Updating a cluster between minor versions] for more information on updating your cluster.
* See xref:../updating/updating-cluster-within-minor.adoc#updating-cluster-within-minor[Updating a cluster within a minor version using the web console] for more information on updating your cluster.

* See xref:../updating/updating-cluster-between-minor.adoc#understanding-upgrade-channels_updating-cluster-between-minor[OpenShift Container Platform upgrade channels and releases] for an overview about upgrade release channels.
* See xref:../updating/updating-cluster-within-minor.adoc#understanding-upgrade-channels_updating-cluster-within-minor[OpenShift Container Platform upgrade channels and releases] for an overview about upgrade release channels.

//Querying the status of the cluster nodes by using the CLI
include::modules/querying-the-status-of-cluster-nodes-using-the-cli.adoc[leveloffset=+1]
Expand Down
2 changes: 1 addition & 1 deletion migrating_from_ocp_3_to_4/planning-migration-3-4.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ For more information, see xref:../architecture/architecture-installation.adoc#in

In {product-title} 3.11, you upgraded your cluster by running Ansible playbooks. In {product-title} {product-version}, the cluster manages its own updates, including updates to {op-system-first} on cluster nodes. You can easily upgrade your cluster by using the web console or by using the `oc adm upgrade` command from the OpenShift CLI and the Operators will automatically upgrade themselves. If your {product-title} {product-version} cluster has {op-system-base} worker machines, then you will still need to run an Ansible playbook to upgrade those worker machines.

For more information, see xref:../updating/updating-cluster-between-minor.adoc#updating-cluster-between-minor[Updating clusters].
For more information, see xref:../updating/updating-cluster-within-minor.adoc#updating-cluster-within-minor[Updating clusters].

[id="migration-considerations"]
== Migration considerations
Expand Down
3 changes: 1 addition & 2 deletions modules/machine-health-checks-pausing.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Module included in the following assemblies:

// * updating/updating-cluster-cli.adoc
// * updating/updating-cluster-between-minor.adoc
// * updating/updating-cluster-within-minor.adoc
// * updating/updating-restricted-network-cluster.adoc

[id="machine-health-checks-pausing_{context}"]
Expand Down Expand Up @@ -66,4 +66,3 @@ Resume the machine health checks after updating the cluster. To resume the check
$ oc -n openshift-machine-api annotate mhc <mhc-name> cluster.x-k8s.io/paused-
----
====

48 changes: 10 additions & 38 deletions modules/understanding-upgrade-channels.adoc
Original file line number Diff line number Diff line change
@@ -1,38 +1,10 @@
// Module included in the following assemblies:
//
// * updating/updating-cluster.adoc
// * updating/updating-cluster-between-minor.adoc
// * updating/updating-cluster-cli.adoc
// * updating/updating-cluster-rhel-compute.adoc
// * updating/updating-disconnected-cluster.adoc
// * updating/understanding-upgrade-channels-release.adoc

[id="understanding-upgrade-channels_{context}"]
= {product-title} upgrade channels and releases

In {product-title} 4.1, Red Hat introduced the concept of channels for recommending the appropriate release versions for cluster upgrades. By controlling the pace of upgrades, these upgrade channels allow you to choose an upgrade strategy. Upgrade channels are tied to a minor version of {product-title}. For instance, {product-title} 4.9 upgrade channels recommend upgrades to 4.9 and upgrades within 4.9. They also recommend upgrades within 4.8 and from 4.8 to 4.9, to allow clusters on 4.8 to eventually upgrade to 4.9. They do not recommend upgrades to 4.10 or later releases. This strategy ensures that administrators explicitly decide to upgrade to the next minor version of {product-title}.

Upgrade channels control only release selection and do not impact the version of the cluster that you install; the `openshift-install` binary file for a specific version of {product-title} always installs that version.

ifndef::openshift-origin[]
{product-title} {product-version} offers the following upgrade channels:

* `candidate-{product-version}`
* `fast-{product-version}`
* `stable-{product-version}`
* `eus-4.y` (only when running an even-numbered 4.y cluster release, like 4.10)

If you do not want the Cluster Version Operator to fetch available updates from the upgrade recommendation service, you can use the `oc adm upgrade channel` command in the OpenShift CLI to configure an empty channel. This configuration can be helpful if, for example, a cluster has restricted network access and there is no local, reachable upgrade recommendation service.

endif::openshift-origin[]
ifdef::openshift-origin[]
{product-title} {product-version} offers the following upgrade channel:

* `stable-4`

endif::openshift-origin[]

ifndef::openshift-origin[]
[discrete]
== candidate-{product-version} channel

The `candidate-{product-version}` channel contains candidate builds for a z-stream ({product-version}.z) and previous minor version releases. Release candidates contain all the features of the product but are not supported. Use release candidate versions to test feature acceptance and assist in qualifying the next version of {product-title}. A release candidate is any build that is available in the candidate channel, including ones that do not contain link:https://semver.org/spec/v2.0.0.html#spec-item-9[a pre-release version] such as `-rc` in their names. After a version is available in the candidate channel, it goes through more quality checks. If it meets the quality standard, it is promoted to the `fast-{product-version}` or `stable-{product-version}` channels. Because of this strategy, if a specific release is available in both the `candidate-{product-version}` channel and in the `fast-{product-version}` or `stable-{product-version}` channels, it is a Red Hat-supported version. The `candidate-{product-version}` channel can include release versions from which there are no recommended updates in any channel.
Expand All @@ -51,7 +23,7 @@ endif::[]
for more build information.
====

[discrete]

== fast-{product-version} channel

The `fast-{product-version}` channel is updated with new and previous minor versions of {product-version} as soon as Red Hat declares the given version as a general availability release. As such, these releases are fully supported, are production quality, and have performed well while available as a release candidate in the `candidate-{product-version}` channel from where they were promoted. Some time after a release appears in the `fast-{product-version}` channel, it is added to the `stable-{product-version}` channel. Releases never appear in the `stable-{product-version}` channel before they appear in the `fast-{product-version}` channel.
Expand All @@ -60,34 +32,34 @@ You can use the `fast-{product-version}` channel to upgrade from a previous mino
endif::openshift-origin[]

ifndef::openshift-origin[]
[discrete]

== stable-{product-version} channel
While the `fast-{product-version}` channel contains releases as soon as their errata are published, releases are added to the `stable-{product-version}` channel after a delay. During this delay, data is collected from Red Hat SRE teams, Red Hat support services, and pre-production and production environments that participate in connected customer program about the stability of the release.

You can use the `stable-{product-version}` channel to upgrade from a previous minor version of {product-title}.
endif::openshift-origin[]
ifdef::openshift-origin[]
[discrete]

== stable-4 channel
Releases are added to the `stable-4` channel after passing all tests.

You can use the `stable-4` channel to upgrade from a previous minor version of {product-title}.
endif::openshift-origin[]

ifndef::openshift-origin[]
[discrete]

== eus-4.y channel

In addition to the stable channel, all even-numbered minor versions of {product-title} offer an link:https://access.redhat.com/support/policy/updates/openshift#ocp4_phases[Extended Update Support] (EUS). These EUS versions extend the Full and Maintenance support phases for customers with Standard and Premium Subscriptions to 18 months.

Although there is no difference between `stable-4.y` and `eus-4.y` channels until {product-title} 4.y transitions to the EUS phase, you can switch to the `eus-4.y` channel as soon as it becomes available.
Although there is no difference between `stable-4.y` and `eus-4.y` channels until {product-title} 4.y transitions to the EUS phase, you can switch to the `eus-4.y` channel as soon as it becomes available.

When upgrades to the next EUS channel are offered, you can switch to the next EUS channel and upgrade until you have reached the next EUS version.

This upgrade process does not apply for the `eus-4.6` channel.
endif::openshift-origin[]

[discrete]

== Upgrade version paths

{product-title} maintains an upgrade recommendation service that understands the version of {product-title} you have installed as well as the path to take within the channel you choose to get you to the next release.
Expand Down Expand Up @@ -117,21 +89,21 @@ The presence of an update recommendation in the `stable-4` channel at any point
endif::openshift-origin[]

ifndef::openshift-origin[]
[discrete]

== Fast and stable channel use and strategies

The `fast-{product-version}` and `stable-{product-version}` channels present a choice between receiving general availability releases as soon as they are available or allowing Red Hat to control the rollout of those updates. If issues are detected during rollout or at a later time, upgrades to that version might be blocked in both the `fast-{product-version}` and `stable-{product-version}` channels, and a new version might be introduced that becomes the new preferred upgrade target.

Customers can improve this process by configuring pre-production systems on the `fast-{product-version}` channel, configuring production systems on the `stable-{product-version}` channel, and participating in the Red Hat connected customer program. Red Hat uses this program to observe the impact of updates on your specific hardware and software configurations. Future releases might improve or alter the pace at which updates move from the `fast-{product-version}` to the `stable-{product-version}` channel.
endif::openshift-origin[]

[discrete]

== Restricted network clusters

If you manage the container images for your {product-title} clusters yourself, you must consult the Red Hat errata that is associated with product releases and note any comments that impact upgrades. During upgrade, the user interface might warn you about switching between these versions, so you must ensure that you selected an appropriate version before you bypass those warnings.

ifndef::openshift-origin[]
[discrete]

== Switching between channels

A channel can be switched from the web console or through the `adm upgrade channel` command:
Expand Down
2 changes: 1 addition & 1 deletion modules/unmanaged-operators.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Module included in the following assemblies:
//
// * architecture/architecture-installation.adoc
// * updating/updating-cluster-between-minor.adoc
// * updating/updating-cluster-within-minor.adoc

[id="unmanaged-operators_{context}"]
= Support policy for unmanaged Operators
Expand Down
3 changes: 1 addition & 2 deletions modules/update-service-overview.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
//
// * architecture/architecture-installation.adoc
// * architecture/control-plane.adoc
// * updating/updating-cluster-between-minor.adoc
// * updating/updating-cluster-within-minor.adoc
// * updating/updating-cluster-cli.adoc
// * updating/updating-cluster-rhel-compute.adoc
// * updating/updating-cluster.adoc
Expand Down Expand Up @@ -44,4 +44,3 @@ If you use {op-system-base-full} machines as workers, the MCO does not update th
With the specification for the new version applied to the old kubelet, the {op-system-base} machine cannot return to the `Ready` state. You cannot complete the update until the machines are available. However, the maximum number of unavailable nodes is set to ensure that normal cluster operations can continue with that number of machines out of service.

The OpenShift Update Service is composed of an Operator and one or more application instances.

4 changes: 2 additions & 2 deletions modules/update-upgrading-web.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Module included in the following assemblies:
//
// * updating/updating-cluster.adoc
// * updating/updating-cluster-between-minor.adoc
// * updating/updating-cluster-within-minor.adoc

ifeval::["{context}" == "updating-cluster"]
:within:
Expand All @@ -25,7 +25,7 @@ link:https://access.redhat.com/downloads/content/290[in the errata section] of t
.Prerequisites

* Have access to the web console as a user with `admin` privileges.
* Pause all `MachineHealthCheck` resources.
* Pause all `MachineHealthCheck` resources.

.Procedure

Expand Down
8 changes: 4 additions & 4 deletions modules/update-using-custom-machine-config-pools-canary.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// Module included in the following assemblies:
//
// * updating/updating-cluster-between-minor.adoc
// * updating/updating-cluster-within-minor.adoc

[id="update-using-custom-machine-config-pools-canary_{context}"]
= Performing a canary rollout update
Expand All @@ -12,9 +12,9 @@ In some specific use cases, you might want a more controlled update process wher

The rolling update process is *not* a typical update workflow. With larger clusters, it can be a time-consuming process that requires you execute multiple commands. This complexity can result in errors that can affect the entire cluster. It is recommended that you carefully consider whether your organization wants to use a rolling update and carefully plan the implementation of the process before you start.

The rolling update process described in this topic involves:
The rolling update process described in this topic involves:

* Creating one or more custom machine config pools (MCPs).
* Creating one or more custom machine config pools (MCPs).
* Labeling each node that you do not want to update immediately to move those nodes to the custom MCPs.
* Pausing those custom MCPs, which prevents updates to those nodes.
* Performing the cluster update.
Expand All @@ -26,7 +26,7 @@ The rolling update process described in this topic involves:

[NOTE]
====
Pausing an MCP prevents the Machine Config Operator from applying any configuration changes on the associated nodes. Pausing an MCP also prevents any automatically-rotated certificates from being pushed to the associated nodes, including the automatic CA rotation of the `kube-apiserver-to-kubelet-signer` CA certificate. If the MCP is paused when the `kube-apiserver-to-kubelet-signer` CA certificate expires and the MCO attempts to automatically renew the certificate, the new certificate is created but not applied across the nodes in the respective machine config pool. This causes failure in multiple `oc` commands, including but not limited to `oc debug`, `oc logs`, `oc exec`, and `oc attach`. Pausing an MCP should be done with careful consideration about the `kube-apiserver-to-kubelet-signer` CA certificate expiration and for short periods of time only.
Pausing an MCP prevents the Machine Config Operator from applying any configuration changes on the associated nodes. Pausing an MCP also prevents any automatically-rotated certificates from being pushed to the associated nodes, including the automatic CA rotation of the `kube-apiserver-to-kubelet-signer` CA certificate. If the MCP is paused when the `kube-apiserver-to-kubelet-signer` CA certificate expires and the MCO attempts to automatically renew the certificate, the new certificate is created but not applied across the nodes in the respective machine config pool. This causes failure in multiple `oc` commands, including but not limited to `oc debug`, `oc logs`, `oc exec`, and `oc attach`. Pausing an MCP should be done with careful consideration about the `kube-apiserver-to-kubelet-signer` CA certificate expiration and for short periods of time only.
====

//link that follows is in the assembly: updating-cluster-between-minor
Loading