Skip to content

Commit 1a62cfb

Browse files
Merge pull request #69850 from SNiemann15/ibmz_agentbased_install
[MULTIARCH-3806, 3807] Add IBM Z and IBM Power support for Agent-based installer
2 parents 9c80e01 + 3ce2217 commit 1a62cfb

10 files changed

+170
-9
lines changed

installing/installing_with_agent_based_installer/prepare-pxe-assets-agent.adoc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,11 @@ include::modules/installing-ocp-agent-inputs.adoc[leveloffset=+1]
3232
// Creating the PXE assets
3333
include::modules/pxe-assets-ocp-agent.adoc[leveloffset=+1]
3434

35+
// Manually adding IBM Z agents
36+
include::modules/installing-ocp-agent-ibm-z.adoc[leveloffset=+1]
37+
include::modules/installing-ocp-agent-ibm-z-zvm.adoc[leveloffset=+2]
38+
include::modules/installing-ocp-agent-ibm-z-kvm.adoc[leveloffset=+2]
39+
3540
[role="_additional-resources"]
3641
[id="additional-resources_prepare-pxe-assets-agent"]
3742
== Additional resources

installing/installing_with_agent_based_installer/preparing-to-install-with-agent-based-installer.adoc

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,31 @@ It generates a bootable ISO image containing all of the information required to
1616
The configuration is in the same format as for the installer-provisioned infrastructure and user-provisioned infrastructure installation methods.
1717
The Agent-based Installer can also optionally generate or accept Zero Touch Provisioning (ZTP) custom resources. ZTP allows you to provision new edge sites with declarative configurations of bare-metal equipment.
1818

19+
.Agent-based Installer supported architectures
20+
|===
21+
|CPU architecture |Connected installation |Disconnected installation |Comments
22+
23+
|`64-bit x86`
24+
|✓
25+
|✓
26+
|
27+
28+
|`64-bit ARM`
29+
|✓
30+
|✓
31+
|
32+
33+
|`ppc64le`
34+
|✓
35+
|✓
36+
|
37+
38+
|`s390x`
39+
|✓
40+
|✓
41+
|ISO boot is not supported. Instead, use PXE assets.
42+
|===
43+
1944
//Understanding Agent-based Installer
2045
include::modules/understanding-agent-install.adoc[leveloffset=+1]
2146

modules/installation-configuration-parameters.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -484,7 +484,7 @@ endif::ibm-power,ibm-power-vs[]
484484
ifdef::agent[]
485485
|compute:
486486
architecture:
487-
|Determines the instruction set architecture of the machines in the pool. Currently, clusters with varied architectures are not supported. All pools must specify the same architecture. Valid values are `amd64` and `arm64`.
487+
|Determines the instruction set architecture of the machines in the pool. Currently, clusters with varied architectures are not supported. All pools must specify the same architecture. Valid values are `amd64`, `arm64`, `ppc64le`, and `s390x`.
488488
|String
489489
endif::agent[]
490490

@@ -583,7 +583,7 @@ endif::ibm-power,ibm-power-vs[]
583583
ifdef::agent[]
584584
|controlPlane:
585585
architecture:
586-
|Determines the instruction set architecture of the machines in the pool. Currently, clusters with varied architectures are not supported. All pools must specify the same architecture. Valid values are `amd64` and `arm64`.
586+
|Determines the instruction set architecture of the machines in the pool. Currently, clusters with varied architectures are not supported. All pools must specify the same architecture. Valid values are `amd64`, `arm64`, `ppc64le`, and `s390x`.
587587
|String
588588
endif::agent[]
589589

modules/installing-ocp-agent-download.adoc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@
99

1010
Use this procedure to download the Agent-based Installer and the CLI needed for your installation.
1111

12+
[NOTE]
13+
====
14+
Currently, downloading the Agent-based Installer is not supported on the {ibm-z-name} (`s390x`) architecture. The recommended method is by creating PXE assets.
15+
====
16+
1217
.Procedure
1318

