# Load Balancer

&#x20;Managed FKE products are developed from Kubernetes Native and integrated with Kubernetes as cloud provider components, including the FPT Cloud Controller Manager component. This component manages worker nodes and load balancer-type services within the cluster. Users have several methods available to expose their applications to the internet and enable their customers to access the applications or services. These methods include creating an ingress to the service, creating a NodePort-type service and assigning a floating IP to a VM worker node, or using a load balancer-type service.

&#x20;FPTCloud supports creating load balancer-type services and automatically assigning a public IP address to that load balancer. When using a load balancer-type service, in addition to creating the default load balancer for worker nodes, you can add optional configurations to the load balancer using annotations within the service manifest file.

&#x20;

<table data-header-hidden><thead><tr><th valign="top"></th><th valign="top"></th><th valign="top"></th><th valign="top"></th></tr></thead><tbody><tr><td valign="top"> Key</td><td valign="top"> Value</td><td valign="top"> Default</td><td valign="top"> Meaning</td></tr><tr><td valign="top"> service.beta.kubernetes.io/fpt-load-balancer-internal</td><td valign="top"> true/false</td><td valign="top"> false</td><td valign="top"> Whether the service is exposed to the internet. If not exposed, no floating IP connecting to the load balancer will be created.</td></tr><tr><td valign="top"> loadbalancer.fptcloud.com/enable-ingress-hostname</td><td valign="top"> true/false</td><td valign="top"> false</td><td valign="top"> Used in combination with the proxy protocol to enable connection to the ingress domain from within a Pod.</td></tr></tbody></table>

&#x20;Users can create load balancer-style services by adding annotations to the service configuration based on their use case.

&#x20;**Example:**

<figure><img src="/files/E36CDMfwJO3DGQfo8iz9" alt=""><figcaption></figcaption></figure>

&#x20;This diagram illustrates creating a load balancer-type service with the type set to advanced. Applying the manifest file to the service results in a load balancer-type service being obtained on the k8s cluster.

<figure><img src="/files/t9nq3e9GR4aoQZUDIl6J" alt=""><figcaption></figcaption></figure>

&#x20;The application becomes accessible from outside the internet via the ip public or a domain using that ip public once the external-ip component changes from pending to ip public.

<figure><img src="/files/1Zayela6GawvvwWeEhzC" alt=""><figcaption></figcaption></figure>

&#x20;Users can also create an internal-type load balancer service that cannot be accessed from outside the cluster, enabling calls only between internal services.

<figure><img src="/files/oAKL0gFVLAN0SsRVspmL" alt=""><figcaption></figcaption></figure>

&#x20;When an internal service is created, its \`external-ip\` will be a private IP address, not a public IP address.

<figure><img src="/files/KnaOVZqXHgpsAYAfdv2y" alt=""><figcaption></figcaption></figure>

&#x20;           Furthermore, M-FKE supports users as follows:

* Specify the \`loadBalancerIP\` setting in the \`spec\` section of the service configuration to create a service with a public IP address.<br>

<figure><img src="/files/jWCAkAQHC8dd6XcYulSS" alt=""><figcaption></figcaption></figure>

Note that the public IP must be assigned to a VPC and be **in an inactive state.** Users can verify this under **\[Networking] -> \[Floating Ips].**

* Use the \`loadBalancerSourceRanges\` setting in the \`spec\` section of the service configuration to restrict access to the load balancer.

<figure><img src="/files/msVw02KQukq3vGvPkiro" alt=""><figcaption></figcaption></figure>

&#x20;Note that the \`loadBalancerSourceRanges\` setting contains the range of public IP addresses permitted to access the load balancer (      ). By default, M-FKE creates a load balancer service type with an IP source range setting of 0.0.0.0/0.

* Additionally, if you wish to use the PROXY PROTOCOL in the Load Balancer Pool, please request support from FPTCloud.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ai-docs.fptcloud.com/fpt-gpu-cloud/gpu-cluster/managed-k8s-with-gpu-virtual-machine/tutorial/load-balancer.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
