-
Notifications
You must be signed in to change notification settings - Fork 29
Document the GlobalConfig resource as a TransportServer pre-requisite #92
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great, but should we add a link to the TransportServers header to the base README as well in the Getting started section -> https://github.com/nginxinc/nginx-ingress-operator#getting-started? The normal flow of the docs is: "1. Deploy the operator. 2. Read these examples to deploy the IC" so it might be too late for this to be the first reference.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @soneillf5
Looks good
I added a few clarifications and some small improvements.
Also, could you update the table here ? We can specify the requirement for the field existence in the doc of that field
For example, something like this: The Ingress Controller will fail to start if the GlobalConfiguration resource doesn't exist.
Consider a similar doc for the wildcard secret
In case of a doc update for a field, it is also necessary to update the go docs https://github.com/nginxinc/nginx-ingress-operator/blob/master/pkg/apis/k8s/v1alpha1/nginxingresscontroller_types.go and regenerate CRDs - for consistency.
README.md
Outdated
@@ -23,6 +23,7 @@ Note: The NGINX Ingress Operator works only for NGINX Ingress Controller version | |||
## Getting Started | |||
|
|||
1. Install the NGINX Ingress Operator. See [docs](./docs/installation.md). | |||
<br> NOTE: To use TransportServers as part of your NGINX Ingress Controller configuration, a GlobalConfig resource must be created *before* starting the Operator - [see the notes](./examples/deployment-oss-min/README.md#TransportServers) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since TransportServers for TLS passthrough do not require a GlobalConfiguration resource, better to explicitly state that those are for TCP/UDP.
Also, better to move this note below, because GlobalConfiguration belongs to NGINX Ingress Controller installation, not operator installation:
- Deploy a new NGINX Ingress Controller using the NginxIngressController Custom Resource:
- NOTE: ...
- For an NGINX installation see the NGINX example.
- For an NGINX Plus installation see the NGINX Plus example.
<br> NOTE: To use TransportServers as part of your NGINX Ingress Controller configuration, a GlobalConfig resource must be created *before* starting the Operator - [see the notes](./examples/deployment-oss-min/README.md#TransportServers) | |
<br> NOTE: To use TransportServers as part of your NGINX Ingress Controller configuration for TCP/UDP load balancing, the GlobalConfiguration resource must be created *before* starting the Operator - [see the notes](./examples/deployment-oss-min/README.md#TransportServers) |
@@ -5,6 +5,7 @@ In this example we deploy the NGINX Ingress Controller (edge) as a [Deployment]( | |||
## Prerequisites | |||
|
|||
Have the NGINX Ingress Operator deployed in your cluster. Follow [installation](../../README.md#installation) steps. | |||
If you would like to use TransportServers, refer to [this section](README.md#TransportServers) for additional pre-requisites. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you would like to use TransportServers, refer to [this section](README.md#TransportServers) for additional pre-requisites. | |
If you would like to use TransportServers for TCP/UDP load balancing, refer to [this section](README.md#TransportServers) for additional pre-requisites. |
## TransportServers | ||
|
||
TransportServers provide support for TCP/UDP but are in active development and provided as a preview feature. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TransportServers provide support for TCP/UDP but are in active development and provided as a preview feature. | |
TransportServers provide support for TLS Passthrough and TCP/UDP load balancing. They are in active development and provided as a preview feature. |
|
||
TransportServers provide support for TCP/UDP but are in active development and provided as a preview feature. | ||
A GlobalConfig resource is used to specify the TCP/UDP listeners and is required by TransportServers. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A GlobalConfig resource is used to specify the TCP/UDP listeners and is required by TransportServers. | |
The [GlobalConfiguration](https://docs.nginx.com/nginx-ingress-controller/configuration/global-configuration/configmap-resource/) resource specifies the TCP/UDP listeners and is required by TransportServers for TCP/UDP load balancing. |
TransportServers provide support for TCP/UDP but are in active development and provided as a preview feature. | ||
A GlobalConfig resource is used to specify the TCP/UDP listeners and is required by TransportServers. | ||
To use TransportServers, you must create a GlobalConfig resource *after* creating the namespace and *before* starting the Operator. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To use TransportServers, you must create a GlobalConfig resource *after* creating the namespace and *before* starting the Operator. | |
To use TransportServers, you must create the GlobalConfiguration resource *after* creating the namespace and *before* starting the Operator. |
``` | ||
|
||
Then update the NginxIngressController to use the global configuration by adding the following config to `nginx-ingress-controller.yaml` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Then update the NginxIngressController to use the global configuration by adding the following config to `nginx-ingress-controller.yaml` | |
Then update the NginxIngressController to use the GlobalConfiguration by adding the following config to `nginx-ingress-controller.yaml` |
6f9f97b
to
76f67c7
Compare
Proposed changes
Add additional documentation for GlobalConfig as a TransportServer pre-requisite.
Checklist
Before creating a PR, run through this checklist and mark each as complete.