1419
. Log in to the {product-title} web console using your login credentials.
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * installing/installing_with_agent_based_installer/prepare-pxe-infra-agent.adoc
4+
5+
:_mod-docs-content-type: PROCEDURE
6+
[id="installing-ocp-agent-ibm-z-kvm_{context}"]
7+
= Adding {ibm-z-name} agents with {op-system-base} KVM
8+
9+
Use the following procedure to manually add {ibm-z-name} agents with {op-system-base} KVM.
10+
11+
.Procedure
12+
13+
. Boot your {op-system-base} KVM machine.
14+
15+
. To deploy the virtual server, run the `virt-install` command with the following parameters:
16+
+
17+
[source,terminal]
18+
----
19+
$ virt-install \
20+
--name <vm_name> \
21+
--autostart \
22+
--ram=16384 \
23+
--cpu host \
24+
--vcpus=8 \
25+
--location <path_to_kernel_initrd_image>,kernel=kernel.img,initrd=initrd.img \ <1>
26+
--disk <qcow_image_path> \
27+
--network network:macvtap ,mac=<mac_address> \
28+
--graphics none \
29+
--noautoconsole \
30+
--wait=-1 \
31+
--extra-args "rd.neednet=1 nameserver=<nameserver>" \
32+
--extra-args "ip=<IP>::<nameserver>::<hostname>:enc1:none" \
33+
--extra-args "coreos.live.rootfs_url=http://<http_server>:8080/agent.s390x-rootfs.img" \
34+
--extra-args "random.trust_cpu=on rd.luks.options=discard" \
35+
--extra-args "ignition.firstboot ignition.platform.id=metal" \
36+
--extra-args "console=tty1 console=ttyS1,115200n8" \
37+
--extra-args "coreos.inst.persistent-kargs=console=tty1 console=ttyS1,115200n8" \
38+
--osinfo detect=on,require=off
39+
----
40+
<1> For the `--location` parameter, specify the location of the kernel/initrd on the HTTP or HTTPS server.
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * installing/installing_with_agent_based_installer/prepare-pxe-infra-agent.adoc
4+
5+
:_mod-docs-content-type: PROCEDURE
6+
[id="installing-ocp-agent-ibm-z-zvm_{context}"]
7+
= Adding {ibm-z-title} agents with z/VM
8+
9+
Use the following procedure to manually add {ibm-z-name} agents with z/VM
10+
11+
.Procedure
12+
13+
. Create a parameter file for the z/VM guest:
14+
+
15+
.Example parameter file
16+
+
17+
[source,terminal]
18+
----
19+
rd.neednet=1 \
20+
console=ttysclp0 \
21+
coreos.live.rootfs_url=<rootfs_url> \ <1>
22+
ip=172.18.78.2::172.18.78.1:255.255.255.0:::none nameserver=172.18.78.1 \ <2>
23+
zfcp.allow_lun_scan=0 \ <3>
24+
rd.znet=qeth,0.0.bdd0,0.0.bdd1,0.0.bdd2,layer2=1 \
25+
rd.dasd=0.0.4411 \ <4>
26+
rd.zfcp=0.0.8001,0x50050763040051e3,0x4000406300000000 \ <5>
27+
random.trust_cpu=on rd.luks.options=discard \
28+
ignition.firstboot ignition.platform.id=metal \
29+
console=tty1 console=ttyS1,115200n8 \
30+
coreos.inst.persistent-kargs="console=tty1 console=ttyS1,115200n8"
31+
----
32+
<1> For the `coreos.live.rootfs_url=` artifact, specify the matching `rootfs` artifact for the `kernel` and `initramfs` that you are booting. Only HTTP and HTTPS protocols are supported.
33+
<2> For the `ip=` parameter, assign the IP address automatically using DHCP, or manually assign the IP address, as described in "Installing a cluster with z/VM on {ibm-z-name} and {ibm-linuxone-name}".
34+
<3> The default is '1'. Omit this entry when using an OSA network adapter.
35+
<4> For installations on DASD-type disks, use `rd.dasd=` to specify the DASD where {op-system} is to be installed. Omit this entry for FCP-type disks.
36+
<5> For installations on FCP-type disks, use `rd.zfcp=<adapter>,<wwpn>,<lun>` to specify the FCP disk where {op-system} is to be installed. Omit this entry for DASD-type disks.
37+
+
38+
Leave all other parameters unchanged.
39+
40+
. Punch the `kernel.img`,`generic.parm`, and `initrd.img` files to the virtual reader of the z/VM guest virtual machine.
41+
+
42+
For more information, see link:https://www.ibm.com/docs/en/zvm/latest?topic=commands-punch[PUNCH] in IBM Documentation.
43+
+
44+
[TIP]
45+
====
46+
You can use the CP PUNCH command or, if you use Linux, the **vmur** command, to transfer files between two z/VM guest virtual machines.
47+
====
48+
+
49+
. Log in to CMS on the bootstrap machine.
50+
51+
. IPL the bootstrap machine from the reader by running the following command:
52+
+
53+
----
54+
$ ipl c
55+
----
56+
+
57+
For more information, see link:https://www.ibm.com/docs/en/zvm/latest?topic=commands-ipl[IPL] in IBM Documentation.
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * installing/installing_with_agent_based_installer/prepare-pxe-infra-agent.adoc
4+
5+
:_mod-docs-content-type: CONCEPT
6+
[id="installing-ocp-agent-ibm-z_{context}"]
7+
= Manually adding {ibm-z-title} agents
8+
9+
After creating the PXE assets, you can add {ibm-z-name} agents.
10+
11+
[NOTE]
12+
====
13+
Currently ISO boot is not supported on {ibm-z-name} (`s390x`) architecture. Therefore, manually adding {ibm-z-name} agents is required for Agent-based installations on {ibm-z-name}.
14+
====
15+
16+
Depending on your {ibm-z-name} environment, you can choose from the following options:
17+
18+
* Adding {ibm-z-name} agents with z/VM
19+
* Adding {ibm-z-name} agents with {op-system-base} KVM

