Skip to content

Commit 9a89e6b

Browse files
authored
Merge pull request #51135 from rohennes/TELCODOCS-328-dual-vips
TELCODOCS-328 - Adding new VIP install params for IPv4 and IPv6
2 parents e974310 + e5e73fc commit 9a89e6b

9 files changed

+116
-29
lines changed

modules/installation-configuration-parameters.adoc

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1394,12 +1394,24 @@ Additional {rh-virtualization} configuration parameters are described in the fol
13941394
|Required. The vNIC profile ID of the VM network interfaces. This can be inferred if the cluster network has a single profile.
13951395
|String. For example: `3fa86930-0be5-4052-b667-b79f0a729692`
13961396

1397-
|`platform.ovirt.api_vip`
1398-
|Required. An IP address on the machine network that will be assigned to the API virtual IP (VIP). You can access the OpenShift API at this endpoint.
1397+
|`platform.ovirt.api_vips`
1398+
|Required. An IP address on the machine network that will be assigned to the API virtual IP (VIP). You can access the OpenShift API at this endpoint. For dual-stack networks, assign up to two IP addresses. The primary IP address must be from the IPv4 network.
1399+
1400+
[NOTE]
1401+
====
1402+
In {product-title} 4.12 and later, the `api_vip` configuration setting is deprecated. Instead, use a list format to enter a value in the `api_vips` configuration setting. The order of the list indicates the primary and secondary VIP address for each service.
1403+
====
1404+
13991405
|String. Example: `10.46.8.230`
14001406

1401-
|`platform.ovirt.ingress_vip`
1402-
|Required. An IP address on the machine network that will be assigned to the Ingress virtual IP (VIP).
1407+
|`platform.ovirt.ingress_vips`
1408+
|Required. An IP address on the machine network that will be assigned to the Ingress virtual IP (VIP). For dual-stack networks, assign up to two IP addresses. The primary IP address must be from the IPv4 network.
1409+
1410+
[NOTE]
1411+
====
1412+
In {product-title} 4.12 and later, the `ingress_vip` configuration setting is deprecated. Instead, use a list format to enter a value in the `ingress_vips` configuration setting. The order of the list indicates the primary and secondary VIP address for each service.
1413+
====
1414+
14031415
|String. Example: `10.46.8.232`
14041416

14051417
|`platform.ovirt.affinityGroups`
@@ -1563,14 +1575,24 @@ in vSphere.
15631575
|The vCenter cluster to install the {product-title} cluster in.
15641576
|String
15651577

1566-
|`platform.vsphere.apiVIP`
1578+
|`platform.vsphere.apiVIPs`
15671579
|The virtual IP (VIP) address that you configured for control plane API access.
15681580
|An IP address, for example `128.0.0.1`.
15691581

1570-
|`platform.vsphere.ingressVIP`
1582+
[NOTE]
1583+
====
1584+
In {product-title} 4.12 and later, the `apiVIP` configuration setting is deprecated. Instead, use a list format to enter a value in the `apiVIPs` configuration setting.
1585+
====
1586+
1587+
|`platform.vsphere.ingressVIPs`
15711588
|The virtual IP (VIP) address that you configured for cluster ingress.
15721589
|An IP address, for example `128.0.0.1`.
15731590

1591+
[NOTE]
1592+
====
1593+
In {product-title} 4.12 and later, the `ingressVIP` configuration setting is deprecated. Instead, use a list format to enter a value in the `ingressVIPs` configuration setting.
1594+
====
1595+
15741596
|`platform.vsphere.diskType`
15751597
|Optional. The disk provisioning method. This value defaults to the vSphere default storage policy if not set.
15761598
|Valid values are `thin`, `thick`, or `eagerZeroedThick`.

