[MUSIC] When you look at the OCI load balancer service, we have various parts within that which we will be discussing, understand the fundamental concepts and features of load balancer, understand the idea about policies and health checks that it provides and Routing and SSL handling features that the load balancer provides in OCI. In this video lecture, let's look at the fundamental concepts and features of the OCI load balancer feature. So, the load balancer gives you the ability to provide clients who might be accessing an application, the ability to access it using a load balancer, so that you take care of high availability of your application. Any compute instance that fails which has the application is tolerant in terms of from an application perspective, such that the load balancer will route further requests to any of the surviving or available nodes. Further, when you look at the load balancer, when you configure the load balancer you will specify the port in which the application is installed so that it will route the request to that The load balancer also has a health check service wherein it will keep pulling the port in which the application is available. And in case of any problems with any of the nodes, it will ensure it doesn't forward requests from the clients to that particular node, which gives you the ability to take care of high availability of the application. And the algorithms that are supported for load balancing is about how you want the load balancer to distribute client requests to the backend sets. You fundamentally have three types of load balancing wherein you could use a weighted Round Robin. Or you could use a least connected or least loaded node to be given. Or you can use a hashing based on the source from where the requests are coming so that all requests from a particular source are routed. This is not session persistence session persistence is different. We will look at that later. Thus, with the help of OCI load balancer, you get the ability to have a fault tolerant, highly available, application within a region, you can scale up and scale down. The application by having more nodes or less nodes in the backend set, and have the ability to not worry about different different names to be having different different load balancers. Because the single load balancer can actually front end, multiple applications and we will see that as we go into further videos. So the load balancing service from OCI gives you both the option of a public load balancer or a private load balancer as a regional service. How do we provisioned the load balancer?. Go to the OCI console, choose the networking service and go to load balancers. And you have the ability to provision a load balancer. There are two types of load balancers that are available today. One is the generic load balancer, which was available earlier, which is a layer seven SSL sedimentation included service, which is available, and you also have a network load balancer which works on layer four, which gives you the ability to not only use TCP traffic, but also UDP traffic, wherein it can be a more powerful performance wise better off option. So when you use a load balancer which is a network load balancer, at the end you have the ability to use UDP or TCP, if it is a network load balancer. On the other hand, if you choose the standard layer seven load balancer, you get only TCP protocol, which could be for HTTP or HTTPS, or HTTP/2 or any other port on TCP. Given that we provision a load balancer from this page, you can choose to have a load balancer with a public IP. We can have an ephemeral IP provided by Oracle or you can make a reservation for public IP and use that. So that that IP is always with you and you can move the public IP to any other resource or another load balancer within the same region, or you can provision a load balancer which is private. When it is private, it is having a private IP from the VCN subnet in which you provision it. Considering a public load balancer, you have these two choices of public IPs. And we already saw that the load balancer supports various port protocol combinations. You have the ability to use SSL in three ways, terminate SSL at the load balancer level or enable the load balancer to communicate with the back end servers with encrypted traffic or implement End to-End SSL. Wherein both client side to load balancer and load balancing the back end is encrypted. We will see that later when as to how do you provision it. It also supports features of session persistence and routing which we will see. In another video, and both private and public load balancers are available, you have the ability to choose the shape. The shape determines the total aggregated bandwidth that the load balancer will handle, which includes both incoming traffic from all clients as well as the response traffic from your back end servers. You have the ability to choose a flexible shape where you can choose a minimum bandwidth and maximum bandwidth of your choice or dynamic shapes which comes with a fixed size. And later on you can increase or decrease the shape to get a specification of the aggregated bandwidth that you need so that you pay for what you use. As I showed you earlier, you have both layer four and layer seven load balancers available. Layer seven is only for HTTP traffic or HTTPS traffic. Whereas layer four can be used for UDP also from a conceptual standpoint, within OCI, we have multiple things to consider. All of them are listed here. So you have a VCN implemented in a region. And if your region has multiple availability domains, you create a load balancer. And as a result of that, it creates fundamentally two load balancer hosts. As a tenant or customer, you don't have control on which load balancer host is active, that is managed as a service, it chooses one of them to be active. And internally it maintains a passive load balancer in another availability domain. If you are working in a region which is having only a single ad, then both the load balancers active and passive are within the same availability domain, but they will be in two different fault domains. As such, when you have a load balancer being provisioned, you identify the list of computers which have the application they are called as backend servers and group them into a back end set. And the recommended practice is to use regional subnets, so that IP failover are possible. And you choose the load balancing policy to decide how you want to distribute the load which is either a weighted round robin or Which is available here. If I go to the next page, you choose the type of load balancing policy you want to use round robin between the nodes with a weight given explicitly you can add the weight after you provision the load balancer, IP hashing meaning based on the source from where client requests are coming, all the requests from there will go to the same back end server or Send request to the least loaded node. And this is where you can add the backend servers to a load balancer. Thus, you have the load balancing policies, you add the backend servers which have the actual application running. The load balancer comes with a health check that is built in Which you configure when you add the backends you specify the health check policy to decide on what protocol or what port, the load balancer will check the health of the back end servers. There is a default interval in which it is going to capture and if you want, you can customize that by specifying what is the frequency in which the health checks have to happen. And the backend set is the logical collection of back end servers which are Having the health checks running by the load balancer you can add nodes later or remove nodes depending on your need, which you can do once the load balancer is provisioned. And as part of the load balancer you have a listener, which you provision on the last screen. The listener is the component of the load balancer which listens for incoming requests From clients, you can choose to use HTTPS, in which case you will have to upload your certificate or HTTP to also supports SSL, or TCP any other port. If you want, you can enable SSL. You can have multiple listeners with the same Load Balancer we will see when and how it is put in of use. And, as I showed you earlier, when you provision a load balancer, you have the ability to choose flexible shapes which is you can choose the. Type as flexible shape and choose the minimum and maximum bandwidth that should be available based on the service that is available at any given time as to how OCM makes it available. It tells you the maximum limit is 1000 Mbps, if you want to have more in your flexible load balancer, you can make a service request to increase your service limits. But if you choose a dynamic shape, a fixed shape based on the choice of load balancer is given, which gives you the total aggregated bandwidth. Whereas in a flexible shape, you can choose minimum and maximum in a range and you pay for what you use. So you can adjust the bandwidth to a shape of your requirement and thereby your load balancer's network traffic is identified. This is how you go about implementing a load balancer. In the next few videos, we will see some more specific features which come in play when you use the load balancer service within OCI.