What are the differences between the RHCOS OS and the RHEL 8 OS in IBM Cloud Satellite and Red Hat OpenShift on IBM Cloud?
Earlier this year, Red Hat OpenShift on IBM Cloud added support for the Red Hat Enterprise Linux 8 (RHEL 8) operating system and deprecated Red Hat Enterprise Linux 7 (RHEL 7) for some uses. Additionally, IBM Cloud Satellite added support for the Red Hat CoreOS (RHCOS) operating system.
The type of OS that is now available to you depends on the type of cluster or Satellite location you want to use. This blog will help you understand the differences between each OS in Satellite and OpenShift, and what those differences mean for you.
What is RHEL?
RHEL is an enterprise Linux OS developed by Red Hat. By default, your cluster or control plane worker nodes run on an RHEL version, such as RHEL7 or RHEL8, but in some cases, you have the option to choose another OS (more on that in a bit). The RHEL version that is applied to your worker nodes depends on the cluster version. For more details about RHEL, see Red Hat product information.
What are the requirements for RHEL worker nodes?
RHEL worker nodes must have at least 4vCPU and 16 GB memory. Additionally, if you’re using RHEL worker nodes with IBM Cloud Satellite, you’ll need to make sure that you have sufficient storage space available.
How do I specify that I want to use an RHEL version?
RHEL is the default OS your worker nodes run on when you create a cluster. The specific RHEL version that is applied depends on the cluster version. Clusters on Red Hat OpenShift version 4.8, for example, will have worker nodes that run RHEL 7, by default. However, some cluster versions allow you to specify a different RHEL version when you provision the cluster itself or when you provision a worker pool for the cluster.
If you’re creating a cluster or worker pool in the CLI, you can specify a RHEL version with the —operating-system
option. This option applies to the following commands: ibmcloud oc cluster create classic
, ibmcloud oc cluster create vpc-gen2
, ibmcloud oc cluster create satellite
, ibmcloud oc worker pool create satellite
and ibmcloud sat host attach
. For more information, see the CLI reference pages for OpenShift and Satellite.
If you’re using the UI, you’ll have the option to select which RHEL version to apply.
What is RHCOS?
RHCOS is a minimal operating system that is available in IBM Cloud Satellite. It is based on RHEL and includes automated, remote upgrade features. You can use RHCOS for your IBM Cloud Satellite managed services, such as worker nodes. Read more about the benefits of RHCOS in the Red Hat OpenShift documentation.
What are the requirements for RHCOS?
To use RHCOS hosts in your Satellite clusters, you must have a CoreOS-enabled location in a cluster that runs Red Hat OpenShift version 4.9 or later. You can only enable CoreOS when you make a location. RHCOS hosts must have at least 4 vCPU, 16GB memory and sufficient storage capacity. See Location size for RedHat CoreOS (RHCOS) enabled locations for more information on host requirements for production workloads.
When should I use RHCOS?
Since RHCOS requires a location that is created with CoreOS enabled, consider using RHCOS hosts with a completely new Satellite workload that does not need to be migrated from one cluster setup to another. You can enable only new locations for RHCOS; you cannot migrate an existing location, so make sure you plan your setup accordingly.
How do I specify that I want to use RHCOS?
Before you specify RHCOS hosts, you must create a CoreOS-enabled location. To do this in the CLI, use the ibmcloud sat location create
command with the —coreos-enabled
option specified. If you’re creating a location in the UI, you’ll see a summary of the location settings. To update the Red Hat CoreOS supported setting, click Edit. Then select the box to Enable Red Hat CoreOS support.
To specify RHCOS hosts in the CLI, use the —operating-system
option in the following commands: ibmcloud oc cluster create satellite
, ibmcloud oc worker pool create satellite
and ibmcloud sat host attach
. For more information, see the CLI reference pages for OpenShift and Satellite.
If you’re creating a Satellite cluster in the UI and want to apply RHCOS hosts, select a Satellite location that has CoreOS enabled. Then, you’ll see the option to specify RHCOS for your hosts. If you’re creating a worker pool in the UI, you’ll have the option to select an operating system based on the cluster the worker pool applies to.
What about default settings?
RHEL is still the default operating system that is applied to your cluster or worker pool when you provision them. Cluster versions with multiple RHEL versions available have a default RHEL version that is applied automatically, unless you specify otherwise. You can see a list of which RHEL versions correspond to which cluster versions in the Red Hat OpenShift on IBM Cloud documentation.
Do I need to migrate to a different OS now that RHEL 8 is available?
Good question! There are a few scenarios where you might need to migrate your cluster or control plane worker nodes to a different OS. These are determined by your cluster version and the OS of the worker nodes currently assigned to your control plane. To determine what migration steps you may need to take, see RHEL 8 is here! What does that mean for you?
Important takeaways
- The operating systems that are available to you depends on your cluster type and version.
- Remember that if you want to use RHCOS for a Satellite cluster, you must have a location with CoreOS enabled.
- An RHEL version is applied to your cluster or worker pool by default unless you specify otherwise.
- Depending on your cluster version or the OS of your control plane worker nodes, you may need to migrate your worker nodes to another OS.
Learn more about Red Hat OpenShift on IBM Cloud and IBM Cloud Satellite.