First, install the operator.
Create a namespace for the operator.
$ kubectl create namespace sample-weblogic-operator-ns
Create a service account for the operator in the operator’s namespace.
$ kubectl create serviceaccount -n sample-weblogic-operator-ns sample-weblogic-operator-sa
Set up Helm with the location of the operator Helm chart using this format: helm repo add <helm-chart-repo-name> <helm-chart-repo-url>
$ helm repo add weblogic-operator https://oracle.github.io/weblogic-kubernetes-operator/charts --force-update
Install the operator using this format: helm install <helm-release-name> <helm-chart-repo-name>/weblogic-operator ...
$ helm install sample-weblogic-operator weblogic-operator/weblogic-operator \
--namespace sample-weblogic-operator-ns \
--set serviceAccount=sample-weblogic-operator-sa \
--wait
This Helm release deploys the operator with the default behavior of managing Domains in all Kubernetes namespaces with the label weblogic-operator=enabled
.
Verify that the operator’s pod is running by listing the pods in the operator’s namespace. You should see one for the operator and one for the conversion webhook, a singleton Deployment in your Kubernetes cluster that automatically and transparently upgrades domain resources.
$ kubectl get pods -n sample-weblogic-operator-ns
Verify that the operator is up and running by viewing the operator pod’s log.
$ kubectl logs -n sample-weblogic-operator-ns -c weblogic-operator deployments/weblogic-operator
Set up Helm with the location of the Traefik Helm chart using this format: helm repo add <helm-chart-repo-name> <helm-chart-repo-url>
$ helm repo add traefik https://helm.traefik.io/traefik --force-update
Create a namespace for the ingress controller.
$ kubectl create namespace traefik
Install Traefik using this format: helm install <helm-release-name> <helm-chart-repo-name>/traefik ...
$ helm install traefik-operator traefik/traefik \
--namespace traefik \
--set "ports.web.nodePort=30305" \
--set "ports.websecure.nodePort=30443" \
--set "kubernetes.namespaces={traefik}"
This deploys the Traefik controller with plain text node port 30305
, SSL node port 30443
, and kubernetes.namespaces
specifically set.