Create a Private Load Balancer for WebLogic Cluster Ingress

After provisioning the stack, you can create a WebLogic cluster ingress load balancer (an internal load balancer).

Note:

If you create a WebLogic cluster ingress load balancer using the steps in the following section, the private and public load balancers created during the Oracle WebLogic Server for OKE provisioning are deleted. So, you must change the URL that is used to access the WebLogic Server Administration Console and the Jenkins console to use the new private ingress load balancer.

To create a WebLogic cluster ingress load balancer:

  1. From your computer, create an SSH connection to the administration instance's IP address, and also specify the bastion instance's IP address as a proxy.

    Connect as the opc user.

    Provide the path to the private key that corresponds to the public key that you specified when you created the domain.

    The SSH command format is:

    ssh -i <path_to_private_key> -o ProxyCommand="ssh -W %h:%p –i <path_to_private_key> opc@<bastion_public_ip>" opc@<admin_ip>
  2. Uninstall the current ingress controller.
    helm uninstall ingress-controller
  3. Change to the /u01/scripts/ingress-controller/templates directory and open _nginx-load-balancer.tpl in text editor.
  4. In the external LB definition, after service.beta.kubernetes.io/oci-load-balancer-backend-protocol: "HTTP"", add the following line:
    service.beta.kubernetes.io/oci-load-balancer-internal: "true"
  5. Save and exit the text editor.
  6. Copy files to the tmp folder.
    cp /u01/provisioning-data/ingress-controller-input-values.yaml /tmp
  7. Verify if the existing load balancers are removed from the Oracle Cloud Infrastructure console.
  8. Install the ingress-controller again.
    /u01/scripts/bootstrap/install_ingress_controller.sh /tmp/ingress-controller-input-values.yaml
    

    This command creates two private load balancers, one for admin-ingress, which has a different IP address, and other for cluster-ingress. You can now access the applications deployed to the cluster only through HTTPS and an SSH tunnel through the bastion compute instance. See Access the WebLogic Console and Access the Jenkins Console.