Ingress NGINX is a controller for managing incoming traffic in Kubernetes. It serves as a single access point to all services in the cluster and allows you to configure traffic routing according to various rules.
The installation consists of three steps:
- Install the Helm chart and configuration file.
- Fill out the configuration file.
- Install the ingress-nginx chart using Helm in the Kubernetes cluster.
Step 1: Download the Helm chart and configuration file
To install via the internet, obtain the values-ingress-nginx.yaml
configuration file by executing the command:
helm repo add elma365 https://charts.elma365.tech
helm repo update
helm show values elma365/ingress-nginx > values-ingress-nginx.yaml
Obtaining the configuration file for installation in a closed loop without internet access
helm repo add elma365 https://charts.elma365.tech
tar -xf ingress-nginx-X.Y.Z.tgz |
Step 2: Fill out the configuration file
Fill out the values-ingress-nginx.yaml
configuration file for the Ingress NGINX installation:
## ingress-nginx settings
ingress-nginx:
controller:
# Permission to use annotations *-snippet
allowSnippetAnnotations: true
## Use DaemonSet or Deployment
kind: Deployment
## Nodes IP addresses on which the external controller service is available.
service:
externalIPs:
- 192.168.1.50
## selectors to run on specific nodes
tolerations: []
affinity: {}
nodeSelector:
kubernetes.io/os: linux
## metrics collection connection parameters
metrics:
enabled: false
serviceMonitor:
enabled: false
scrapeInterval: 30
## Additional annotations for admission webhooks. |
Step 3: Install the ingress-nginx chart using Helm in a Kubernetes cluster
Install the ingress-nginx chart in the ingress-nginx namespace
.
For online installation:
helm upgrade --install ingress-nginx elma365/ingress-nginx -f values-ingress-nginx.yaml -n ingress-nginx --create-namespace
For offline installation without internet access, navigate to the directory with the downloaded chart and execute the command:
helm upgrade --install ingress-nginx ./ingress-nginx -f values-ingress-nginx.yaml -n ingress-nginx --create-namespace