modules/installing-ocp-agent-inputs.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ pullSecret: '<pull_secret>' <5>
7777
sshKey: '<ssh_pub_key>' <6>
7878
EOF
7979
----
80-
<1> Specify the system architecture, valid values are `amd64` and `arm64`.
80+
<1> Specify the system architecture, valid values are `amd64`, `arm64`, `ppc64le`, and `s390x`.
8181
<2> Required. Specify your cluster name.
8282
<3> Specify the cluster network plugin to install. The supported values are `OVNKubernetes` and `OpenShiftSDN`. The default value is `OVNKubernetes`.
8383
<4> Specify your platform.

modules/pxe-assets-ocp-agent.adoc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// Module included in the following assemblies:
22
//
3-
// * installing/installing_with_agent_based_installer/prepare-pxe-infra-agent.adoc
3+
// * installing/installing_with_agent_based_installer/prepare-pxe-assets-agent.adoc
44

55
:_mod-docs-content-type: PROCEDURE
66
[id="pxe-assets-ocp-agent_{context}"]
@@ -29,6 +29,11 @@ boot-artifacts
2929
└─ agent.x86_64-vmlinuz
3030
----
3131
+
32+
[IMPORTANT]
33+
====
34+
The contents of the `boot-artifacts` directory vary depending on the specified architecture.
35+
====
36+
+
3237
[NOTE]
3338
====
3439
Red Hat Enterprise Linux CoreOS (RHCOS) supports multipathing on the primary disk, allowing stronger resilience to hardware failure to achieve higher host availability. Multipathing is enabled by default in the agent ISO image, with a default `/etc/multipath.conf` configuration.

modules/understanding-agent-install.adoc

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ As an {product-title} user, you can leverage the advantages of the Assisted Inst
99

1010
The Agent-based installation comprises a bootable ISO that contains the Assisted discovery agent and the Assisted Service. Both are required to perform the cluster installation, but the latter runs on only one of the hosts.
1111

12+
[NOTE]
13+
====
14+
Currently, ISO boot is not supported on {ibm-z-name} (`s390x`) architecture. The recommended method is by using PXE assets, which requires specifying additional kernel arguments.
15+
====
16+
1217
The `openshift-install agent create image` subcommand generates an ephemeral ISO based on the inputs that you provide. You can choose to provide inputs through the following manifests:
1318

1419
Preferred:
@@ -51,14 +56,14 @@ Recommended cluster resources for the following topologies:
5156
.Recommended cluster resources
5257
[options="header"]
5358
|====
54-
|Topology|Number of master nodes|Number of worker nodes|vCPU|Memory|Storage
55-
|Single-node cluster|1|0|8 vCPU cores|16GB of RAM| 120GB
56-
|Compact cluster|3|0 or 1|8 vCPU cores|16GB of RAM|120GB
57-
|HA cluster|3|2 and above |8 vCPU cores|16GB of RAM|120GB
59+
|Topology|Number of control plane nodes|Number of compute nodes|vCPU|Memory|Storage
60+
|Single-node cluster|1|0|8 vCPU cores|16 GB of RAM| 120 GB
61+
|Compact cluster|3|0 or 1|8 vCPU cores|16 GB of RAM|120 GB
62+
|HA cluster|3|2 and above |8 vCPU cores|16 GB of RAM|120 GB
5863
|====
5964

6065

61-
The following platforms are supported:
66+
In the `install-config.yaml`, specify the platform on which to perform the installation. The following platforms are supported:
6267

6368
* `baremetal`
6469
* `vsphere`

0 commit comments

Comments
 (0)