[docs] Documentation for Oracle Cloud Infrastructure integration

Added documentation and sample YAML that demonstrate how to use
NGINX Ingress Controller to provision a load balancer on Oracle Cloud
Infrastructure. The following use cases are included:

- public and private load balancers

Signed-off-by: Ali Mukadam <ali.mukadam@oracle.com>
This commit is contained in:
Ali Mukadam 2021-02-18 12:59:53 +11:00
parent 15ba4dee19
commit 5751ef5247
No known key found for this signature in database
GPG key ID: 3227B30481234173
2 changed files with 20 additions and 0 deletions

View file

@ -187,6 +187,17 @@ controller:
# Any other annotation can be declared here. # Any other annotation can be declared here.
``` ```
Example for Oracle Cloud Infrastructure:
```yaml
controller:
service:
annotations:
# Create internal LB
service.beta.kubernetes.io/oci-load-balancer-internal: "true"
# Any other annotation can be declared here.
```
An use case for this scenario is having a split-view DNS setup where the public zone CNAME records point to the external balancer URL while the private zone CNAME records point to the internal balancer URL. This way, you only need one ingress kubernetes object. An use case for this scenario is having a split-view DNS setup where the public zone CNAME records point to the external balancer URL while the private zone CNAME records point to the internal balancer URL. This way, you only need one ingress kubernetes object.
Optionally you can set `controller.service.loadBalancerIP` if you need a static IP for the resulting `LoadBalancer`. Optionally you can set `controller.service.loadBalancerIP` if you need a static IP for the resulting `LoadBalancer`.

View file

@ -38,6 +38,7 @@
- [Digital Ocean](#digital-ocean) - [Digital Ocean](#digital-ocean)
- [Scaleway](#scaleway) - [Scaleway](#scaleway)
- [Exoscale](#exoscale) - [Exoscale](#exoscale)
- [Oracle Cloud Infrastructure](#oracle-cloud-infrastructure)
- [Bare-metal](#bare-metal) - [Bare-metal](#bare-metal)
- [Verify installation](#verify-installation) - [Verify installation](#verify-installation)
- [Detect installed version](#detect-installed-version) - [Detect installed version](#detect-installed-version)
@ -170,6 +171,14 @@ kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/mast
The full list of annotations supported by Exoscale is available in the Exoscale Cloud Controller Manager [documentation](https://github.com/exoscale/exoscale-cloud-controller-manager/blob/master/docs/service-loadbalancer.md). The full list of annotations supported by Exoscale is available in the Exoscale Cloud Controller Manager [documentation](https://github.com/exoscale/exoscale-cloud-controller-manager/blob/master/docs/service-loadbalancer.md).
#### Oracle Cloud Infrastructure
```console
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.44.0/deploy/static/provider/cloud/deploy.yaml
```
A [complete list of available annotations for Oracle Cloud Infrastructure](https://github.com/oracle/oci-cloud-controller-manager/blob/master/docs/load-balancer-annotations.md) can be found in the [OCI Cloud Controller Manager](https://github.com/oracle/oci-cloud-controller-manager) documentation.
#### Bare-metal #### Bare-metal
Using [NodePort](https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport): Using [NodePort](https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport):