Skip to content

Commit 78c032c

Browse files
authored
Merge pull request #73443 from dfitzmau/OCPBUGS-30962-new
2 parents 13a66c4 + e1b3591 commit 78c032c

8 files changed

+121
-49
lines changed

installing/installing_bare_metal_ipi/ipi-install-post-installation-configuration.adoc

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,8 @@ include::modules/ipi-install-configuring-ntp-for-disconnected-clusters.adoc[leve
1212

1313
include::modules/nw-enabling-a-provisioning-network-after-installation.adoc[leveloffset=+1]
1414

15-
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+1]
15+
// Configuring an external load balancer
16+
include::modules/nw-osp-services-external-load-balancer.adoc[leveloffset=+1]
17+
18+
// Services for an external load balancer
19+
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+2]

installing/installing_vsphere/ipi/installing-restricted-networks-installer-provisioned-vsphere.adoc

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,11 @@ include::modules/cluster-telemetry.adoc[leveloffset=+1]
8888

8989
* See xref:../../../support/remote_health_monitoring/about-remote-health-monitoring.adoc#about-remote-health-monitoring[About remote health monitoring] for more information about the Telemetry service
9090

91-
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+1]
91+
// Services for an external load balancer
92+
include::modules/nw-osp-services-external-load-balancer.adoc[leveloffset=+1]
93+
94+
// Configuring an external load balancer
95+
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+2]
9296

9397
[id="next-steps_installing-restricted-networks-installer-provisioned-vsphere"]
9498
== Next steps

installing/installing_vsphere/ipi/installing-vsphere-installer-provisioned-customizations.adoc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,12 @@ include::modules/cluster-telemetry.adoc[leveloffset=+1]
8080

8181
* See xref:../../../support/remote_health_monitoring/about-remote-health-monitoring.adoc#about-remote-health-monitoring[About remote health monitoring] for more information about the Telemetry service
8282

83-
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+1]
83+
// Services for an external load balancer
84+
include::modules/nw-osp-services-external-load-balancer.adoc[leveloffset=+1]
85+
86+
// Configuring an external load balancer
87+
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+2]
88+
8489

8590
== Next steps
8691

installing/installing_vsphere/ipi/installing-vsphere-installer-provisioned-network-customizations.adoc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,12 @@ include::modules/cluster-telemetry.adoc[leveloffset=+1]
9090

9191
* See xref:../../../support/remote_health_monitoring/about-remote-health-monitoring.adoc#about-remote-health-monitoring[About remote health monitoring] for more information about the Telemetry service
9292

93-
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+1]
93+
// Services for an external load balancer
94+
include::modules/nw-osp-services-external-load-balancer.adoc[leveloffset=+1]
95+
96+
// Configuring an external load balancer
97+
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+2]
98+
9499
include::modules/ipi-install-configure-network-components-to-run-on-the-control-plane.adoc[leveloffset=+1]
95100

96101
== Next steps

installing/installing_vsphere/ipi/installing-vsphere-installer-provisioned.adoc

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,6 @@ include::modules/cluster-telemetry.adoc[leveloffset=+1]
5555

5656
* See xref:../../../support/remote_health_monitoring/about-remote-health-monitoring.adoc#about-remote-health-monitoring[About remote health monitoring] for more information about the Telemetry service
5757

58-
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+1]
59-
6058
== Next steps
6159

6260
* xref:../../../post_installation_configuration/cluster-tasks.adoc#available_cluster_customizations[Customize your cluster].

modules/nw-osp-configuring-external-load-balancer.adoc

Lines changed: 4 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -30,56 +30,18 @@ on {rh-openstack-first}
3030
endif::[]
3131
to use an external load balancer in place of the default load balancer.
3232

33-
[NOTE]
34-
====
35-
MetalLB, that runs on a cluster, functions as an external load balancer.
36-
====
37-
3833
[IMPORTANT]
3934
====
40-
Configuring an external load balancer depends on your vendor's load balancer.
41-
42-
The information and examples in this section are for guideline purposes only. Consult the vendor documentation for more specific information about the vendor's load balancer.
35+
Before you configure an external load balancer, ensure that you read the "Services for an external load balancer" section.
4336
====
4437