modules/installation-installer-provisioned-vsphere-config-yaml.adoc

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,10 @@ platform:
8383
diskType: thin <7>
8484
network: VM_Network
8585
cluster: vsphere_cluster_name <8>
86-
apiVIP: api_vip
87-
ingressVIP: ingress_vip
86+
apiVIPs:
87+
- api_vip
88+
ingressVIPs:
89+
- ingress_vip
8890
ifdef::restricted[]
8991
clusterOSImage: http://mirror.example.com/images/rhcos-47.83.202103221318-0-vmware.x86_64.ova <9>
9092
endif::restricted[]
@@ -148,6 +150,11 @@ specify the base64-encoded user name and password for your mirror registry.
148150
<12> Provide the `imageContentSources` section from the output of the command to mirror the repository.
149151
endif::restricted[]
150152

153+
[NOTE]
154+
====
155+
In {product-title} 4.12 and later, the `apiVIP` and `ingressVIP` configuration settings are deprecated. Instead, use a list format to enter values in the `apiVIPs` and `ingressVIPs` configuration settings.
156+
====
157+
151158
ifeval::["{context}" == "installing-vsphere-installer-provisioned-network-customizations"]
152159
:!network:
153160
endif::[]

modules/installation-osp-custom-subnet.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Clusters that use custom subnets have the following limitations:
3030
[NOTE]
3131
====
3232
By default, the API VIP takes x.x.x.5 and the Ingress VIP takes x.x.x.7 from your network's CIDR block. To override these default values,
33-
set values for `platform.openstack.apiVIP` and `platform.openstack.ingressVIP` that are outside of the DHCP allocation pool.
33+
set values for `platform.openstack.apiVIPs` and `platform.openstack.ingressVIPs` that are outside of the DHCP allocation pool.
3434
====
3535

3636
[IMPORTANT]

modules/installation-osp-deploying-provider-networks-installer.adoc

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,14 @@ You can deploy an {product-title} cluster that has its primary network interface
1717
.Procedure
1818

1919
. In a text editor, open the `install-config.yaml` file.
20-
. Set the value of the `platform.openstack.apiVIP` property to the IP address for the API VIP.
21-
. Set the value of the `platform.openstack.ingressVIP` property to the IP address for the Ingress VIP.
20+
. Set the value of the `platform.openstack.apiVIPs` property to the IP address for the API VIP.
21+
. Set the value of the `platform.openstack.ingressVIPs` property to the IP address for the Ingress VIP.
2222
. Set the value of the `platform.openstack.machinesSubnet` property to the UUID of the provider network subnet.
2323
. Set the value of the `networking.machineNetwork.cidr` property to the CIDR block of the provider network subnet.
2424

2525
[IMPORTANT]
2626
====
27-
The `platform.openstack.apiVIP` and `platform.openstack.ingressVIP` properties must both be unassigned IP addresses from the `networking.machineNetwork.cidr` block.
27+
The `platform.openstack.apiVIPs` and `platform.openstack.ingressVIPs` properties must both be unassigned IP addresses from the `networking.machineNetwork.cidr` block.
2828
====
2929

3030
.Section of an installation configuration file for a cluster that relies on a {rh-openstack} provider network
@@ -33,15 +33,19 @@ The `platform.openstack.apiVIP` and `platform.openstack.ingressVIP` properties m
3333
...
3434
platform:
3535
openstack:
36-
apiVIP: 192.0.2.13
37-
ingressVIP: 192.0.2.23
36+
apiVIPs: <1>
37+
- 192.0.2.13
38+
ingressVIPs: <1>
39+
- 192.0.2.23
3840
machinesSubnet: fa806b2f-ac49-4bce-b9db-124bc64209bf
3941
# ...
4042
networking:
4143
machineNetwork:
4244
- cidr: 192.0.2.0/24
4345
----
4446

47+
<1> In {product-title} 4.12 and later, the `apiVIP` and `ingressVIP` configuration settings are deprecated. Instead, use a list format to enter values in the `apiVIPs` and `ingressVIPs` configuration settings.
48+
4549
[WARNING]
4650
====
4751
You cannot set the `platform.openstack.externalNetwork` or `platform.openstack.externalDNS` parameters while using a provider network for the primary network interface.

