Skip to content

Commit eec3286

Browse files
ADubhlaoichvepatel
andcommitted
Update top level documentation pages for style consistency (#5754)
This commit changes the top level pages of documentation to adhere with newer style guide conventions. * Horizontal rules at the end of sections * Sentence case for page titles and headings * Note formatting * Link introduction phrasing Co-authored-by: Venktesh Shivam Patel <[email protected]>
1 parent 87fd287 commit eec3286

File tree

4 files changed

+127
-0
lines changed

4 files changed

+127
-0
lines changed

docs/content/overview/about.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ This document describes the F5 NGINX Ingress Controller, an Ingress Controller i
1010

1111
---
1212

13+
---
14+
1315
NGINX Ingress Controller is an [Ingress Controller]({{< relref "glossary.md#ingress-controller">}}) implementation for NGINX and NGINX Plus that can load balance Websocket, gRPC, TCP and UDP applications. It supports standard [Ingress]({{< relref "glossary.md#ingress">}}) features such as content-based routing and TLS/SSL termination. Several NGINX and NGINX Plus features are available as extensions to Ingress resources through [Annotations]({{< relref "configuration/ingress-resources/advanced-configuration-with-annotations">}}) and the [ConfigMap]({{< relref "configuration/global-configuration/configmap-resource">}}) resource.
1416

1517
NGINX Ingress Controller supports the [VirtualServer and VirtualServerRoute resources]({{< relref "configuration/virtualserver-and-virtualserverroute-resources">}}) as alternatives to Ingress, enabling traffic splitting and advanced content-based routing. It also supports TCP, UDP and TLS Passthrough load balancing using [TransportServer resources]({{< relref "configuration/transportserver-resource">}}).

docs/content/overview/product-telemetry.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,32 @@
11
---
22
title: Product telemetry
3+
title: Product telemetry
34
toc: true
45
weight: 500
56
---
67

78
Learn why, what and how F5 NGINX Ingress Controller collects telemetry.
89

10+
---
11+
Learn why, what and how F5 NGINX Ingress Controller collects telemetry.
12+
913
---
1014

1115
## Overview
1216

17+
NGINX Ingress Controller collects product telemetry data to allow its developers to understand how it's deployed and configured by users. This data is used to triage development work, prioritizing features and functionality that will benefit the most people.
1318
NGINX Ingress Controller collects product telemetry data to allow its developers to understand how it's deployed and configured by users. This data is used to triage development work, prioritizing features and functionality that will benefit the most people.
1419

1520
Product telemetry is enabled by default, collected once every 24 hours. It's then sent to a service managed by F5 over HTTPS.
1621

1722
{{< note >}} If you would prefer not to send any telemetry data, you can [opt-out](#opt-out) when installing NGINX Ingress Controller. {{< /note >}}
1823

1924
---
25+
{{< note >}} If you would prefer not to send any telemetry data, you can [opt-out](#opt-out) when installing NGINX Ingress Controller. {{< /note >}}
2026

27+
---
28+
29+
## Data collected
2130
## Data collected
2231

2332
These are the data points collected and reported by NGINX Ingress Controller:
@@ -60,6 +69,8 @@ These are the data points collected and reported by NGINX Ingress Controller:
6069

6170
---
6271

72+
---
73+
6374
## Opt out
6475

6576
Product telemetry can be disabled when installing NGINX Ingress Controller.
@@ -76,6 +87,8 @@ helm upgrade --install ... --set controller.telemetryReporting.enable=false
7687

7788
---
7889

90+
---
91+
7992
### Manifests
8093

8194
When installing NGINX Ingress Controller with Manifests, set the `-enable-telemetry-reporting` flag to `false`

docs/content/technical-specifications.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ _NGINX Plus images include NGINX Plus R32._
7272

7373
---
7474

75+
---
76+
7577
#### **F5 Container registry**
7678

7779
NGINX Plus images are available through the F5 Container registry `private-registry.nginx.com`, explained in the [Get the NGINX Ingress Controller image with JWT]({{<relref "/installation/nic-images/using-the-jwt-token-docker-secret.md">}}) and [Get the F5 Registry NGINX Ingress Controller image]({{<relref "/installation/nic-images/pulling-ingress-controller-image.md">}}) topics.

docs/content/usage-reporting.md

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,16 @@ docs: DOCS-1445
33
doctypes:
44
- concept
55
title: Enable Usage Reporting
6+
title: Enable Usage Reporting
67
toc: true
78
weight: 1800
89
---
910

1011
This page describes how to enable Usage Reporting for F5 NGINX Ingress Controller and how to view usage data through the API.
1112

13+
---
14+
This page describes how to enable Usage Reporting for F5 NGINX Ingress Controller and how to view usage data through the API.
15+
1216
---
1317

1418
## Overview
@@ -17,6 +21,9 @@ Usage Reporting is a Kubernetes controller that connects to the NGINX Management
1721

1822
To use Usage Reporting, you must have access to NGINX Management Suite. For more information, see [NGINX Management Suite](https://www.f5.com/products/nginx/instance-manager/). Usage Reporting is a requirement of the new Flexible Consumption Program for NGINX Ingress Controller.
1923

24+
---
25+
To use Usage Reporting, you must have access to NGINX Management Suite. For more information, see [NGINX Management Suite](https://www.f5.com/products/nginx/instance-manager/). Usage Reporting is a requirement of the new Flexible Consumption Program for NGINX Ingress Controller.
26+
2027
---
2128

2229
## Requirements
@@ -36,6 +43,9 @@ In addition to the software requirements, you will need:
3643

3744
---
3845

46+
## Add a user account to NGINX Management Suite
47+
---
48+
3949
## Add a user account to NGINX Management Suite
4050

4151
Usage Reporting needs a user account to send usage data to NGINX Instance Manager: these are the steps involved.
@@ -48,17 +58,29 @@ Usage Reporting needs a user account to send usage data to NGINX Instance Manage
4858
1. Create a user account following the steps in [Add Users](https://docs.nginx.com/nginx-management-suite/admin-guides/access-control/set-up-rbac/#add-users) section of the NGINX Management Suite documentation. In step 6, assign the user to the role created above. Note that currently only "basic auth" authentication is supported for usage reporting purposes.
4959

5060
---
61+
1. Create a user account following the steps in [Add Users](https://docs.nginx.com/nginx-management-suite/admin-guides/access-control/set-up-rbac/#add-users) section of the NGINX Management Suite documentation. In step 6, assign the user to the role created above. Note that currently only "basic auth" authentication is supported for usage reporting purposes.
5162

63+
---
64+
65+
## Deploy Usage Reporting
5266
## Deploy Usage Reporting
5367

68+
### Create a namespace
5469
### Create a namespace
5570

71+
Create the Kubernetes namespace `nginx-cluster-connector` for Usage Reporting:
5672
Create the Kubernetes namespace `nginx-cluster-connector` for Usage Reporting:
5773

5874
```shell
5975
kubectl create namespace nginx-cluster-connector
6076
```
77+
```shell
78+
kubectl create namespace nginx-cluster-connector
79+
```
80+
81+
---
6182

83+
### Pass the credential to the NGINX Management Suite API
6284
---
6385

6486
### Pass the credential to the NGINX Management Suite API
@@ -67,17 +89,40 @@ To make the credential available to Usage Reporting, create a Kubernetes secret.
6789

6890
Both the username and password are stored in the Kubernetes Secret and need to be converted to base64. In this example the username will be `foo` and the password will be `bar`.
6991

92+
To obtain the base64 representation of a string, use the following command:
93+
To make the credential available to Usage Reporting, create a Kubernetes secret. The username and password created in the previous section are required to connect the NGINX Management Suite API.
94+
95+
Both the username and password are stored in the Kubernetes Secret and need to be converted to base64. In this example the username will be `foo` and the password will be `bar`.
96+
7097
To obtain the base64 representation of a string, use the following command:
7198

99+
```shell
100+
echo -n 'foo' | base64
101+
# Zm9v
102+
echo -n 'bar' | base64
103+
# YmFy
104+
```
72105
```shell
73106
echo -n 'foo' | base64
74107
# Zm9v
75108
echo -n 'bar' | base64
76109
# YmFy
77110
```
78111

112+
Add the following content to a text editor, and insert the base64 representations of the username and password (Obtained in the previous step) to the `data` parameter:
79113
Add the following content to a text editor, and insert the base64 representations of the username and password (Obtained in the previous step) to the `data` parameter:
80114

115+
```yaml
116+
apiVersion: v1
117+
kind: Secret
118+
metadata:
119+
name: nms-basic-auth
120+
namespace: nginx-cluster-connector
121+
type: kubernetes.io/basic-auth
122+
data:
123+
username: Zm9v # base64 representation of 'foo'
124+
password: YmFy # base64 representation of 'bar'
125+
```
81126
```yaml
82127
apiVersion: v1
83128
kind: Secret
@@ -99,7 +144,19 @@ If you are using a different namespace, change the namespace in the `metadata` s
99144
---
100145

101146
### Deploy the Kubernetes secret to the Kubernetes cluster
147+
Save this in a file named `nms-basic-auth.yaml`. In the example, the namespace is `nginx-cluster-connector` (The default namespace) and the secret name is `nms-basic-auth`.
102148

149+
If you are using a different namespace, change the namespace in the `metadata` section of the file above.
150+
151+
{{< note >}} Usage Reporting only supports basic-auth secret type in `data` format, not `stringData`, with the username and password encoded in base64. {{< /note >}}
152+
153+
---
154+
155+
### Deploy the Kubernetes secret to the Kubernetes cluster
156+
157+
```shell
158+
kubectl apply -f nms-basic-auth.yaml
159+
```
103160
```shell
104161
kubectl apply -f nms-basic-auth.yaml
105162
```
@@ -108,6 +165,11 @@ If you need to update the basic-auth credentials for NGINX Management Suite in t
108165

109166
Download and save the deployment file [cluster-connector.yaml](https://raw.githubusercontent.com/nginxinc/kubernetes-ingress/v{{< nic-version >}}/examples/shared-examples/usage-reporting/cluster-connector.yaml). Edit the following under the `args` section and then save the file:
110167

168+
```yaml
169+
args:
170+
- -nms-server-address=https://nms.example.com/api/platform/v1
171+
- -nms-basic-auth-secret=nginx-cluster-connector/nms-basic-auth
172+
```
111173
```yaml
112174
args:
113175
- -nms-server-address=https://nms.example.com/api/platform/v1
@@ -121,29 +183,45 @@ Download and save the deployment file [cluster-connector.yaml](https://raw.githu
121183

122184
It can be created with the command `oc create -f scc.yaml`, using the file found in `shared-examples/` {{< /note >}}
123185

186+
For more information, read the [Command-line arguments](#command-line-arguments) section of this page.
124187
For more information, read the [Command-line arguments](#command-line-arguments) section of this page.
125188

126189
---
127190

128191
### Finish deployment
129192

130193
To deploy Usage Reporting, run the following command to deploy it to your Kubernetes cluster:
194+
---
195+
196+
### Finish deployment
131197

198+
To deploy Usage Reporting, run the following command to deploy it to your Kubernetes cluster:
199+
200+
```shell
201+
kubectl apply -f cluster-connector.yaml
202+
```
132203
```shell
133204
kubectl apply -f cluster-connector.yaml
134205
```
135206

136207
---
137208

209+
## Viewing usage data from the NGINX Management Suite API
210+
---
211+
138212
## Viewing usage data from the NGINX Management Suite API
139213

140214
Usage Reporting sends the number of NGINX Ingress Controller instances and nodes in the cluster to NGINX Management Suite. To view the usage data, query the NGINX Management Suite API. The usage data is available at the following endpoint:
141215

142216

217+
```shell
218+
143219
```shell
144220
curl --user "foo:bar" https://nms.example.com/api/platform/v1/k8s-usage
145221
```
146222
```json
223+
```
224+
```json
147225
{
148226
"items": [
149227
{
@@ -198,12 +276,16 @@ curl --user "foo:bar" https://nms.example.com/api/platform/v1/k8s-usage
198276

199277
If you want a friendly name for each cluster in the response, You can specify the `displayName` for the cluster with the `-cluster-display-name` command-line argument when you deploy Usage Reporting. In the response, you can see the cluster `uid` corresponding to the cluster name. For more information, read the [Command-line Arguments](#command-line-arguments) section.
200278

279+
You can query the usage data for a specific cluster by specifying the cluster uid in the endpoint, for example:
201280
You can query the usage data for a specific cluster by specifying the cluster uid in the endpoint, for example:
202281

282+
```shell
203283
```shell
204284
curl --user "foo:bar" https://nms.example.com/api/platform/v1/k8s-usage/d290f1ee-6c54-4b01-90e6-d701748f0851
205285
```
206286
```json
287+
```
288+
```json
207289
{
208290
"metadata": {
209291
"displayName": "my-cluster",
@@ -231,6 +313,9 @@ curl --user "foo:bar" https://nms.example.com/api/platform/v1/k8s-usage/d290f1ee
231313

232314
---
233315

316+
## Uninstall Usage Reporting
317+
---
318+
234319
## Uninstall Usage Reporting
235320

236321
To remove Usage Reporting from your Kubernetes cluster, run the following command:
@@ -242,7 +327,15 @@ kubectl delete -f cluster-connector.yaml
242327
---
243328

244329
## Command-line arguments
330+
---
331+
332+
## Command-line arguments
333+
334+
Usage Reporting supports several command-line arguments, which can be specified in the `args` section of the Kubernetes deployment file.
245335

336+
The following is a list of the supported command-line arguments and their usage:
337+
338+
---
246339
Usage Reporting supports several command-line arguments, which can be specified in the `args` section of the Kubernetes deployment file.
247340

248341
The following is a list of the supported command-line arguments and their usage:
@@ -254,13 +347,19 @@ The following is a list of the supported command-line arguments and their usage:
254347
The address of the NGINX Management Suite host. IPv4 addresses and hostnames are supported.
255348
Default: `http://apigw.nms.svc.cluster.local/api/platform/v1/k8s-usage`.
256349

350+
---
351+
Default: `http://apigw.nms.svc.cluster.local/api/platform/v1/k8s-usage`.
352+
257353
---
258354

259355
### -nms-basic-auth-secret `<string>`
260356

261357
Secret for basic authentication to the NGINX Management Suite API. The secret must be in `kubernetes.io/basic-auth` format using base64 encoding.
262358
Format: `<namespace>/<name>`.
263359

360+
---
361+
Format: `<namespace>/<name>`.
362+
264363
---
265364

266365
### -cluster-display-name `<string>`
@@ -269,12 +368,19 @@ The display name of the Kubernetes cluster.
269368

270369
---
271370

371+
---
372+
272373
### -skip-tls-verify
273374

274375
Skip TLS verification for the NGINX Management Suite server.
275376

276377
{{< warning >}} This argument is intended for using a self-assigned certificate for testing purposes only. {{< /warning >}}
277378

379+
---
380+
Skip TLS verification for the NGINX Management Suite server.
381+
382+
{{< warning >}} This argument is intended for using a self-assigned certificate for testing purposes only. {{< /warning >}}
383+
278384
---
279385

280386
### -min-update-interval `<string>`
@@ -283,3 +389,7 @@ The minimum interval between updates to the NGINX Management Suite.
283389
Default: `24h`.
284390

285391
{{< warning >}} This argument is intended for testing purposes only. {{< /warning >}}
392+
The minimum interval between updates to the NGINX Management Suite.
393+
Default: `24h`.
394+
395+
{{< warning >}} This argument is intended for testing purposes only. {{< /warning >}}

0 commit comments

Comments
 (0)