Skip to content

Commit 1e5ee04

Browse files
Jim RyanjjngxADubhlaoichvepatel
authored
Add upgrading to 4.x docs (#6930)
* add upgrading to 4.x page * Update upgrading docs * Delete upgrading-to-4.x.x.md * Apply suggestions from code review Co-authored-by: Alan Dooley <[email protected]> Signed-off-by: Jim Ryan <[email protected]> * Apply suggestions from code review Co-authored-by: Venktesh Shivam Patel <[email protected]> Signed-off-by: Jim Ryan <[email protected]> * feat: Update IA, metadata and content related to v4 upgrades This commit updates the information architecture and metadata for documentation related to NGINX Ingress Controller 4.0.0. It clarifies the relationship between certain documents, moves or hides pages and delineates sections of the upgrade documentation while making the text instruction more concise and precise. --------- Signed-off-by: Jim Ryan <[email protected]> Co-authored-by: Jakub Jarosz <[email protected]> Co-authored-by: Alan Dooley <[email protected]> Co-authored-by: Venktesh Shivam Patel <[email protected]>
1 parent 89ec6c3 commit 1e5ee04

File tree

8 files changed

+210
-65
lines changed

8 files changed

+210
-65
lines changed

site/content/installation/build-nginx-ingress-controller.md

Lines changed: 42 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
---
2-
description:
3-
docs: DOCS-1453
4-
doctypes:
5-
- installation
62
title: Build NGINX Ingress Controller
73
toc: true
8-
weight: 200
4+
weight: 400
5+
type: how-to
6+
product: NIC
7+
docs: DOCS-1453
98
---
109

1110
This document describes how to build an F5 NGINX Ingress Controller image from source code and upload it to a private Docker registry.
@@ -14,7 +13,7 @@ It also includes information on the Makefile targets and variables.
1413

1514
{{<call-out "tip" "Pre-built image alternatives" >}} If you do not need to build a custom image, see the [pre-built image options](#pre-built-images) at the end of this guide. {{</call-out>}}
1615

17-
## Before you start
16+
## Before you begin
1817

1918
To get started, you need the following software installed on your machine:
2019

@@ -24,7 +23,9 @@ To get started, you need the following software installed on your machine:
2423
- [OpenSSL](https://www.openssl.org/), optionally, if you would like to generate a self-signed certificate and a key for the default server.
2524
- For NGINX Plus users, download the certificate (_nginx-repo.crt_) and key (_nginx-repo.key_) from [MyF5](https://my.f5.com).
2625

27-
Although NGINX Ingress Controller is written in Golang, you don't need to have Golang installed. You can download the precompiled binary file or build NGINX Ingress Controller in a Docker container.
26+
Although NGINX Ingress Controller is written in Golang, you don't need to have Golang installed.
27+
28+
You can download the precompiled binary file or build NGINX Ingress Controller in a Docker container.
2829

2930
---
3031

@@ -62,45 +63,45 @@ After setting up your environment, follow these steps to build the NGINX Ingress
6263
6364
### For NGINX
6465
65-
1. Build the image. Replace `<my-docker-registry>` with your private registry's path.
66+
Build the image. Replace `<my-docker-registry>` with your private registry's path.
6667

67-
- For a Debian-based image:
68+
- For a Debian-based image:
6869

69-
```shell
70-
make debian-image PREFIX=<my-docker-registry>/nginx-ingress TARGET=download
71-
```
70+
```shell
71+
make debian-image PREFIX=<my-docker-registry>/nginx-ingress TARGET=download
72+
```
7273

73-
- For an Alpine-based image:
74+
- For an Alpine-based image:
7475

75-
```shell
76-
make alpine-image PREFIX=<my-docker-registry>/nginx-ingress TARGET=download
77-
```
76+
```shell
77+
make alpine-image PREFIX=<my-docker-registry>/nginx-ingress TARGET=download
78+
```
7879

79-
**What to expect**: The image is built and tagged with a version number, which is derived from the `VERSION` variable in the [_Makefile_](#makefile-details). This version number is used for tracking and deployment purposes.
80+
**What to expect**: The image is built and tagged with a version number, which is derived from the `VERSION` variable in the [_Makefile_](#makefile-details). This version number is used for tracking and deployment purposes.
8081

8182
### For NGINX Plus
8283

83-
1. Place your NGINX Plus license files (_nginx-repo.crt_ and _nginx-repo.key_) in the project's root folder. To verify they're in place, run:
84+
Place your NGINX Plus license files (_nginx-repo.crt_ and _nginx-repo.key_) in the project's root folder. To verify they're in place, run:
8485

85-
```shell
86-
ls nginx-repo.*
87-
```
86+
```shell
87+
ls nginx-repo.*
88+
```
8889

89-
You should see:
90+
You should see:
9091

91-
```shell
92-
nginx-repo.crt nginx-repo.key
93-
```
92+
```text
93+
nginx-repo.crt nginx-repo.key
94+
```
9495

95-
2. Build the image. Replace `<my-docker-registry>` with your private registry's path.
96+
Build the image. Replace `<my-docker-registry>` with your private registry's path.
9697
97-
```shell
98-
make debian-image-plus PREFIX=<my-docker-registry>/nginx-plus-ingress TARGET=download
99-
```
98+
```shell
99+
make debian-image-plus PREFIX=<my-docker-registry>/nginx-plus-ingress TARGET=download
100+
```
100101
101-
<br>
102+
<br>
102103
103-
**What to expect**: The image is built and tagged with a version number, which is derived from the `VERSION` variable in the [_Makefile_](#makefile-details). This version number is used for tracking and deployment purposes.
104+
**What to expect**: The image is built and tagged with a version number, which is derived from the `VERSION` variable in the [_Makefile_](#makefile-details). This version number is used for tracking and deployment purposes.
104105
105106
{{<note>}} If a patch for NGINX Plus is released, make sure to rebuild your image to get the latest version. If your system is caching the Docker layers and not updating the packages, add `DOCKER_BUILD_OPTIONS="--pull --no-cache"` to the make command. {{</note>}}
106107
@@ -112,19 +113,19 @@ Once you've successfully built the NGINX or NGINX Plus Ingress Controller image,
112113

113114
### For NGINX
114115

115-
1. Upload the NGINX image. If you're using a custom tag, append `TAG=your-tag` to the command. Replace `<my-docker-registry>` with your private registry's path.
116+
Upload the NGINX image. If you're using a custom tag, append `TAG=your-tag` to the command. Replace `<my-docker-registry>` with your private registry's path.
116117

117-
```shell
118-
make push PREFIX=<my-docker-registry>/nginx-ingress
119-
```
118+
```shell
119+
make push PREFIX=<my-docker-registry>/nginx-ingress
120+
```
120121

121122
### For NGINX Plus
122123

123-
1. Upload the NGINX Plus image. Like with the NGINX image, if you're using a custom tag, add `TAG=your-tag` to the end of the command. Replace `<my-docker-registry>` with your private registry's path.
124+
Upload the NGINX Plus image. Like with the NGINX image, if you're using a custom tag, add `TAG=your-tag` to the end of the command. Replace `<my-docker-registry>` with your private registry's path.
124125

125-
```shell
126-
make push PREFIX=<my-docker-registry>/nginx-plus-ingress
127-
```
126+
```shell
127+
make push PREFIX=<my-docker-registry>/nginx-plus-ingress
128+
```
128129

129130
---
130131

@@ -160,6 +161,8 @@ Key targets include:
160161
| _ubi-image-nap-dos-plus_ | <p>Builds a UBI-based image with NGINX Plus, [NGINX App Protect WAF](/nginx-app-protect/) and the [NGINX App Protect DoS](/nginx-app-protect-dos/) module for [OpenShift](https://www.openshift.com/) clusters.</p> <p> **Important**: Save your RHEL organization and activation keys in a file named _rhel_license_ at the project root.</p> <p> For instance:</p> <pre>RHEL_ORGANIZATION=1111111<br />RHEL_ACTIVATION_KEY=your-key</pre>|
161162
{{</bootstrap-table>}}
162163

164+
---
165+
163166
### Additional useful targets {#other-makefile-targets}
164167

165168
A few other useful targets:

site/content/installation/installing-nic/create-license-secret.md renamed to site/content/installation/create-license-secret.md

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
---
2-
title: Create a License Secret
2+
title: Create a license Secret
33
toc: true
4-
weight: 100
4+
weight: 300
5+
type: how-to
6+
product: NIC
57
docs: DOCS-000
68
---
79

8-
This document explains how to create and use a license secret for NGINX Ingress Controller.
10+
This document explains how to create and use a license secret for F5 NGINX Ingress Controller.
911

1012
# Overview
1113

@@ -17,9 +19,17 @@ The JWT is required for validating your subscription and reporting telemetry dat
1719

1820
{{< note >}} Read the [subscription licenses topic](https://docs.nginx.com/solutions/about-subscription-licenses/#for-internet-connected-environments) for a list of IPs associated with F5's licensing endpoint (`product.connect.nginx.com`). {{</ note >}}
1921

20-
## Set up the JWT
22+
---
23+
24+
## Set up your NGINX Plus license
2125

22-
{{< include "installation/download-jwt.md" >}}
26+
### Download the JWT
27+
28+
{{< include "/installation/download-jwt.md" >}}
29+
30+
---
31+
32+
### Create the Secret
2333

2434
The JWT needs to be configured before deploying NGINX Ingress Controller. The JWT will be stored in a Kubernetes Secret of type `nginx.com/license`, and can be created with the following command.
2535

@@ -34,6 +44,8 @@ The Secret needs to be in the same Namespace as the NGINX Ingress Controller Pod
3444

3545
{{< include "installation/jwt-password-note.md" >}}
3646

47+
---
48+
3749
### Use the NGINX Plus license Secret
3850

3951
If using a name other than the default `license-token`, provide the name of this Secret when installing NGINX Ingress Controller:
@@ -42,7 +54,7 @@ If using a name other than the default `license-token`, provide the name of this
4254

4355
{{%tab name="Helm"%}}
4456

45-
Specify the Secret name using the `controller.mgmt.licenseTokenSecretName` helm value.
57+
Specify the Secret name using the `controller.mgmt.licenseTokenSecretName` Helm value.
4658

4759
For detailed guidance on creating the Management block via Helm, refer to the [Helm configuration documentation]({{< relref "installation/installing-nic/installation-with-helm/#configuration" >}}).
4860

@@ -60,12 +72,13 @@ For detailed guidance on creating the Management ConfigMap, refer to the [Manage
6072

6173
**If you are reporting to the default licensing endpoint, then you can now proceed with [installing NGINX Ingress Controller]({{< relref "installation/installing-nic/" >}}). Otherwise, follow the steps below to configure reporting to NGINX Instance Manager.**
6274

75+
---
6376

64-
### Reports for NGINX Instance Manager {#nim}
77+
### Create report for NGINX Instance Manager {#nim}
6578

66-
If you are deploying NGINX Ingress Controller in an "air-gapped" environment you will need to report to NGINX Instance Manager (NIM) instead of the default licensing endpoint.
79+
If you are deploying NGINX Ingress Controller in an "air-gapped" environment you will need to report to [NGINX Instance Manager](https://docs.nginx.com/nginx-instance-manager/) instead of the default licensing endpoint.
6780

68-
First, you must specify the endpoint of your NGINX Instance Manager:
81+
First, you must specify the endpoint of your NGINX Instance Manager.
6982

7083
{{<tabs name="nim-endpoint">}}
7184

@@ -83,6 +96,8 @@ Specify the endpoint in the `usage-report-endpoint` Management ConfigMap key.
8396

8497
{{</tabs>}}
8598

99+
---
100+
86101
#### Configure SSL certificates and SSL trusted certificates {#nim-cert}
87102

88103
To configure SSL certificates or SSL trusted certificates, extra steps are necessary.
@@ -128,6 +143,8 @@ Specify the SSL trusted certificate Secret name in the `ssl-trusted-certificate-
128143

129144
**Once these Secrets are created and configured, you can now [install NGINX Ingress Controller ]({{< relref "installation/installing-nic" >}}).**
130145

146+
---
147+
131148
## What’s reported and how it’s protected {#telemetry}
132149

133150
NGINX Plus reports the following data every hour by default:

site/content/installation/installing-nic/installation-with-helm.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
---
2-
docs: DOCS-602
32
title: Installation with Helm
43
toc: true
54
weight: 100
5+
type: how-to
6+
product: NIC
7+
docs: DOCS-602
68
---
79

810
This document explains how to install F5 NGINX Ingress Controller using [Helm](https://helm.sh/).
@@ -14,7 +16,7 @@ This document explains how to install F5 NGINX Ingress Controller using [Helm](h
1416
- A [Kubernetes Version Supported by NGINX Ingress Controller](https://docs.nginx.com/nginx-ingress-controller/technical-specifications/#supported-kubernetes-versions)
1517
- Helm 3.0+.
1618
- If you’d like to use NGINX Plus:
17-
- Get the NGINX Ingress Controller JWT and [create a license secret]({{< relref "installation/installing-nic/create-license-secret/" >}}).
19+
- Get the NGINX Ingress Controller JWT and [create a license secret]({{< relref "/installation/create-license-secret.md" >}}).
1820
- Download the image using your NGINX Ingress Controller subscription certificate and key. View the [Get NGINX Ingress Controller from the F5 Registry]({{< relref "installation/nic-images/get-registry-image.md" >}}) topic.
1921
- The [Get the NGINX Ingress Controller image with JWT]({{< relref "installation/nic-images/get-image-using-jwt.md" >}}) topic describes how to use your subscription JWT token to get the image.
2022
- The [Build NGINX Ingress Controller]({{< relref "installation/build-nginx-ingress-controller.md" >}}) topic explains how to push an image to a private Docker registry.

site/content/installation/installing-nic/installation-with-manifests.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
---
2-
docs: DOCS-603
3-
doctypes:
4-
- ''
52
title: Installation with Manifests
63
toc: true
74
weight: 200
5+
type: how-to
6+
product: NIC
7+
docs: DOCS-603
88
---
99

1010
This guide explains how to use Manifests to install F5 NGINX Ingress Controller, then create both common and custom resources and set up role-based access control.
1111

1212
## Before you start
1313

14-
If you are using NGINX Plus, get the NGINX Ingress Controller JWT and [create a license secret]({{< relref "installation/installing-nic/create-license-secret/" >}}).
14+
If you are using NGINX Plus, get the NGINX Ingress Controller JWT and [create a license secret]({{< relref "/installation/create-license-secret.md" >}}).
1515

1616
### Get the NGINX Controller Image
1717

site/content/installation/installing-nic/installation-with-operator.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
---
2-
docs: DOCS-604
3-
doctypes:
4-
- ''
52
title: Installation with NGINX Ingress Operator
63
toc: true
74
weight: 300
5+
type: how-to
6+
product: NIC
7+
docs: DOCS-604
88
---
99

10-
This document explains how to use NGINX Ingress Operator to install NGINX Ingress Controller.
10+
This document explains how to install F5 NGINX Ingress Controller using NGINX Ingress Operator.
1111

1212
## Before you start
1313

14-
If you're using NGINX Plus, get the NGINX Ingress Controller JWT and [create a license secret]({{< relref "installation/installing-nic/create-license-secret/" >}}).
14+
If you're using NGINX Plus, get the NGINX Ingress Controller JWT and [create a license secret]({{< relref "/installation/create-license-secret.md" >}}).
1515

1616
{{< note >}} We recommend the most recent stable version of NGINX Ingress Controller, available on the GitHub repository's [releases page]({{< relref "releases.md" >}}). {{< /note >}}
1717

0 commit comments

Comments
 (0)