modules/installing-rhv-example-install-config-yaml.adoc

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,10 @@ endif::openshift-origin[]
6767
- 172.30.0.0/16
6868
platform:
6969
ovirt:
70-
api_vip: 10.46.8.230
71-
ingress_vip: 192.168.1.5
70+
api_vips:
71+
- 10.0.0.10
72+
ingress_vips:
73+
- 10.0.0.11
7274
ovirt_cluster_id: 68833f9f-e89c-4891-b768-e2ba0815b76b
7375
ovirt_storage_domain_id: ed7b0f4e-0e96-492a-8fff-279213ee1468
7476
ovirt_network_name: ovirtmgmt
@@ -89,6 +91,11 @@ capabilities:
8991
====
9092
Preallocating disks on file storage domains writes zeroes to the file. This might not actually preallocate disks depending on the underlying storage.
9193
====
94+
+
95+
[NOTE]
96+
====
97+
In {product-title} 4.12 and later, the `api_vip` and `ingress_vip` configuration settings are deprecated. Instead, use a list format to enter values in the `api_vips` and `ingress_vips` configuration settings.
98+
====
9299

93100
[discrete]
94101
== Example minimal `install-config.yaml` file
@@ -101,8 +108,10 @@ metadata:
101108
name: test-cluster
102109
platform:
103110
ovirt:
104-
api_vip: 10.46.8.230
105-
ingress_vip: 10.46.8.232
111+
api_vips:
112+
- 10.46.8.230
113+
ingress_vips:
114+
- 10.46.8.232
106115
ovirt_cluster_id: 68833f9f-e89c-4891-b768-e2ba0815b76b
107116
ovirt_storage_domain_id: ed7b0f4e-0e96-492a-8fff-279213ee1468
108117
ovirt_network_name: ovirtmgmt
@@ -111,6 +120,10 @@ pullSecret: '{"auths": ...}'
111120
sshKey: ssh-ed12345 AAAA...
112121
----
113122

123+
[NOTE]
124+
====
125+
In {product-title} 4.12 and later, the `api_vip` and `ingress_vip` configuration settings are deprecated. Instead, use a list format to enter values in the `api_vips` and `ingress_vips` configuration settings.
126+
====
114127

115128
[discrete]
116129
== Example Custom machine pools in an `install-config.yaml` file
@@ -147,8 +160,10 @@ metadata:
147160
name: test-cluster
148161
platform:
149162
ovirt:
150-
api_vip: 10.46.8.230
151-
ingress_vip: 10.46.8.232
163+
api_vips:
164+
- 10.46.8.230
165+
ingress_vips:
166+
- 10.46.8.232
152167
ovirt_cluster_id: 68833f9f-e89c-4891-b768-e2ba0815b76b
153168
ovirt_storage_domain_id: ed7b0f4e-0e96-492a-8fff-279213ee1468
154169
ovirt_network_name: ovirtmgmt
@@ -157,6 +172,11 @@ pullSecret: '{"auths": ...}'
157172
sshKey: ssh-ed25519 AAAA...
158173
----
159174

175+
[NOTE]
176+
====
177+
In {product-title} 4.12 and later, the `api_vip` and `ingress_vip` configuration settings are deprecated. Instead, use a list format to enter values in the `api_vips` and `ingress_vips` configuration settings.
178+
====
179+
160180
[discrete]
161181
== Example non-enforcing affinity group
162182

modules/ipi-install-additional-install-config-parameters.adoc

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
See the following tables for the required parameters, the `hosts` parameter,
1010
and the `bmc` parameter for the `install-config.yaml` file.
1111

