Tất cả tài liệu

Managed – FPT Kubernetes Engine

    Service Type Load-Balancer
    Service Type Load-Balancer
    Updated on 26 Mar 2024

    Sản phẩm Managed FKE được phát triển từ Kubernetes Native và phát triển thêm các thành phần cloud provider tích hợp vào Kubernetes trong đó có thành phần FPT Cloud Controller Manager. Thành phần này nhằm mục đích quản lý các worker nodes trong cluster và các service dạng Load Balancer. Người dùng có thể có nhiều cách để expose một ứng dụng của mình ra bên ngoài internet để khách hàng của người dùng đó có thể truy cập vào ứng dụng, dịch vụ. Các cách đó có thể bao gồm việc tạo ingress cho service, hoặc tạo service dạng node port và gắn floating cho VM worker node, hoặc có thể sử dụng service dạng Load Balancer. 

    FPTCloud hỗ trợ người dùng tạo service dạng load balancer, tự động gán public IP cho load balancer đó. Khi sử dụng service dạng Load Balancer, ngoài việc tạo load balancer mặc định cho các worker node, người dùng có thể thêm cấu hình tùy chọn cho load balancer sử dụng annotations trong file manifest của service: 

    Key Value Default Ý nghĩa
    service.beta.kubernetes.io/fpt-load-balancer-internal  true/false false Service có muốn public ra ngoài internet hay không, nếu không, sẽ không tạo floating IP gắn vào load balancer. 
    loadbalancer.fptcloud.com/enable-ingress-hostname  true/false false Sử dụng kết hợp với proxy protocol để có thể kết nối ingress domain từ trong Pod. 

     Người dung có thể tạo service dạng load balancer khi thêm các annotation trong cấu hình service tùy vào mục đích sử dụng.

    Ví dụ:

    Userguide M FKE 39

    Hình này nhằm mục đích tạo một service dạng load balancer với type là advanced. Sau khi apply file manifest cho service, trên cụm k8s thu được một service dạng load balancer:

    Userguide M FKE 40

    Cho đến khi thành phần external-ip chuyển từ pending sang thành ip public, ứng dụng có thể được truy cập từ bên ngoài internet thông qua ip public đó, hoặc một domain dùng ip public đó.

    Userguide M FKE 41

    Người dùng cũng có thể tạo service load balancer dạng internal, không thể truy cập vào dịch vụ từ bên ngoài cluster, nhằm mục đích chỉ cho các service nội bộ gọi đến nhau:

    Userguide M FKE 42

    Khi service dạng internal được tạo ra, external-ip của service không còn là ip public mà là ip private:

    Userguide M FKE 43

    Ngoài ra, M-FKE còn hỗ trợ người dùng: 

    * Tạo service với IP public chỉ định với cấu hình “loadBalancerIP” trong phần “spec” của cấu hình service: 

    Lưu ý IP public cần được allocate vào VPC và ở trạng thái Inactive. Người dùng vào mục Networking -> Floating Ips để kiểm tra.

    * Giới hạn quyền truy cập vào Load Balancer bằng cấu hình “loadBalancerSourceRanges” trong phần “spec” của cấu hình service:

    Lưu ý cấu hình “loadBalancerSourceRanges” chứa mảng các dải IP public được phép truy cập vào Load Balancer. Mặc định M-FKE tạo service type Load Balancer với cấu hình dải IP source là 0.0.0.0/0.

    * Ngoài ra nếu người dùng muốn sử dụng PROXY PROTOCOL cho Load Balancer Pool, liên hệ FPTCloud để nhận hỗ trợ.