Menu Close

5.2.12. Creating Red Hat Enterprise Linux CoreOS (RHCOS) machines

Before you install a cluster on bare metal infrastructure that you provision, you must create RHCOS machines for it to use. Follow either the steps to use an ISO image or network PXE booting to create the machines.

5.2.12.1. Creating Red Hat Enterprise Linux CoreOS (RHCOS) machines using an ISO image

Before you install a cluster on bare metal infrastructure that you provision, you must create RHCOS machines for it to use. You can use an ISO image to create the machines.

Prerequisites

  • Obtain the Ignition config files for your cluster.
  • Have access to an HTTP server that you can access from your computer and that the machines that you create can access.

Procedure

  1. Upload the control plane, compute, and bootstrap Ignition config files that the installation program created to your HTTP server. Note the URLs of these files.

    重要

    If you plan to add more compute machines to your cluster after you finish installation, do not delete these files.

  2. Obtain the RHCOS images that are required for your preferred method of installing operating system instances from the RHCOS image mirror page.

    重要

    The RHCOS images might not change with every release of OpenShift Container Platform. You must download images with the highest version that is less than or equal to the OpenShift Container Platform version that you install. Use the image versions that match your OpenShift Container Platform version if they are available. Only use ISO images for this procedure. RHCOS qcow2 images are not supported for bare metal installs.

    You must download the ISO file and the RAW disk file. Those file names resemble the following examples:

    • ISO: rhcos-<version>-installer.<architecture>.iso
    • Compressed metal RAW: rhcos-<version>-metal.<architecture>.raw.gz
  3. Upload either the RAW RHCOS image file to your HTTP server and note its URL.

    重要

    If you plan to add more compute machines to your cluster after you finish installation, do not delete these files.

  4. Use the ISO to start the RHCOS installation. Use one of the following installation options:

    • Burn the ISO image to a disk and boot it directly.
    • Use ISO redirection via a LOM interface.
  5. After the instance boots, press the TAB or E key to edit the kernel command line.
  6. Add the parameters to the kernel command line:

    coreos.inst=yes
    coreos.inst.install_dev=sda 1
    coreos.inst.image_url=<image_URL> 2
    coreos.inst.ignition_url=http://example.com/config.ign 3
    ip=<dhcp or static IP address> 4 5
    bond=<bonded_interface> 6
    1
    Specify the block device of the system to install to.
    2
    Specify the URL of the RAW image that you uploaded to your server.
    3
    Specify the URL of the Ignition config file for this machine type.
    4
    Set ip=dhcp or set an individual static IP address (ip=) and DNS server (nameserver=) on each node. See Configure advanced networking for details.
    5
    If you use multiple network interfaces or DNS servers, see Configure advanced networking for details on how to configure them.
    6
    Optionally, you can bond multiple network interfaces to a single interface using the bond= option, as described in Configure advanced networking.
  7. Press Enter to complete the installation. After RHCOS installs, the system reboots. After the system reboots, it applies the Ignition config file that you specified.
  8. Continue to create the machines for your cluster.

    重要

    You must create the bootstrap and control plane machines at this time. If the control plane machines are not made schedulable, which is the default, also create at least two compute machines before you install the cluster.

5.2.12.1.1. Configure advanced networking

If you install Red Hat Enterprise Linux CoreOS (RHCOS) from an ISO image, you can add kernel arguments when you boot that image to configure the node’s networking. The following table describes and illustrates how to use those kernel arguments.

表5.23 Configure advanced networking

DescriptionExamples

To configure an IP address, either use DHCP (ip=dhcp) or set an individual static IP address (ip=<host_ip>). Then identify the DNS server IP address (nameserver=<dns_ip>) on each node. This example sets:

  • The node’s IP address to 10.10.10.2
  • The gateway address to 10.10.10.254
  • The netmask to 255.255.255.0
  • The hostname to core0.example.com
  • The DNS server address to 4.4.4.41
ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:enp1s0:none
nameserver=4.4.4.41

Specify multiple network interfaces by specifying multiple ip= entries.

ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:enp1s0:none
ip=10.10.10.3::10.10.10.254:255.255.255.0:core0.example.com:enp2s0:none

You can combine DHCP and static IP configurations on systems with multiple network interfaces.

ip=enp1s0:dhcp
ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:enp2s0:none

You can provide multiple DNS servers by adding a nameserver= entry for each server.

nameserver=1.1.1.1
nameserver=8.8.8.8

Bonding multiple network interfaces to a single interface is optionally supported using the bond= option. In these two examples:

  • The syntax for configuring a bonded interface is: bond=name[:network_interfaces][:options]
  • name is the bonding device name (bond0), network_interfaces represents a comma-separated list of physical (ethernet) interfaces (em1,em2), and options is a comma-separated list of bonding options. (Enter modinfo bonding to see available options.)
  • When you create a bonded interface using bond=, you must specify how the IP address is assigned and other information for the bonded interface.

To configure the bonded interface to use DHCP, set the bond’s IP address to dhcp. For example:

bond=bond0:em1,em2:mode=active-backup
ip=bond0:dhcp

To configure the bonded interface to use a static IP address, enter the specific IP address you want and related information. For example:

bond=bond0:em1,em2:mode=active-backup
ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:bond0:none
重要

When using the advanced networking options, you could encounter issues during the first boot of RHCOS where the statically configured address is not present or not activated properly. In such cases, you might need to manually reboot the RHCOS machine to workaround this problem. In newer versions of RHCOS, this issue is resolved. See BZ#1902584 for additional details.