Deepfactor Portal Installation with Existing Ingress Controller

If you have an nginx ingress controller already deployed in your K8s cluster, you can reuse the same for directing traffic to Deepfactor portal services. The following describes how you can achieve this.

Ingress-nginx installed using yaml files

If you have installed or will install the NGINX Ingress Controller via yaml files, then you need to make the following changes.

Step 1: Create a config map with the below details

apiVersion: v1
data:
"13443": deepfactor/df-stable-nginx:13443
kind: ConfigMap
metadata:
name: ingress-nginx-tcp
namespace: ingress-nginx

deepfactor/df-stable-nginx:13443 is the K8s endpoint of nginx service used by Deepfactor.

Note: deepfactor is the namespace in which the Deepfactor is installed. If you installed Deepfactor in a different namespace, please update the endpoint above.

Step 2: Update the nginx deployment yaml file

Please add the following under container args in the nginx deployment file used for installing nginx in your K8s cluster.

--tcp-services-configmap=$(POD_NAMESPACE)/ingress-nginx-tcp

Also expose port 13443 by adding the following to podspec in the nginx deployment file.

- containerPort: 13443
 name: 13443-tcp
protocol: TCP

Step 3: Update the nginx ingress controller service yaml file

In the nginx ingress controller service yaml file, please add the below config to expose port 13443.

- name: 13443-tcp
nodePort: 31379
port: 13443
 protocol: TCP
targetPort: 13443-tcp
 

Ingress-nginx installed using Helm charts

If you have installed or will install the NGINX Ingress Controller via its Helm chart, then you will need to add the following option to the chart via override.yaml before running the helm install/upgrade command.

tcp:
13443: "deepfactor/df-stable-nginx:13443"

Update Deepfactor portal to use existing ingress controller

After you have installed nginx ingress controller with the above mentioned changes, you will need to update the Deepfactor override.yaml file to disable creation of internal ingress controller. Please add the following section to Deepfactor override.yaml file before running the helm install/upgrade command.

ingress-nginx:
enablemodule: false
nginx:
ingress:
  className: nginx

 

Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.