Deploy an Internal Load Balancer
Table of Contents
Links
🌙 Lab
🗒 Tutorial
Details
Oracle Cloud Native Environment is a fully integrated suite for developing and managing cloud native applications. The Kubernetes module is the core module. It deploys and manages containers and automatically installs and configures CRI-O and RunC. CRI-O manages the container runtime for a Kubernetes cluster, which defaults to RunC.
Objectives
At the end of this tutorial, you should be able to do the following:
- Configure the Kubernetes cluster with an internal load balancer to enable high availability
- Configure Oracle Cloud Native Environment on a 5-node cluster
- Verify keepalived failover between the control plane nodes completes successfully
Support Note: Using the internal load balancer is NOT recommended for production deployments. Instead, please use a correctly configured (external) load balancer.
Support Note: We recommend using an external load balancer such as Oracle Cloud Infrastructure Load Balancer for production deployments.
Prerequisites
The tutorial uses the following host systems:
6 Oracle Linux instances for Oracle Cloud Native Environment:
- Operator node (ocne-operator)
- 3 Kubernetes control plane nodes (ocne-control-01, ocne-control-02, ocne-control-03)
- 2 Kubernetes worker nodes (ocne-worker-01, ocne-worker-02)
An Oracle Linux system for installing kubectl (devops-node)
Note: We recommend that production environments have a cluster with at least five control plane nodes and three worker nodes.
A virtual IP address for the primary control plane node. Do not use this IP address on any of the nodes. The load balancer dynamically sets the IP address to the control plane node assigned as the primary controller.
Oracle Support Disclaimer: If you are deploying to Oracle Cloud Infrastructure, your tenancy requires enabling a new feature introduced in OCI: Layer 2 Networking for VLANs within your virtual cloud networks (VCNs). The OCI Layer 2 Networking feature is not generally available, although the free lab environment’s tenancy enables this feature. If you have a use case, please work with your technical team to get your tenancy listed to use this feature.
- Configure each system with the following:
- The latest Oracle Linux with the Unbreakable Enterprise Kernel Release 7 (UEK R7)
- An
oracle
user account withsudo
access - Key-based SSH, also known as passwordless SSH, between the instances
- Install Oracle Cloud Native Environment ready for creating the environment and installing modules
- Create a VLAN and assign IPv4 addresses