45-
Red Hat supports the following services for an external load balancer:
46-
47-
* Ingress Controller
48-
* OpenShift API
49-
* OpenShift MachineConfig API
50-
51-
You can choose whether you want to configure one or all of these services for an external load balancer. Configuring only the Ingress Controller service is a common configuration option. To better understand each service, view the following diagrams:
52-
53-
.Example network workflow that shows an Ingress Controller operating in an {product-title} environment
54-
image::external-load-balancer-default.png[An image that shows an example network workflow of an Ingress Controller operating in an {product-title} environment.]
55-
56-
.Example network workflow that shows an OpenShift API operating in an {product-title} environment
57-
image::external-load-balancer-openshift-api.png[An image that shows an example network workflow of an OpenShift API operating in an {product-title} environment.]
38+
Read the following prerequisites that apply to the service that you want to configure for your external load balancer.
5839

59-
.Example network workflow that shows an OpenShift MachineConfig API operating in an {product-title} environment
60-
image::external-load-balancer-machine-config-api.png[An image that shows an example network workflow of an OpenShift MachineConfig API operating in an {product-title} environment.]
61-
62-
The following configuration options are supported for external load balancers:
63-
64-
* Use a node selector to map the Ingress Controller to a specific set of nodes. You must assign a static IP address to each node in this set, or configure each node to receive the same IP address from the Dynamic Host Configuration Protocol (DHCP). Infrastructure nodes commonly receive this type of configuration.
65-
66-
* Target all IP addresses on a subnet. This configuration can reduce maintenance overhead, because you can create and destroy nodes within those networks without reconfiguring the load balancer targets. If you deploy your ingress pods by using a machine set on a smaller network, such as a `/27` or `/28`, you can simplify your load balancer targets.
67-
+
68-
[TIP]
40+
[NOTE]
6941
====
70-
You can list all IP addresses that exist in a network by checking the machine config pool's resources.
42+
MetalLB, that runs on a cluster, functions as an external load balancer.
7143
====
7244

73-
.Considerations
74-
75-
* For a front-end IP address, you can use the same IP address for the front-end IP address, the Ingress Controller's load balancer, and API load balancer. Check the vendor's documentation for this capability.
76-
77-
* For a back-end IP address, ensure that an IP address for an {product-title} control plane node does not change during the lifetime of the external load balancer. You can achieve this by completing one of the following actions:
78-
** Assign a static IP address to each control plane node.
79-
** Configure each node to receive the same IP address from the DHCP every time the node requests a DHCP lease. Depending on the vendor, the DHCP lease might be in the form of an IP reservation or a static DHCP assignment.
80-
81-
* Manually define each node that runs the Ingress Controller in the external load balancer for the Ingress Controller back-end service. For example, if the Ingress Controller moves to an undefined node, a connection outage can occur.
82-
8345
.OpenShift API prerequisites
8446

