8.1.4 Installing the Traefik Controller
Follow these steps to set up Traefik as a load balancer for Oracle Access Management domain in a Kubernetes cluster:
Configuring an Ingress Controller with SSL
Use Helm to install Traefik.
- Create a $WORKDIR/kubernetes/helm/traefik-ingress-values-override.yaml that contains the following:
Note:
The configuration below deploys an ingress using LoadBalancer. If you prefer to use NodePort, change the configuration accordingly.
For more details about Traefik configuration see: Traefik Ingress Controller.
ingressRoute: dashboard: enabled: true providers: kubernetesCRD: enabled: true kubernetesIngress: enabled: true ports: traefik: port: 9000 exposedPort: 9000 protocol: TCP web: port: 8000 exposedPort: 30080 nodePort: 30080 protocol: TCP websecure: port: 8443 exposedPort: 30443 nodePort: 30443 protocol: TCP service: spec: type: LoadBalancer - To install and configure Traefik ingress issue the following command:
$ helm install traefik --namespace <namespace> \ --values traefik-ingress-values-override.yaml \ traefik/traefikWhere:traefikis your deployment nametraefik/traefikis the chart reference
For example:
$ helm install --namespace traefik \
--values traefik-ingress-values-override.yaml \
traefik traefik/traefikConfigure an Ingress Controller Without SSL
Use Helm to install Traefik.
- Create a $WORKDIR/kubernetes/kubernetes/charts/traefik/traefik-ingress-values-override.yaml that contains the following:
ingressRoute: dashboard: enabled: true providers: kubernetesCRD: enabled: true kubernetesIngress: enabled: true ports: traefik: port: 9000 exposedPort: 9000 protocol: TCP web: port: 8000 exposedPort: 30305 nodePort: 30305 protocol: TCP websecure: expose: default: false service: spec: type: LoadBalancer - To install and configure Traefik ingress, run the following command:
helm install traefik --namespace <namespace> \ --values traefik-ingress-values-override.yaml \ traefik/traefikWhere:- `<namespace>` is your namespace, for example `traefik`.
- `ports.web.exposedPort` is the HTTP port that you want the controller to listen on, for example `30305`.
- 'service.spec.type` is the controller type. If using NodePort set to `NodePort`.
traefikis your deployment nametraefik/traefikis the chart reference
For example:
$ helm install --namespace traefik \
--values traefik-ingress-values-override.yaml \
traefik traefik/traefik