OpenShift Container Platform 4.17 Installing On A Single Node
OpenShift Container Platform 4.17 Installing On A Single Node
17
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons
Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is
available at
http://creativecommons.org/licenses/by-sa/3.0/
. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must
provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert,
Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift,
Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States
and other countries.
Linux ® is the registered trademark of Linus Torvalds in the United States and other countries.
XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States
and/or other countries.
MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and
other countries.
Node.js ® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the
official Joyent Node.js open source or commercial project.
The OpenStack ® Word Mark and OpenStack logo are either registered trademarks/service marks
or trademarks/service marks of the OpenStack Foundation, in the United States and other
countries and are used with the OpenStack Foundation's permission. We are not affiliated with,
endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
Abstract
This document describes how to install OpenShift Container Platform on a single node.
Table of Contents
Table of Contents
.CHAPTER
. . . . . . . . . . 1.. .PREPARING
. . . . . . . . . . . . .TO
. . . .INSTALL
. . . . . . . . .ON
. . . .A. .SINGLE
. . . . . . . . NODE
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3. . . . . . . . . . . . .
1.1. PREREQUISITES 3
1.2. ABOUT OPENSHIFT ON A SINGLE NODE 3
1.3. REQUIREMENTS FOR INSTALLING OPENSHIFT ON A SINGLE NODE 3
.CHAPTER
. . . . . . . . . . 2.
. . INSTALLING
. . . . . . . . . . . . . .OPENSHIFT
. . . . . . . . . . . . .ON
. . . .A. .SINGLE
. . . . . . . .NODE
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6. . . . . . . . . . . . .
2.1. INSTALLING SINGLE-NODE OPENSHIFT USING THE ASSISTED INSTALLER 6
2.1.1. Generating the discovery ISO with the Assisted Installer 6
2.1.2. Installing single-node OpenShift with the Assisted Installer 7
2.2. INSTALLING SINGLE-NODE OPENSHIFT MANUALLY 7
2.2.1. Generating the installation ISO with coreos-installer 8
2.2.2. Monitoring the cluster installation using openshift-install 10
2.3. INSTALLING SINGLE-NODE OPENSHIFT ON CLOUD PROVIDERS 11
2.3.1. Additional requirements for installing single-node OpenShift on a cloud provider 11
2.3.2. Supported cloud providers for single-node OpenShift 12
2.3.3. Installing single-node OpenShift on AWS 12
2.3.4. Installing single-node OpenShift on Azure 12
2.3.5. Installing single-node OpenShift on GCP 12
2.4. CREATING A BOOTABLE ISO IMAGE ON A USB DRIVE 12
2.5. BOOTING FROM AN HTTP-HOSTED ISO IMAGE USING THE REDFISH API 13
2.6. CREATING A CUSTOM LIVE RHCOS ISO FOR REMOTE SERVER ACCESS 14
2.7. INSTALLING SINGLE-NODE OPENSHIFT WITH IBM Z AND IBM LINUXONE 16
Hardware requirements 16
2.7.1. Installing single-node OpenShift with z/VM on IBM Z and IBM LinuxONE 16
2.7.2. Installing single-node OpenShift with RHEL KVM on IBM Z and IBM LinuxONE 21
2.7.3. Installing single-node OpenShift in an LPAR on IBM Z and IBM LinuxONE 24
2.8. INSTALLING SINGLE-NODE OPENSHIFT WITH IBM POWER 29
Hardware requirements 29
2.8.1. Setting up basion for single-node OpenShift with IBM Power 29
2.8.2. Installing single-node OpenShift with IBM Power 32
1
OpenShift Container Platform 4.17 Installing on a single node
2
CHAPTER 1. PREPARING TO INSTALL ON A SINGLE NODE
1.1. PREREQUISITES
You reviewed details about the OpenShift Container Platform installation and update
processes.
You have read the documentation on selecting a cluster installation method and preparing it for
users.
IMPORTANT
Administration host: You must have a computer to prepare the ISO, to create the USB boot
drive, and to monitor the installation.
NOTE
For the ppc64le platform, the host should prepare the ISO, but does not need to
create the USB boot drive. The ISO can be mounted to PowerVM directly.
NOTE
CPU Architecture: Installing OpenShift Container Platform on a single node supports x86_64,
arm64,ppc64le, and s390x CPU architectures.
3
OpenShift Container Platform 4.17 Installing on a single node
NOTE
One vCPU equals one physical core. However, if you enable simultaneous
multithreading (SMT), or Hyper-Threading, use the following formula to calculate
the number of vCPUs that represent one physical core:
The server must have a Baseboard Management Controller (BMC) when booting with virtual
media.
NOTE
Networking: The server must have access to the internet or access to a local registry if it is not
connected to a routable network. The server must have a DHCP reservation or a static IP
address for the Kubernetes API, ingress route, and cluster node domain names. You must
configure the DNS to resolve the IP address to each of the following fully qualified domain
names (FQDN):
4
CHAPTER 1. PREPARING TO INSTALL ON A SINGLE NODE
IMPORTANT
5
OpenShift Container Platform 4.17 Installing on a single node
Consider using single-node OpenShift when you want to run a cluster in a low-resource or an isolated
environment for testing, troubleshooting, training, or small-scale project purposes.
See the Assisted Installer for OpenShift Container Platform documentation for details and configuration
options.
Procedure
1. On the administration host, open a browser and navigate to Red Hat OpenShift Cluster
Manager.
example.com
All DNS records must be subdomains of this base domain and include the cluster name, for
example:
<cluster_name>.example.com
NOTE
You cannot change the base domain or cluster name after cluster installation.
5. Select Install single node OpenShift (SNO) and complete the rest of the wizard steps.
Download the discovery ISO.
IMPORTANT
6
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
IMPORTANT
Ensure that you take note of the discovery ISO URL for installing with virtual
media.
If you enable OpenShift Virtualization during this process, you must have a
second local storage device of at least 50GiB for your virtual machines.
Additional resources
Prerequisites
Ensure that the boot drive order in the server BIOS settings defaults to booting the server from
the target installation disk.
Procedure
2. Boot the server from the discovery ISO image. The discovery ISO image writes the system
configuration to the target installation disk and automatically triggers a server restart.
3. On the administration host, return to the browser. Wait for the host to appear in the list of
discovered hosts. If necessary, reload the Assisted Clusters page and select the cluster name.
4. Complete the install wizard steps. Add networking details, including a subnet from the available
subnets. Add the SSH public key if necessary.
5. Monitor the installation’s progress. Watch the cluster events. After the installation process
finishes writing the operating system image to the server’s hard disk, the server restarts.
Additional resources
7
OpenShift Container Platform 4.17 Installing on a single node
Additional resources
Prerequisites
Install podman.
NOTE
Procedure
$ export OCP_VERSION=<ocp_version> 1
$ export ARCH=<architecture> 1
1 Replace <architecture> with the target host architecture, for example, aarch64 or
x86_64.
3. Download the OpenShift Container Platform client (oc) and make it available for use by
entering the following commands:
$ curl -k https://mirror.openshift.com/pub/openshift-
v4/clients/ocp/$OCP_VERSION/openshift-client-linux.tar.gz -o oc.tar.gz
$ chmod +x oc
4. Download the OpenShift Container Platform installer and make it available for use by entering
the following commands:
8
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
$ curl -k https://mirror.openshift.com/pub/openshift-
v4/clients/ocp/$OCP_VERSION/openshift-install-linux.tar.gz -o openshift-install-linux.tar.gz
$ chmod +x openshift-install
apiVersion: v1
baseDomain: <domain> 1
compute:
- name: worker
replicas: 0 2
controlPlane:
name: master
replicas: 1 3
metadata:
name: <name> 4
networking: 5
clusterNetwork:
- cidr: 10.128.0.0/14
hostPrefix: 23
machineNetwork:
- cidr: 10.0.0.0/16 6
networkType: OVNKubernetes
serviceNetwork:
- 172.30.0.0/16
platform:
none: {}
bootstrapInPlace:
installationDisk: /dev/disk/by-id/<disk_id> 7
pullSecret: '<pull_secret>' 8
sshKey: |
<ssh_key> 9
2 Set the compute replicas to 0. This makes the control plane node schedulable.
3 Set the controlPlane replicas to 1. In conjunction with the previous compute setting, this
setting ensures the cluster runs on a single node.
9
OpenShift Container Platform 4.17 Installing on a single node
5 Set the networking details. OVN-Kubernetes is the only allowed network plugin type for
single-node clusters.
6 Set the cidr value to match the subnet of the single-node OpenShift cluster.
7 Set the path to the installation disk drive, for example, /dev/disk/by-id/wwn-
0x64cd98f04fde100024684cf3034da5c2.
8 Copy the pull secret from Red Hat OpenShift Cluster Manager and add the contents to
this configuration setting.
9 Add the public SSH key from the administration host so that you can log in to the cluster
after installation.
$ mkdir ocp
$ cp install-config.yaml ocp
9. Embed the ignition data into the RHCOS ISO by running the following commands:
Additional resources
See Requirements for installing OpenShift on a single node for more information about
installing OpenShift Container Platform on a single node.
See Cluster capabilities for more information about enabling cluster capabilities that were
disabled before installation.
See Optional cluster capabilities in OpenShift Container Platform 4.17 for more information
about the features provided by each capability.
Prerequisites
Ensure that the boot drive order in the server BIOS settings defaults to booting the server from
the target installation disk.
10
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
Procedure
2. Boot the server from the discovery ISO image. The discovery ISO image writes the system
configuration to the target installation disk and automatically triggers a server restart.
3. On the administration host, monitor the installation by running the following command:
Verification
After the installation is complete, check the environment by running the following command:
$ export KUBECONFIG=ocp/auth/kubeconfig
$ oc get nodes
Example output
Additional resources
A high availability cluster requires a temporary bootstrap machine, three control plane machines,
and at least two compute machines. For a single-node OpenShift cluster, you need only a
temporary bootstrap machine and one cloud instance for the control plane node and no
compute nodes.
The minimum resource requirements for high availability cluster installation include a control
plane node with 4 vCPUs and 100GB of storage. For a single-node OpenShift cluster, you must
have a minimum of 8 vCPUs and 120GB of storage.
11
OpenShift Container Platform 4.17 Installing on a single node
The compute.replicas setting in the install-config.yaml file should be set to 0. This makes the
control plane node schedulable.
Additional resources
Additional resources
Additional resources
12
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
Procedure
where:
<path_to_iso>
is the relative path to the downloaded ISO file, for example, rhcos-live.iso.
<path_to_usb>
is the location of the connected USB drive, for example, /dev/sdb.
After the ISO is copied to the USB drive, you can use the USB drive to install software on the
server.
NOTE
IMPORTANT
Ensure that you have the latest firmware version of iDRAC that is compatible with your
hardware. If you have any issues with the hardware or firmware, you must contact the
provider.
Prerequisites
Download the installation Red Hat Enterprise Linux CoreOS (RHCOS) ISO.
Procedure
2. Boot the host from the hosted ISO file, for example:
a. Call the Redfish API to set the hosted ISO as the VirtualMedia boot media by running the
following command:
13
OpenShift Container Platform 4.17 Installing on a single node
Where:
<bmc_username>:<bmc_password>
Is the username and password for the target host BMC.
<hosted_iso_file>
Is the URL for the hosted installation ISO, for example:
http://webserver.example.com/rhcos-live-minimal.iso. The ISO must be accessible
from the target host machine.
<host_bmc_address>
Is the BMC IP address of the target host machine.
b. Set the host to boot from the VirtualMedia device by running the following command:
d. Optional: If the host is powered off, you can boot it using the {"ResetType": "On"} switch.
Run the following command:
Prerequisites
Procedure
1. Download the coreos-installer binary from the coreos-installer image mirror page.
3. Create the embedded.yaml file that the butane utility uses to create the Ignition file:
14
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
variant: openshift
version: 4.17.0
metadata:
name: sshd
labels:
machineconfiguration.openshift.io/role: worker
passwd:
users:
- name: core 1
ssh_authorized_keys:
- '<ssh_key>'
4. Run the butane utility to create the Ignition file using the following command:
5. After the Ignition file is created, you can include the configuration in a new live RHCOS ISO,
which is named rhcos-sshd-4.17.0-x86_64-live.x86_64.iso, with the coreos-installer utility:
Verification
Check that the custom live ISO can be used to boot the server by running the following
command:
Example output
{
"ignition": {
"version": "3.2.0"
},
"passwd": {
"users": [
{
"name": "core",
"sshAuthorizedKeys": [
"ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAABAQCZnG8AIzlDAhpyENpK2qKiTT8EbRWOrz7NXjRzo
pbPu215mocaJgjjwJjh1cYhgPhpAp6M/ttTk7I4OI7g4588Apx4bwJep6oWTU35LkY8ZxkGVPAJL
8kVlTdKQviDv3XX12l4QfnDom4tm4gVbRH0gNT1wzhnLP+LKYm2Ohr9D7p9NBnAdro6k++X
WgkDeijLRUTwdEyWunIdW1f8G0Mg8Y1Xzr13BUo3+8aey7HLKJMDtobkz/C8ESYA/f7HJc5Fx
F0XbapWWovSSDJrr9OmlL9f4TfE+cQk3s+eoKiz2bgNPRgEEwihVbGsCN4grA+RzLCAOpec+
2dTJrQvFqsD [email protected]"
]
}
15
OpenShift Container Platform 4.17 Installing on a single node
]
}
}
NOTE
Installing a single-node cluster on IBM Z® simplifies installation for development and test
environments and requires less resource requirements at entry level.
Hardware requirements
The equivalent of two Integrated Facilities for Linux (IFL), which are SMT2 enabled, for each
cluster.
At least one network connection to both connect to the LoadBalancer service and to serve
data for traffic outside the cluster.
NOTE
You can use dedicated or shared IFLs to assign sufficient compute resources. Resource
sharing is one of the key strengths of IBM Z®. However, you must adjust capacity
correctly on each hypervisor layer and ensure sufficient resources for every OpenShift
Container Platform cluster.
2.7.1. Installing single-node OpenShift with z/VM on IBM Z and IBM LinuxONE
Prerequisites
Procedure
1. Set the OpenShift Container Platform version by running the following command:
$ OCP_VERSION=<ocp_version> 1
16
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
$ ARCH=<architecture> 1
3. Download the OpenShift Container Platform client (oc) and make it available for use by
entering the following commands:
$ curl -k https://mirror.openshift.com/pub/openshift-
v4/${ARCH}/clients/ocp/${OCP_VERSION}/openshift-client-linux.tar.gz -o oc.tar.gz
$ chmod +x oc
4. Download the OpenShift Container Platform installer and make it available for use by entering
the following commands:
$ curl -k https://mirror.openshift.com/pub/openshift-
v4/${ARCH}/clients/ocp/${OCP_VERSION}/openshift-install-linux.tar.gz -o openshift-install-
linux.tar.gz
$ chmod +x openshift-install
apiVersion: v1
baseDomain: <domain> 1
compute:
- name: worker
replicas: 0 2
controlPlane:
name: master
replicas: 1 3
metadata:
name: <name> 4
networking: 5
clusterNetwork:
- cidr: 10.128.0.0/14
hostPrefix: 23
machineNetwork:
- cidr: 10.0.0.0/16 6
networkType: OVNKubernetes
serviceNetwork:
- 172.30.0.0/16
platform:
none: {}
bootstrapInPlace:
installationDisk: /dev/disk/by-id/<disk_id> 7
17
OpenShift Container Platform 4.17 Installing on a single node
pullSecret: '<pull_secret>' 8
sshKey: |
<ssh_key> 9
2 Set the compute replicas to 0. This makes the control plane node schedulable.
3 Set the controlPlane replicas to 1. In conjunction with the previous compute setting, this
setting ensures the cluster runs on a single node.
5 Set the networking details. OVN-Kubernetes is the only allowed network plugin type for
single-node clusters.
6 Set the cidr value to match the subnet of the single-node OpenShift cluster.
7 Set the path to the installation disk drive, for example, /dev/disk/by-id/wwn-
0x64cd98f04fde100024684cf3034da5c2.
8 Copy the pull secret from Red Hat OpenShift Cluster Manager and add the contents to
this configuration setting.
9 Add the public SSH key from the administration host so that you can log in to the cluster
after installation.
$ mkdir ocp
$ cp install-config.yaml ocp
7. Obtain the RHEL kernel, initramfs, and rootfs artifacts from the Product Downloads page on
the Red Hat Customer Portal or from the RHCOS image mirror page.
IMPORTANT
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. Only use the
appropriate kernel, initramfs, and rootfs artifacts described in the following
procedure.
The file names contain the OpenShift Container Platform version number. They resemble the
following examples:
kernel
rhcos-<version>-live-kernel-<architecture>
initramfs
18
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
rhcos-<version>-live-initramfs.<architecture>.img
rootfs
rhcos-<version>-live-rootfs.<architecture>.img
NOTE
Ignition files
cio_ignore=all,!condev rd.neednet=1 \
console=ttysclp0 \
ignition.firstboot ignition.platform.id=metal \
ignition.config.url=http://<http_server>:8080/ignition/bootstrap-in-place-for-live-iso.ign \ 1
coreos.live.rootfs_url=http://<http_server>/rhcos-<version>-live-rootfs.<architecture>.img \ 2
ip=<ip>::<gateway>:<mask>:<hostname>::none nameserver=<dns> \ 3
rd.znet=qeth,0.0.bdd0,0.0.bdd1,0.0.bdd2,layer2=1 \
rd.dasd=0.0.4411 \ 4
rd.zfcp=0.0.8001,0x50050763040051e3,0x4000406300000000 \ 5
zfcp.allow_lun_scan=0
1 For the ignition.config.url= parameter, specify the Ignition file for the machine role. Only
HTTP and HTTPS protocols are supported.
2 For the coreos.live.rootfs_url= artifact, specify the matching rootfs artifact for the
kernel`and `initramfs you are booting. Only HTTP and HTTPS protocols are supported.
3 For the ip= parameter, assign the IP address automatically using DHCP or manually as
described in "Installing a cluster with z/VM on IBM Z® and IBM® LinuxONE".
4 For installations on DASD-type disks, use rd.dasd= to specify the DASD where RHCOS is
to be installed. Omit this entry for FCP-type disks.
10. Transfer the following artifacts, files, and images to z/VM. For example by using FTP:
Parameter files
RHCOS images
19
OpenShift Container Platform 4.17 Installing on a single node
For details about how to transfer the files with FTP and boot from the virtual reader, see
Installing under Z/VM .
11. Punch the files to the virtual reader of the z/VM guest virtual machine that is to become your
bootstrap node.
13. IPL the bootstrap machine from the reader by running the following command:
$ cp ipl c
14. After the first reboot of the virtual machine, run the following commands directly after one
another:
a. To boot a DASD device after first reboot, run the following commands:
where:
<devno>
Specifies the device number of the boot device as seen by the guest.
$ cp vi vmsg 0 <kernel_parameters>
where:
<kernel_parameters>
Specifies a set of kernel parameters to be stored as system control program data
(SCPDATA). When booting Linux, these kernel parameters are concatenated to the end
of the existing kernel parameters that are used by your boot configuration. The
combined parameter string must not exceed 896 characters.
b. To boot an FCP device after first reboot, run the following commands:
where:
<wwpn>
Specifies the target port and <lun> the logical unit in hexadecimal format.
where:
<n>
Specifies the kernel to be booted.
where:
20
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
<kernel_parameters>
Specifies a set of kernel parameters to be stored as system control program data
(SCPDATA). When booting Linux, these kernel parameters are concatenated to the end
of the existing kernel parameters that are used by your boot configuration. The
combined parameter string must not exceed 896 characters.
<APPEND|NEW>
Optional: Specify APPEND to append kernel parameters to existing SCPDATA. This is
the default. Specify NEW to replace existing SCPDATA.
Example
To start the IPL and boot process, run the following command:
$ cp i <devno>
where:
<devno>
Specifies the device number of the boot device as seen by the guest.
2.7.2. Installing single-node OpenShift with RHEL KVM on IBM Z and IBM LinuxONE
Prerequisites
Procedure
1. Set the OpenShift Container Platform version by running the following command:
$ OCP_VERSION=<ocp_version> 1
$ ARCH=<architecture> 1
3. Download the OpenShift Container Platform client (oc) and make it available for use by
entering the following commands:
$ curl -k https://mirror.openshift.com/pub/openshift-
v4/${ARCH}/clients/ocp/${OCP_VERSION}/openshift-client-linux.tar.gz -o oc.tar.gz
21
OpenShift Container Platform 4.17 Installing on a single node
$ chmod +x oc
4. Download the OpenShift Container Platform installer and make it available for use by entering
the following commands:
$ curl -k https://mirror.openshift.com/pub/openshift-
v4/${ARCH}/clients/ocp/${OCP_VERSION}/openshift-install-linux.tar.gz -o openshift-install-
linux.tar.gz
$ chmod +x openshift-install
apiVersion: v1
baseDomain: <domain> 1
compute:
- name: worker
replicas: 0 2
controlPlane:
name: master
replicas: 1 3
metadata:
name: <name> 4
networking: 5
clusterNetwork:
- cidr: 10.128.0.0/14
hostPrefix: 23
machineNetwork:
- cidr: 10.0.0.0/16 6
networkType: OVNKubernetes
serviceNetwork:
- 172.30.0.0/16
platform:
none: {}
bootstrapInPlace:
installationDisk: /dev/disk/by-id/<disk_id> 7
pullSecret: '<pull_secret>' 8
sshKey: |
<ssh_key> 9
2 Set the compute replicas to 0. This makes the control plane node schedulable.
3 Set the controlPlane replicas to 1. In conjunction with the previous compute setting, this
setting ensures the cluster runs on a single node.
Set the networking details. OVN-Kubernetes is the only allowed network plugin type for
22
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
5 Set the networking details. OVN-Kubernetes is the only allowed network plugin type for
single-node clusters.
6 Set the cidr value to match the subnet of the single-node OpenShift cluster.
7 Set the path to the installation disk drive, for example, /dev/disk/by-id/wwn-
0x64cd98f04fde100024684cf3034da5c2.
8 Copy the pull secret from Red Hat OpenShift Cluster Manager and add the contents to
this configuration setting.
9 Add the public SSH key from the administration host so that you can log in to the cluster
after installation.
$ mkdir ocp
$ cp install-config.yaml ocp
7. Obtain the RHEL kernel, initramfs, and rootfs artifacts from the Product Downloads page on
the Red Hat Customer Portal or from the RHCOS image mirror page.
IMPORTANT
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. Only use the
appropriate kernel, initramfs, and rootfs artifacts described in the following
procedure.
The file names contain the OpenShift Container Platform version number. They resemble the
following examples:
kernel
rhcos-<version>-live-kernel-<architecture>
initramfs
rhcos-<version>-live-initramfs.<architecture>.img
rootfs
rhcos-<version>-live-rootfs.<architecture>.img
8. Before you launch virt-install, move the following files and artifacts to an HTTP or HTTPS
server:
Ignition files
23
OpenShift Container Platform 4.17 Installing on a single node
Ignition files
$ virt-install \
--name <vm_name> \
--autostart \
--memory=<memory_mb> \
--cpu host \
--vcpus <vcpus> \
--location <media_location>,kernel=<rhcos_kernel>,initrd=<rhcos_initrd> \ 1
--disk size=100 \
--network network=<virt_network_parm> \
--graphics none \
--noautoconsole \
--extra-args "rd.neednet=1 ignition.platform.id=metal ignition.firstboot" \
--extra-args "ignition.config.url=http://<http_server>/bootstrap.ign" \ 2
--extra-args "coreos.live.rootfs_url=http://<http_server>/rhcos-<version>-live-rootfs.
<architecture>.img" \ 3
--extra-args "ip=<ip>::<gateway>:<mask>:<hostname>::none" \ 4
--extra-args "nameserver=<dns>" \
--extra-args "console=ttysclp0" \
--wait
1 For the --location parameter, specify the location of the kernel/initrd on the HTTP or HTTPS
server.
2 Specify the location of the bootstrap.ign config file. Only HTTP and HTTPS protocols are
supported.
3 For the coreos.live.rootfs_url= artifact, specify the matching rootfs artifact for the kernel and
initramfs you are booting. Only HTTP and HTTPS protocols are supported.
4 For the ip= parameter, assign the IP address manually as described in "Installing a cluster with
RHEL KVM on IBM Z® and IBM® LinuxONE".
Prerequisites
If you are deploying a single-node cluster there are zero compute nodes, the Ingress Controller
pods run on the control plane nodes. In single-node cluster deployments, you must configure
your application ingress load balancer to route HTTP and HTTPS traffic to the control plane
nodes. See the Load balancing requirements for user-provisioned infrastructure section for more
information.
Procedure
1. Set the OpenShift Container Platform version by running the following command:
24
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
$ OCP_VERSION=<ocp_version> 1
$ ARCH=<architecture> 1
3. Download the OpenShift Container Platform client (oc) and make it available for use by
entering the following commands:
$ curl -k https://mirror.openshift.com/pub/openshift-
v4/${ARCH}/clients/ocp/${OCP_VERSION}/openshift-client-linux.tar.gz -o oc.tar.gz
$ chmod +x oc
4. Download the OpenShift Container Platform installer and make it available for use by entering
the following commands:
$ curl -k https://mirror.openshift.com/pub/openshift-
v4/${ARCH}/clients/ocp/${OCP_VERSION}/openshift-install-linux.tar.gz -o openshift-install-
linux.tar.gz
$ chmod +x openshift-install
apiVersion: v1
baseDomain: <domain> 1
compute:
- name: worker
replicas: 0 2
controlPlane:
name: master
replicas: 1 3
metadata:
name: <name> 4
networking: 5
clusterNetwork:
- cidr: 10.128.0.0/14
hostPrefix: 23
machineNetwork:
- cidr: 10.0.0.0/16 6
networkType: OVNKubernetes
25
OpenShift Container Platform 4.17 Installing on a single node
serviceNetwork:
- 172.30.0.0/16
platform:
none: {}
pullSecret: '<pull_secret>' 7
sshKey: |
<ssh_key> 8
2 Set the compute replicas to 0. This makes the control plane node schedulable.
3 Set the controlPlane replicas to 1. In conjunction with the previous compute setting, this
setting ensures the cluster runs on a single node.
5 Set the networking details. OVN-Kubernetes is the only allowed network plugin type for
single-node clusters.
6 Set the cidr value to match the subnet of the single-node OpenShift cluster.
7 Copy the pull secret from Red Hat OpenShift Cluster Manager and add the contents to
this configuration setting.
8 Add the public SSH key from the administration host so that you can log in to the cluster
after installation.
$ mkdir ocp
$ cp install-config.yaml ocp
7. Change to the directory that contains the OpenShift Container Platform installation program
and generate the Kubernetes manifests for the cluster:
1 For <installation_directory>, specify the installation directory that contains the install-
config.yaml file you created.
b. Locate the mastersSchedulable parameter and ensure that it is set to true as shown in the
following spec stanza:
26
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
spec:
mastersSchedulable: true
status: {}
9. Create the Ignition configuration files by running the following command from the directory that
contains the installation program:
10. Obtain the RHEL kernel, initramfs, and rootfs artifacts from the Product Downloads page on
the Red Hat Customer Portal or from the RHCOS image mirror page.
IMPORTANT
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. Only use the
appropriate kernel, initramfs, and rootfs artifacts described in the following
procedure.
The file names contain the OpenShift Container Platform version number. They resemble the
following examples:
kernel
rhcos-<version>-live-kernel-<architecture>
initramfs
rhcos-<version>-live-initramfs.<architecture>.img
rootfs
rhcos-<version>-live-rootfs.<architecture>.img
NOTE
11. Move the following artifacts and files to an HTTP or HTTPS server:
Ignition files
cio_ignore=all,!condev rd.neednet=1 \
console=ttysclp0 \
27
OpenShift Container Platform 4.17 Installing on a single node
coreos.inst.install_dev=/dev/<block_device> \ 1
coreos.inst.ignition_url=http://<http_server>/bootstrap.ign \ 2
coreos.live.rootfs_url=http://<http_server>/rhcos-<version>-live-rootfs.<architecture>.img \ 3
ip=<ip>::<gateway>:<netmask>:<hostname>::none nameserver=<dns> \ 4
rd.znet=qeth,0.0.1140,0.0.1141,0.0.1142,layer2=1,portno=0 \
rd.dasd=0.0.4411 \ 5
rd.zfcp=0.0.8001,0x50050763040051e3,0x4000406300000000 \ 6
zfcp.allow_lun_scan=0
1 Specify the block device on the system to install to. For installations on DASD-type disk
use dasda, for installations on FCP-type disks use sda.
2 Specify the location of the bootstrap.ign config file. Only HTTP and HTTPS protocols are
supported.
3 For the coreos.live.rootfs_url= artifact, specify the matching rootfs artifact for the
kernel`and `initramfs you are booting. Only HTTP and HTTPS protocols are supported.
4 For the ip= parameter, assign the IP address manually as described in "Installing a cluster in
an LPAR on IBM Z® and IBM® LinuxONE".
5 For installations on DASD-type disks, use rd.dasd= to specify the DASD where RHCOS is
to be installed. Omit this entry for FCP-type disks.
cio_ignore=all,!condev rd.neednet=1 \
console=ttysclp0 \
coreos.inst.install_dev=/dev/<block_device> \
coreos.inst.ignition_url=http://<http_server>/master.ign \ 1
coreos.live.rootfs_url=http://<http_server>/rhcos-<version>-live-rootfs.<architecture>.img \
ip=<ip>::<gateway>:<netmask>:<hostname>::none nameserver=<dns> \
rd.znet=qeth,0.0.1140,0.0.1141,0.0.1142,layer2=1,portno=0 \
rd.dasd=0.0.4411 \
rd.zfcp=0.0.8001,0x50050763040051e3,0x4000406300000000 \
zfcp.allow_lun_scan=0
1 Specify the location of the master.ign config file. Only HTTP and HTTPS protocols are
supported.
14. Transfer the following artifacts, files, and images to the LPAR. For example by using FTP:
Parameter files
RHCOS images
28
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
For details about how to transfer the files with FTP and boot, see Installing in an LPAR .
NOTE
Installing a single-node cluster on IBM Power® simplifies installation for development and
test environments and requires less resource requirements at entry level.
Hardware requirements
The equivalent of two Integrated Facilities for Linux (IFL), which are SMT2 enabled, for each
cluster.
At least one network connection to connect to the LoadBalancer service and to serve data for
traffic outside of the cluster.
NOTE
You can use dedicated or shared IFLs to assign sufficient compute resources. Resource
sharing is one of the key strengths of IBM Power®. However, you must adjust capacity
correctly on each hypervisor layer and ensure sufficient resources for every OpenShift
Container Platform cluster.
Additional resources
PXE is used for the single-node OpenShift cluster installation. PXE requires the following
services to be configured and run:
DHCP service to enable PXE and assign an IP address to single-node OpenShift node
You must install dnsmasq to support DNS, DHCP and PXE, httpd for HTTP.
Use the following procedure to configure a bastion server that meets these requirements.
Procedure
29
OpenShift Container Platform 4.17 Installing on a single node
Procedure
1. Use the following command to install grub2, which is required to enable PXE for PowerVM:
grub2-mknetdir --net-directory=/var/lib/tftpboot
default=0
fallback=1
timeout=1
if [ ${net_default_mac} == fa:b0:45:27:43:20 ]; then
menuentry "CoreOS (BIOS)" {
echo "Loading kernel"
linux "/rhcos/kernel" ip=dhcp rd.neednet=1 ignition.platform.id=metal ignition.firstboot
coreos.live.rootfs_url=http://192.168.10.5:8000/install/rootfs.img
ignition.config.url=http://192.168.10.5:8000/ignition/sno.ign
echo "Loading initrd"
initrd "/rhcos/initramfs.img"
}
fi
2. Use the following commands to download RHCOS image files from the mirror repo for PXE.
a. Enter the following command to assign the RHCOS_URL variable the follow 4.12 URL:
$ export RHCOS_URL=https://mirror.openshift.com/pub/openshift-
v4/ppc64le/dependencies/rhcos/4.12/latest/
$ cd /var/lib/tftpboot/rhcos
c. Enter the following command to download the specified RHCOS kernel file from the URL
stored in the RHCOS_URL variable:
d. Enter the following command to download the RHCOS initramfs file from the URL stored in
the RHCOS_URL variable:
$ cd /var//var/www/html/install/
f. Enter the following command to download, and save, the RHCOS root filesystem image file
from the URL stored in the RHCOS_URL variable:
3. To create the ignition file for a single-node OpenShift cluster, you must create the install-
30
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
3. To create the ignition file for a single-node OpenShift cluster, you must create the install-
config.yaml file.
a. Enter the following command to create the work directory that holds the file:
$ mkdir -p ~/sno-work
$ cd ~/sno-work
c. Use the following sample file can to create the required install-config.yaml in the ~/sno-
work directory:
apiVersion: v1
baseDomain: <domain> 1
compute:
- name: worker
replicas: 0 2
controlPlane:
name: master
replicas: 1 3
metadata:
name: <name> 4
networking: 5
clusterNetwork:
- cidr: 10.128.0.0/14
hostPrefix: 23
machineNetwork:
- cidr: 10.0.0.0/16 6
networkType: OVNKubernetes
serviceNetwork:
- 172.30.0.0/16
platform:
none: {}
bootstrapInPlace:
installationDisk: /dev/disk/by-id/<disk_id> 7
pullSecret: '<pull_secret>' 8
sshKey: |
<ssh_key> 9
2 Set the compute replicas to 0. This makes the control plane node schedulable.
3 Set the controlPlane replicas to 1. In conjunction with the previous compute setting,
this setting ensures that the cluster runs on a single node.
5 Set the networking details. OVN-Kubernetes is the only allowed network plugin type
for single-node clusters.
6 Set the cidr value to match the subnet of the single-node OpenShift cluster.
Set the path to the installation disk drive, for example, /dev/disk/by-id/wwn-
31
OpenShift Container Platform 4.17 Installing on a single node
7 Set the path to the installation disk drive, for example, /dev/disk/by-id/wwn-
0x64cd98f04fde100024684cf3034da5c2.
8 Copy the pull secret from Red Hat OpenShift Cluster Manager and add the contents
to this configuration setting.
9 Add the public SSH key from the administration host so that you can log in to the
cluster after installation.
4. Download the openshift-install image to create the ignition file and copy it to the http
directory.
$ wget https://mirror.openshift.com/pub/openshift-
v4/ppc64le/clients/ocp/4.12.0/openshift-install-linux-4.12.0.tar.gz
$ cp ~/sno-work/single-node-ignition-config.ign /var/www/html/ignition/sno.ign
e. Enter the following command to restore SELinux file for the /var/www/html directory:
Bastion now has all the required files and is properly configured in order to install single-
node OpenShift.
Prerequisites
Procedure
There are two steps for the single-node OpenShift cluster installation. First the single-node OpenShift
logical partition (LPAR) needs to boot up with PXE, then you need to monitor the installation progress.
where:
32
CHAPTER 2. INSTALLING OPENSHIFT ON A SINGLE NODE
sno_mac
Specifies the MAC address of the single-node OpenShift cluster.
sno_ip
Specifies the IP address of the single-node OpenShift cluster.
server_ip
Specifies the IP address of bastion (PXE server).
gateway
Specifies the Network’s gateway IP.
lpar_name
Specifies the single-node OpenShift lpar name in HMC.
cec_name
Specifies the System name where the sno_lpar resides
2. After the single-node OpenShift LPAR boots up with PXE, use the openshift-install command
to monitor the progress of installation:
33