8547
* You defined a front-end IP address.
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
// Module included in the following assemblies:
2+
3+
// * networking/load-balancing-openstack.adoc ( Load balancing on OpenStack)
4+
// * installing/installing_bare_metal_ipi/ipi-install-post-installation-configuration.adoc (Post-installation configuration)
5+
// * installing/installing-vsphere-installer-provisioned.adoc(Installing a cluster)
6+
// * installing/installing-vsphere-installer-provisioned-customizations.adoc (Installing a cluster on vSphere with customizations)
7+
// * installing/installing-vsphere-installer-provisioned-network-customizations.adoc (Installing a cluster on vSphere with network customizations)
8+
// * installing/installing-restricted-networks-installer-provisioned-vsphere.adoc (Installing a cluster on vSphere in a restricted network)
9+
10+
ifeval::["{context}" == "installing-vsphere-installer-provisioned"]
11+
:vsphere:
12+
endif::[]
13+
ifeval::["{context}" == "installing-vsphere-installer-provisioned-customizations"]
14+
:vsphere:
15+
endif::[]
16+
ifeval::["{context}" == "installing-vsphere-installer-provisioned-network-customizations"]
17+
:vsphere:
18+
endif::[]
19+
ifeval::["{context}" == installing-restricted-networks-installer-provisioned-vsphere]
20+
:vsphere:
21+
endif::[]
22+
23+
:_mod-docs-content-type: CONCEPT
24+
[id="nw-osp-services-external-load-balancer_{context}"]
25+
= Services for an external load balancer
26+
27+
You can configure an {product-title} cluster
28+
ifeval::["{context}" == "load-balancing-openstack"]
29+
on {rh-openstack-first}
30+
endif::[]
31+
to use an external load balancer in place of the default load balancer.
32+
33+
[IMPORTANT]
34+
====
35+
Configuring an external load balancer depends on your vendor's load balancer.
36+
37+
The information and examples in this section are for guideline purposes only. Consult the vendor documentation for more specific information about the vendor's load balancer.
38+
====
39+
40+
Red Hat supports the following services for an external load balancer:
41+
42+
* Ingress Controller
43+
* OpenShift API
44+
* OpenShift MachineConfig API
45+
46+
You can choose whether you want to configure one or all of these services for an external load balancer. Configuring only the Ingress Controller service is a common configuration option. To better understand each service, view the following diagrams:
47+
48+
.Example network workflow that shows an Ingress Controller operating in an {product-title} environment
49+
image::external-load-balancer-default.png[An image that shows an example network workflow of an Ingress Controller operating in an {product-title} environment.]
50+
51+
.Example network workflow that shows an OpenShift API operating in an {product-title} environment
52+
image::external-load-balancer-openshift-api.png[An image that shows an example network workflow of an OpenShift API operating in an {product-title} environment.]
53+
54+
.Example network workflow that shows an OpenShift MachineConfig API operating in an {product-title} environment
55+
image::external-load-balancer-machine-config-api.png[An image that shows an example network workflow of an OpenShift MachineConfig API operating in an {product-title} environment.]
56+
57+
The following configuration options are supported for external load balancers:
58+
59+
* Use a node selector to map the Ingress Controller to a specific set of nodes. You must assign a static IP address to each node in this set, or configure each node to receive the same IP address from the Dynamic Host Configuration Protocol (DHCP). Infrastructure nodes commonly receive this type of configuration.
60+
61+
* Target all IP addresses on a subnet. This configuration can reduce maintenance overhead, because you can create and destroy nodes within those networks without reconfiguring the load balancer targets. If you deploy your ingress pods by using a machine set on a smaller network, such as a `/27` or `/28`, you can simplify your load balancer targets.
62+
+
63+
[TIP]
64+
====
65+
You can list all IP addresses that exist in a network by checking the machine config pool's resources.
66+
====
67+
68+
Before you configure an external load balancer for your {product-title} cluster, consider the following information:
69+
70+
* For a front-end IP address, you can use the same IP address for the front-end IP address, the Ingress Controller's load balancer, and API load balancer. Check the vendor's documentation for this capability.
71+
72+
* For a back-end IP address, ensure that an IP address for an {product-title} control plane node does not change during the lifetime of the external load balancer. You can achieve this by completing one of the following actions:
73+
** Assign a static IP address to each control plane node.
74+
** Configure each node to receive the same IP address from the DHCP every time the node requests a DHCP lease. Depending on the vendor, the DHCP lease might be in the form of an IP reservation or a static DHCP assignment.
75+
76+
* Manually define each node that runs the Ingress Controller in the external load balancer for the Ingress Controller back-end service. For example, if the Ingress Controller moves to an undefined node, a connection outage can occur.
77+
78+
ifeval::["{context}" == "installing-vsphere-installer-provisioned"]
79+
:!vsphere:
80+
endif::[]
81+
ifeval::["{context}" == "installing-vsphere-installer-provisioned-customizations"]
82+
:!vsphere:
83+
endif::[]
84+
ifeval::["{context}" == "installing-vsphere-installer-provisioned-network-customizations"]
85+
:!vsphere:
86+
endif::[]
87+
ifeval::["{context}" == installing-restricted-networks-installer-provisioned-vsphere]
88+
:!vsphere:
89+
endif::[]

networking/load-balancing-openstack.adoc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,9 @@ include::modules/nw-osp-loadbalancer-limitations.adoc[leveloffset=+1]
1010
include::modules/nw-osp-loadbalancer-etp-local.adoc[leveloffset=+2]
1111
include::modules/installation-osp-api-octavia.adoc[leveloffset=+1]
1212
include::modules/installation-osp-api-scaling.adoc[leveloffset=+2]
13-
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+1]
13+
14+
// Services for an external load balancer
15+
include::modules/nw-osp-services-external-load-balancer.adoc[leveloffset=+1]
16+
17+
// Configuring an external load balancer
18+
include::modules/nw-osp-configuring-external-load-balancer.adoc[leveloffset=+2]

0 commit comments

Comments
 (0)