You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/ngf/how-to/data-plane-configuration.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ weight: 500
4
4
toc: true
5
5
type: how-to
6
6
product: NGF
7
-
docs: DOCS-000
7
+
nd-docs: DOCS-1838
8
8
---
9
9
10
10
Learn how to dynamically update the NGINX Gateway Fabric global data plane configuration.
@@ -342,7 +342,7 @@ EOF
342
342
343
343
## Configure infrastructure-related settings
344
344
345
-
You can configure deployment and service settings for all data plane instances by editing the `NginxProxy` resource at the Gateway or GatewayClass level. These settings can also be specified under the `nginx` section in the Helm values file. You can edit things such as replicas, pod scheduling options, container resource limits, extra volume mounts, service types and load balancer settings.
345
+
You can configure deployment and service settings for all data plane instances by editing the `NginxProxy` resource at the Gateway or GatewayClass level. These settings can also be specified under the `nginx` section in the Helm values file. You can edit things such as replicas, pod scheduling options, container resource limits, extra volume mounts, service types and load balancer settings.
346
346
347
347
The following command creates an `NginxProxy` resource with 2 replicas, sets `container.resources.requests` to 100m CPU and 128Mi memory, configures a 90 second `pod.terminationGracePeriodSeconds`, and sets the service type to `LoadBalancer` with IP `192.87.9.1` and AWS NLB annotation.
Copy file name to clipboardExpand all lines: content/ngf/how-to/scaling.md
+10-10Lines changed: 10 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ weight: 700
4
4
toc: true
5
5
type: how-to
6
6
product: NGF
7
-
docs: DOCS-0000
7
+
nd-docs: DOCS-1840
8
8
---
9
9
10
10
This document describes how you can separately scale the NGINX Gateway Fabric control plane and data plane.
@@ -14,7 +14,7 @@ It provides guidance on how to scale each plane effectively, and when you should
14
14
15
15
### Scaling the data plane
16
16
17
-
The data plane is the NGINX deployment that handles user traffic to backend applications. Every Gateway object created provisions its own NGINX deployment and configuration.
17
+
The data plane is the NGINX deployment that handles user traffic to backend applications. Every Gateway object created provisions its own NGINX deployment and configuration.
18
18
19
19
You have two options for scaling the data plane:
20
20
@@ -25,9 +25,9 @@ You have two options for scaling the data plane:
25
25
26
26
Understanding when to increase replicas or create a new Gateway is key to managing traffic effectively.
27
27
28
-
Increasing data plane replicas is ideal when you need to handle more traffic without changing the configuration.
28
+
Increasing data plane replicas is ideal when you need to handle more traffic without changing the configuration.
29
29
30
-
For example, if you're routing traffic to `api.example.com` and notice an increase in load, you can scale the replicas from 1 to 5 to better distribute the traffic and reduce latency.
30
+
For example, if you're routing traffic to `api.example.com` and notice an increase in load, you can scale the replicas from 1 to 5 to better distribute the traffic and reduce latency.
31
31
32
32
All replicas will share the same configuration from the Gateway used to set up the data plane, simplifying configuration management.
33
33
@@ -45,15 +45,15 @@ Secondly, you can update the `NginxProxy` resource while NGINX is running to mod
The alternate way to scale the data plane is by creating a new Gateway. This is beneficial when you need distinct configurations, isolation, or separate policies.
48
+
The alternate way to scale the data plane is by creating a new Gateway. This is beneficial when you need distinct configurations, isolation, or separate policies.
49
49
50
-
For example, if you're routing traffic to a new domain `admin.example.com` and require a different TLS certificate, stricter rate limits, or separate authentication policies, creating a new Gateway could be a good approach.
50
+
For example, if you're routing traffic to a new domain `admin.example.com` and require a different TLS certificate, stricter rate limits, or separate authentication policies, creating a new Gateway could be a good approach.
51
51
52
52
It allows for safe experimentation with isolated configurations and makes it easier to enforce security boundaries and specific routing rules.
53
53
54
54
### Scaling the control plane
55
55
56
-
The control plane builds configuration based on defined Gateway API resources and sends that configuration to the NGINX data planes. With leader election enabled by default, the control plane can be scaled horizontally by running multiple replicas, although only the pod with leader lease can actively manage configuration status updates.
56
+
The control plane builds configuration based on defined Gateway API resources and sends that configuration to the NGINX data planes. With leader election enabled by default, the control plane can be scaled horizontally by running multiple replicas, although only the pod with leader lease can actively manage configuration status updates.
57
57
58
58
Scaling the control plane can be beneficial in the following scenarios:
59
59
@@ -70,11 +70,11 @@ To scale the control plane, use the `kubectl scale` command on the control plane
70
70
71
71
When scaling the control plane, it's important to understand how status updates are handled for Gateway API resources.
72
72
73
-
All control plane pods can send NGINX configuration to the data planes. However, only the leader control plane pod is allowed to write status updates to Gateway API resources.
73
+
All control plane pods can send NGINX configuration to the data planes. However, only the leader control plane pod is allowed to write status updates to Gateway API resources.
74
74
75
-
If an NGINX instance connects to a non-leader pod, and an error occurs when applying the config, that error status will not be written to the Gateway object status.
75
+
If an NGINX instance connects to a non-leader pod, and an error occurs when applying the config, that error status will not be written to the Gateway object status.
76
76
77
-
To mitigate the potential for this issue, ensure that the number of NGINX data plane pods equals or exceeds the number of control plane pods.
77
+
To mitigate the potential for this issue, ensure that the number of NGINX data plane pods equals or exceeds the number of control plane pods.
78
78
79
79
This increases the likelihood that at least one of the data planes is connected to the leader control plane pod. If an applied configuration has an error, the leader pod will be aware of it and status can still be written.
Copy file name to clipboardExpand all lines: content/ngf/install/deploy-data-plane.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ weight: 600
4
4
toc: true
5
5
nd-content-type: how-to
6
6
nd-product: NGF
7
-
nd-docs: DOCS-000
7
+
nd-docs: DOCS-1854
8
8
---
9
9
10
10
## Overview
@@ -104,13 +104,13 @@ The NginxProxy custom resource can modify the provisioning of the Service object
104
104
105
105
{{< note >}} Updating most Kubernetes related fields in NginxProxy will trigger a restart of the related resources. {{< /note >}}
106
106
107
-
An NginxProxy resource is created by default after deploying NGINX Gateway Fabric. This NginxProxy resource is attached to the GatewayClass (created on NGINX Gateway Fabric installation), and
107
+
An NginxProxy resource is created by default after deploying NGINX Gateway Fabric. This NginxProxy resource is attached to the GatewayClass (created on NGINX Gateway Fabric installation), and
108
108
its settings are applied globally to all Gateways.
109
109
110
110
Use `kubectl get` and `kubectl describe` to get some more information on the resource:
111
111
112
112
```shell
113
-
kubectl get nginxproxies -A
113
+
kubectl get nginxproxies -A
114
114
```
115
115
```text
116
116
NAMESPACE NAME AGE
@@ -159,7 +159,7 @@ Under `Spec.Kubernetes` you can see a few things:
159
159
- How many NGINX Deployment replicas are specified
160
160
- The type of Service and external traffic policy
161
161
162
-
{{< note >}} Depending on installation configuration, the default NginxProxy settings may be slightly different from what is shown in the example.
162
+
{{< note >}} Depending on installation configuration, the default NginxProxy settings may be slightly different from what is shown in the example.
163
163
For more information on NginxProxy and its configurable fields, see the [API reference]({{< ref "/ngf/reference/api.md" >}}). {{< /note >}}
164
164
165
165
Modify the NginxProxy resource to change the type of Service.
@@ -173,7 +173,7 @@ type: NodePort
173
173
After saving the changes, use `kubectl get` on the service, and you should see the service type has changed to `LoadBalancer`.
Copy file name to clipboardExpand all lines: content/ngf/install/secure-certificates.md
+4-3Lines changed: 4 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,13 +4,14 @@ weight: 100
4
4
toc: true
5
5
nd-content-type: how-to
6
6
nd-product: NGF
7
+
nd-docs: DOCS-1851
7
8
---
8
9
9
-
By default, NGINX Gateway Fabric installs self-signed certificates to secure the connection between the NGINX Gateway Fabric control plane and the NGINX data plane pods. These certificates are created by a `cert-generator` job when NGINX Gateway Fabric is first installed.
10
+
By default, NGINX Gateway Fabric installs self-signed certificates to secure the connection between the NGINX Gateway Fabric control plane and the NGINX data plane pods. These certificates are created by a `cert-generator` job when NGINX Gateway Fabric is first installed.
10
11
11
12
However, because these certificates are self-signed and will expire after 3 years, we recommend a solution such as [cert-manager](https://cert-manager.io) to create and manage these certificates in a production environment.
12
13
13
-
This guide will step through how to install and use `cert-manager` to secure this connection.
14
+
This guide will step through how to install and use `cert-manager` to secure this connection.
14
15
15
16
{{< caution >}}
16
17
@@ -179,7 +180,7 @@ Specify the Secret name using the `certGenerator.agentTLSSecretName` helm value.
179
180
180
181
{{%tab name="Manifests"%}}
181
182
182
-
Specify the Secret name using the `agent-tls-secret` command-line argument.
183
+
Specify the Secret name using the `agent-tls-secret` command-line argument.
Copy file name to clipboardExpand all lines: content/ngf/install/upgrade-version.md
+9-9Lines changed: 9 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,18 +4,18 @@ weight: 700
4
4
toc: true
5
5
type: how-to
6
6
product: NGF
7
-
docs: DOCS-0000
7
+
nd-docs: DOCS-1852
8
8
---
9
9
10
-
This document describes how to upgrade NGINX Gateway Fabric when a new version releases.
10
+
This document describes how to upgrade NGINX Gateway Fabric when a new version releases.
11
11
12
12
It covers the necessary steps for minor versions as well as major versions (such as 1.x to 2.x).
13
13
14
14
Many of the nuances in upgrade paths relate to how custom resource definitions (CRDs) are managed.
15
15
16
-
{{< tip >}}
16
+
{{< tip >}}
17
17
18
-
To avoid interruptions, review the [Delay pod termination for zero downtime upgrades](#configure-delayed-pod-termination-for-zero-downtime-upgrades) section.
18
+
To avoid interruptions, review the [Delay pod termination for zero downtime upgrades](#configure-delayed-pod-termination-for-zero-downtime-upgrades) section.
19
19
20
20
{{< /tip >}}
21
21
@@ -24,7 +24,7 @@ To avoid interruptions, review the [Delay pod termination for zero downtime upgr
24
24
25
25
{{< important >}} NGINX Plus users need a JWT secret before upgrading from version 1.4.0 to 1.5.x.
26
26
27
-
Follow the steps in [Set up the JWT]({{< ref "/ngf/install/nginx-plus.md#set-up-the-jwt" >}}) to create the Secret.
27
+
Follow the steps in [Set up the JWT]({{< ref "/ngf/install/nginx-plus.md#set-up-the-jwt" >}}) to create the Secret.
28
28
29
29
{{< /important >}}
30
30
@@ -33,7 +33,7 @@ Follow the steps in [Set up the JWT]({{< ref "/ngf/install/nginx-plus.md#set-up-
33
33
34
34
To upgrade your Gateway API resources, take the following steps:
35
35
36
-
- Use [Technical specifications]({{< ref "/ngf/reference/technical-specifications.md" >}}) to verify your Gateway API resources are compatible with your NGINX Gateway Fabric version.
36
+
- Use [Technical specifications]({{< ref "/ngf/reference/technical-specifications.md" >}}) to verify your Gateway API resources are compatible with your NGINX Gateway Fabric version.
37
37
- Review the [release notes](https://github.com/kubernetes-sigs/gateway-api/releases) for any important upgrade-specific information.
38
38
39
39
To upgrade the Gateway API resources, run the following command:
@@ -56,7 +56,7 @@ Run the following command to upgrade the CRDs:
@@ -119,7 +119,7 @@ To remove the previous version 1.x of NGINX Gateway Fabric, follow these steps:
119
119
First, run the following command to uninstall NGINX Gateway Fabric from the `nginx-gateway` namespace, and update `ngf` to your release name if it is different:
120
120
121
121
```shell
122
-
helm uninstall ngf -n nginx-gateway
122
+
helm uninstall ngf -n nginx-gateway
123
123
```
124
124
125
125
Afterwards, remove CRDs associated with NGINX Gateway Fabric version 1.x with the following command:
@@ -240,7 +240,7 @@ You can then follow [this localhost link](http://localhost:1313/nginx-gateway-fa
240
240
241
241
## Upgrade from NGINX Open Source to NGINX Plus
242
242
243
-
{{< important >}}
243
+
{{< important >}}
244
244
245
245
Ensure that you [Set up the JWT]({{< ref "/ngf/install/nginx-plus.md#set-up-the-jwt" >}}) before upgrading. These instructions only apply to Helm.
0 commit comments