12+
[cols="2,1,5"]
1213
[options="header"]
1314
.Required parameters
1415
|===
@@ -98,16 +99,26 @@ a| `provisioningNetworkInterface` | | The name of the network interface on node
9899

99100
| `defaultMachinePlatform` | | The default configuration used for machine pools without a platform configuration.
100101

101-
| `apiVIP` | | (Optional) The virtual IP address for Kubernetes API communication.
102+
| `apiVIPs` | a| (Optional) The virtual IP address for Kubernetes API communication.
103+
104+
This setting must either be provided in the `install-config.yaml` file as a reserved IP from the MachineNetwork or pre-configured in the DNS so that the default name resolves correctly. Use the virtual IP address and not the FQDN when adding a value to the `apiVIPs` configuration setting in the `install-config.yaml` file. The primary IP address must be from the IPv4 network when using dual stack networking. If not set, the installation program uses `api.<cluster_name>.<base_domain>` to derive the IP address from the DNS.
105+
106+
[NOTE]
107+
====
108+
Before {product-title} 4.12, the cluster installation program only accepted an IPv4 address or an IPv6 address for the `apiVIP` configuration setting. From {product-title} 4.12 or later, the `apiVIP` configuration setting is deprecated. Instead, use a list format for the `apiVIPs` configuration setting to specify an IPv4 address, an IPv6 address or both IP address formats.
109+
====
102110

103-
This setting must either be provided in the `install-config.yaml` file as a reserved IP from the MachineNetwork or pre-configured in the DNS so that the default name resolves correctly. Use the virtual IP address and not the FQDN when adding a value to the `apiVIP` configuration setting in the `install-config.yaml` file. The IP address must be from the primary IPv4 network when using dual stack networking. If not set, the installer uses `api.<cluster_name>.<base_domain>` to derive the IP address from the DNS.
104111

105112
| `disableCertificateVerification` | `False` | `redfish` and `redfish-virtualmedia` need this parameter to manage BMC addresses. The value should be `True` when using a self-signed certificate for BMC addresses.
106113

107-
| `ingressVIP` | | (Optional) The virtual IP address for ingress traffic.
114+
| `ingressVIPs` | a| (Optional) The virtual IP address for ingress traffic.
108115

109-
This setting must either be provided in the `install-config.yaml` file as a reserved IP from the MachineNetwork or pre-configured in the DNS so that the default name resolves correctly. Use the virtual IP address and not the FQDN when adding a value to the `ingressVIP` configuration setting in the `install-config.yaml` file. The IP address must be from the primary IPv4 network when using dual stack networking. If not set, the installer uses `test.apps.<cluster_name>.<base_domain>` to derive the IP address from the DNS.
116+
This setting must either be provided in the `install-config.yaml` file as a reserved IP from the MachineNetwork or pre-configured in the DNS so that the default name resolves correctly. Use the virtual IP address and not the FQDN when adding a value to the `ingressVIPs` configuration setting in the `install-config.yaml` file. The primary IP address must be from the IPv4 network when using dual stack networking. If not set, the installation program uses `test.apps.<cluster_name>.<base_domain>` to derive the IP address from the DNS.
110117

118+
[NOTE]
119+
====
120+
Before {product-title} 4.12, the cluster installation program only accepted an IPv4 address or an IPv6 address for the `ingressVIP` configuration setting. In {product-title} 4.12 and later, the `ingressVIP` configuration setting is deprecated. Instead, use a list format for the `ingressVIPs` configuration setting to specify an IPv4 addresses, an IPv6 addresses or both IP address formats.
121+
====
111122

112123
|===
113124

