This section provides information about how to install and configure Apache webtier to load balance Oracle WebCenter Content domain clusters. You can configure Apache webtier for non-SSL and SSL termination access of the application URL.
Follow these steps to set up Apache webtier as a load balancer for an Oracle WebCenter Content domain in a Kubernetes cluster:
Refer to the sample, to build the Apache webtier Docker image.
custom_mod_wl_apache.conf
should have all the URL routing rules for the Oracle WebCenter Content application deployed in the domain that needs to be accessible externally. Update this file with values based on your environment. The file content is similar to below mentioned sample.persistentVolumeClaimName
with your PV-claim-name which contains your custom_mod_wl_apache.conf
in file kubernetes/samples/charts/apache-samples/custom-sample/input.yaml
.(For the SSL termination configuration only) Run the following commands to generate your own certificate and private key using openssl
.
$ cd ${WORKDIR}/weblogic-kubernetes-operator
$ cd kubernetes/samples/charts/apache-samples/custom-sample
$ export VIRTUAL_HOST_NAME=WEBLOGIC_HOST
$ export SSL_CERT_FILE=WEBLOGIC_HOST.crt
$ export SSL_CERT_KEY_FILE=WEBLOGIC_HOST.key
$ sh certgen.sh
NOTE: Replace WEBLOGIC_HOST with the host name on which Apache webtier is to be installed.
Prepare input values for the Apache webtier Helm chart.
Run the following commands to prepare the input value file for the Apache webtier Helm chart.
$ base64 -i ${SSL_CERT_FILE} | tr -d '\n'
$ base64 -i ${SSL_CERT_KEY_FILE} | tr -d '\n'
$ touch input.yaml
Update virtualHostName
with the value of the WEBLOGIC_HOST
in file kubernetes/samples/charts/apache-samples/custom-sample/input.yaml
Install the Apache webtier Helm chart to the domain wccns
namespace with the specified input parameters:
$ cd ${WORKDIR}/weblogic-kubernetes-operator/kubernetes/samples/charts
$ kubectl create namespace apache-webtier
$ helm install apache-webtier --values apache-samples/custom-sample/input.yaml --namespace wccns apache-webtier --set image=oracle/apache:12.2.1.3
Check the status of the Apache webtier:
$ kubectl get all -n wccns | grep apache
Sample output of the status of the apache webtier:
pod/apache-webtier-new-apache-webtier-65d8d7c59f-k27wf 1/1 Running 0 9d
service/apache-webtier-new-apache-webtier NodePort 10.108.12.143 <none> 80:30505/TCP,4433:30453/TCP 9d
deployment.apps/apache-webtier-new-apache-webtier 1/1 1 1 9d
replicaset.apps/apache-webtier-new-apache-webtier-65d8d7c59f 1 1 1 9d
Post the Apache webtier load balancer is up, verify that the domain applications are accessible through the load balancer port 30505/30453
. The application URLs for domain of type wcc
are:
Note: Port
30505
is the LOADBALANCER-Non-SSLPORT and Port30453
is LOADBALANCER-SSLPORT.
http://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-Non-SSLPORT}/weblogic/ready
http://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-Non-SSLPORT}/console
http://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-Non-SSLPORT}/em
http://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-Non-SSLPORT}/cs
http://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-Non-SSLPORT}/ibr
https://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-SSLPORT}/weblogic/ready
https://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-SSLPORT}/console
https://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-SSLPORT}/em
https://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-SSLPORT}/cs
https://${LOADBALANCER-HOSTNAME}:${LOADBALANCER-SSLPORT}/ibr
$ helm delete apache-webtier -n wccns