1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-05 12:46:18 +01:00
Files
openshift-docs/modules/nw-aws-switching-clb-with-nlb.adoc

65 lines
2.3 KiB
Plaintext

// Module included in the following assemblies:
//
// * networking/configuring_ingress_cluster_traffic/configuring-ingress-cluster-traffic-aws.adoc
:_mod-docs-content-type: PROCEDURE
[id="nw-aws-switching-clb-with-nlb_{context}"]
= Switching the Ingress Controller from using a Classic Load Balancer to a Network Load Balancer
[role="_abstract"]
To improve performance and reduce latency for cluster traffic in {product-title} on {aws-full}, switch an Ingress Controller using a Classic Load Balancer (CLB) to one that uses a Network Load Balancer (NLB).
Switching between these load balancers does not delete the `IngressController` object.
[WARNING]
====
This procedure might cause the following issues:
* An outage that can last several minutes due to new DNS records propagation, new load balancers provisioning, and other factors. IP addresses and canonical names of the Ingress Controller load balancer might change after applying this procedure.
* Leaked load balancer resources due to a change in the annotation of the service.
====
.Procedure
. Modify the existing Ingress Controller that you want to switch to by using an NLB. This example assumes that your default Ingress Controller has an `External` scope and no other customizations:
+
.Example `ingresscontroller.yaml` file
[source,yaml]
----
apiVersion: operator.openshift.io/v1
kind: IngressController
metadata:
creationTimestamp: null
name: default
namespace: openshift-ingress-operator
spec:
endpointPublishingStrategy:
loadBalancer:
scope: External
providerParameters:
type: AWS
aws:
type: NLB
type: LoadBalancerService
----
+
[NOTE]
====
If you do not specify a value for the `spec.endpointPublishingStrategy.loadBalancer.providerParameters.aws.type` field, the Ingress Controller uses the `spec.loadBalancer.platform.aws.type` value from the cluster `Ingress` configuration that was set during installation.
====
+
[TIP]
====
If your Ingress Controller has other customizations that you want to update, such as changing the domain, consider force replacing the Ingress Controller definition file instead.
====
. Apply the changes to the Ingress Controller YAML file by running the command:
+
[source,terminal]
----
$ oc apply -f ingresscontroller.yaml
----
+
Expect several minutes of outages while the Ingress Controller updates.