modules/ipi-install-configuring-the-install-config-file.adoc

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,10 @@ controlPlane:
3636
baremetal: {}
3737
platform:
3838
baremetal:
39-
apiVIP: <api_ip>
40-
ingressVIP: <wildcard_ip>
39+
apiVIPs:
40+
- <api_ip>
41+
ingressVIPs:
42+
- <wildcard_ip>
4143
provisioningNetworkCIDR: <CIDR>
4244
bootstrapExternalStaticIP: <bootstrap_static_ip_address> <2>
4345
bootstrapExternalStaticGateway: <bootstrap_static_gateway> <3>
@@ -95,6 +97,11 @@ sshKey: '<ssh_pub_key>'
9597
<4> See the BMC addressing sections for more options.
9698
<5> Set the path to the installation disk drive, for example, `/dev/disk/by-id/wwn-0x64cd98f04fde100024684cf3034da5c2`.
9799

100+
[NOTE]
101+
====
102+
Before {product-title} 4.12, the cluster installation program only accepted an IPv4 address or and IPv6 address for the `apiVIP` and `ingressVIP` configuration settings. In {product-title} 4.12 and later, these configuration settings are deprecated. Instead, use a list format in the `apiVIPs` and `ingressVIPs` configuration settings to specify IPv4 addresses, IPv6 addresses or both IP address formats.
103+
====
104+
98105
. Create a directory to store the cluster configuration:
99106
+
100107
[source,terminal]

modules/ipi-install-modifying-install-config-for-dual-stack-network.adoc

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
[id='modifying-install-config-for-dual-stack-network_{context}']
77
= Optional: Deploying with dual-stack networking
88

9-
To deploy an {product-title} cluster with dual-stack networking, edit the `machineNetwork`, `clusterNetwork`, and `serviceNetwork` configuration settings in the `install-config.yaml` file. Each setting must have two CIDR entries each. Ensure the first CIDR entry is the IPv4 setting and the second CIDR entry is the IPv6 setting.
9+
For dual-stack networking in {product-title} clusters, you can configure IPv4 and IPv6 address endpoints for cluster nodes. To configure IPv4 and IPv6 address endpoints for cluster nodes, edit the `machineNetwork`, `clusterNetwork`, and `serviceNetwork` configuration settings in the `install-config.yaml` file. Each setting must have two CIDR entries each. Ensure the first CIDR entry is the IPv4 setting and the second CIDR entry is the IPv6 setting.
1010

1111
[source,yaml]
1212
----
@@ -27,3 +27,17 @@ serviceNetwork:
2727
====
2828
The API VIP IP address and the Ingress VIP address must be of the primary IP address family when using dual-stack networking. Currently, Red Hat does not support dual-stack VIPs or dual-stack networking with IPv6 as the primary IP address family. However, Red Hat does support dual-stack networking with IPv4 as the primary IP address family. Therefore, the IPv4 entries must go *before* the IPv6 entries.
2929
====
30+
31+
To provide an interface to the cluster for applications that use IPv4 and IPv6 addresses, configure IPv4 and IPv6 virtual IP (VIP) address endpoints for the Ingress VIP and API VIP services. To configure IPv4 and IPv6 address endpoints, edit the `apiVIPs` and `ingressVIPs` configuration settings in the `install-config.yaml` file . The `apiVIPs` and `ingressVIPs` configuration settings use a list format. The order of the list indicates the primary and secondary VIP address for each service.
32+
33+
[source,yaml]
34+
----
35+
platform:
36+
baremetal:
37+
apiVIPs:
38+
- <api_ipv4>
39+
- <api_ipv6>
40+
ingressVIPs:
41+
- <wildcard_ipv4>
42+
- <wildcard_ipv6>
43+
----

modules/ipi-install-modifying-install-config-for-no-provisioning-network.adoc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,10 @@ To deploy an {product-title} cluster without a `provisioning` network, make the
1212
----
1313
platform:
1414
baremetal:
15-
apiVIP: <api_VIP>
16-
ingressVIP: <ingress_VIP>
15+
apiVIPs:
16+
- <api_VIP>
17+
ingressVIPs:
18+
- <ingress_VIP>
1719
provisioningNetwork: "Disabled" <1>
1820
----
1921

0 commit comments

Comments
 (0)