Chuyển tới nội dung chính

Loại dịch vụ: Load Balancer

Sản phẩm Managed GPU Cluster được phát triển từ Kubernetes Native và tích hợp thêm nhiều thành phần cloud provider vào Kubernetes như FPT Cloud ControllerManager. Thành phần này nhằm mục đích quản lý các worker node trong cluster và dịch vụ load balancer. Bạn có thể expose ứng dụng ra internet để người dùng truy cập, bao gồm nhiều phương thức khác nhau như tạo ingress cho dịch vụ, tạo dịch vụ dạng NodePort, gắn floating IP vào worker node, hoặc sử dụng dịch vụ load balancer.

FPT Cloud hỗ trợ tạo dịch vụ load balancer với các tùy chọn sau:

KeyValueDefaultMục đích
service.beta.kubernetes.io/fpt-load-balancer-internal"true"/"false""false"Đặt "true" nếu bạn không muốn expose dịch vụ ra internet
loadbalancer.fptcloud.com/keep-floatingip"true"/"false""false"Đặt "true" nếu bạn muốn giữ lại floating IP trong VPC sau khi xóa dịch vụ LoadBalancer
loadbalancer.fptcloud.com/proxy-protocol"true"/"false""false"Đặt "true" nếu bạn muốn sử dụng proxy protocol cho LoadBalancer. Lưu ý: proxy protocol chỉ dùng được với LoadBalancer layer 4.
loadbalancer.fptcloud.com/enable-health-monitor"true"/"false""true"Đặt "false" nếu bạn muốn tắt health monitor của LoadBalancer pool.
service.beta.kubernetes.io/fpt-load-balancer-typeLBv1: basic/ advanced/ standard/ premium. LBv2: Basic-1/ Basic-2/ Standard/ Advanced/PremiumLbv1: "basic", LBv2: "Basic-1"Thiết lập flavor cho LoadBalancer để đáp ứng tải của ứng dụng phía sau backend của LoadBalancer pool.
loadbalancer.fptcloud.com/enable-ingress-hostname"true"/"false""false"Đặt "true" nếu bạn muốn bật ingress hostname cho dịch vụ LoadBalancer.
loadbalancer.fptcloud.com/load-balancer-version"v1"/"v2""v1"Đặt giá trị "v2" nếu bạn muốn dùng LBv2 cho loại dịch vụ LoadBalancer. Nếu không thiết lập annotation này, mặc định sẽ dùng LBv1.
loadbalancer.fptcloud.com/x-forwarded-for"true"/"false""false"Đặt "true" nếu bạn muốn forward header của request tới backend của LoadBalancer pool khi dùng LoadBalancer layer 7. Lưu ý: proxy protocol và x-forwarded-for không thể dùng đồng thời.

Ngoài ra, Managed GPU Cluster còn cho phép bạn thực hiện các cấu hình sau:

1. Tạo dịch vụ loại LoadBalancer với floating IP chỉ định để gắn vào load balancer

kind: Service
apiVersion: v1
metadata:
name: hello-world
namespace: example
spec:
type: LoadBalancer
loadBalancerIP: 103.160.90.207
selector:
app: hello-world
ports:
- name: http
protocol: TCP
port: 443
targetPort: web

Lưu ý: Public IP phải được gán vào VPC và ở trạng thái không hoạt động. Bạn có thể kiểm tra tại Networking -> Floating IPs.

2. Cấu hình "loadBalancerSourceRanges" trong "spec" của dịch vụ để giới hạn quyền truy cập vào load balancer:

kind: Service
apiVersion: v1
metadata:
name: hello-world
namespace: example1
spec:
loadBalancerSourceRanges:
- 14.233.234.0/24
- 10.250.0.0/24
type: LoadBalancer
selector:
app: hello-world
ports:
- name: http
protocol: TCP
port: 80
targetPort: web

Lưu ý: Cấu hình "loadBalancerSourceRanges" chứa mảng các dải public IP được phép truy cập vào load balancer. Mặc định, M-FKE tạo dịch vụ loại load balancer với IP source range 0.0.0.0/0.