Ingress: Đối tượng Ingress + Bộ điều khiển Ingress
Đối tượng xâm nhập:
Giống như Đối tượng dịch vụ, ngoại trừ nó không tự làm bất cứ điều gì. Đối tượng Ingress chỉ mô tả một cách để định tuyến lưu lượng Lớp 7 vào cụm của bạn, bằng cách chỉ định những thứ như đường dẫn yêu cầu, miền yêu cầu và dịch vụ kubernetes đích, trong khi đối tượng dịch vụ thực sự tạo ra các dịch vụ
Bộ điều khiển Ingress:
Một dịch vụ:
1. listens on specific ports (usually 80 and 443) for web traffic
2. Listens for the creation, modification, or deletion of Ingress Objects
3. Creates internal L7 routing rules based on these Ingress Objects
Ví dụ: Bộ điều khiển Ingress Nginx, có thể sử dụng một dịch vụ để nghe trên cổng 80 và 443 và sau đó đọc Đối tượng Ingress mới và phân tích chúng vào các phần máy chủ mới {} mà nó tự động đặt vào đó là nginx.conf
LoadBalancer: Nhà cung cấp cân bằng tải bên ngoài + Loại dịch vụ
Nhà cung cấp cân bằng tải bên ngoài:
Các nhà cung cấp cân bằng tải bên ngoài thường được cấu hình trong các đám mây như AWS và GKE và cung cấp một cách để gán IP bên ngoài thông qua việc tạo các bộ cân bằng tải bên ngoài. Chức năng này có thể được sử dụng bằng cách chỉ định một dịch vụ dưới dạng "LoadBalancer".
Loại dịch vụ:
Khi loại dịch vụ được đặt thành LoadBalancer, Kubernetes cố gắng tạo và sau đó lập trình một bộ cân bằng tải bên ngoài với các mục cho các nhóm Kubernetes, từ đó gán cho chúng các IP bên ngoài.
Bộ điều khiển dịch vụ Kubernetes tự động hóa việc tạo bộ cân bằng tải bên ngoài, kiểm tra sức khỏe (nếu cần), quy tắc tường lửa (nếu cần) và truy xuất IP bên ngoài của LoadBalancer mới được tạo hoặc được cấu hình được cung cấp bởi nhà cung cấp đám mây và đưa nó vào đối tượng phục vụ.
Các mối quan hệ:
Dịch vụ điều khiển Ingress thường được cung cấp dưới dạng LoadBalancer, do đó các yêu cầu http và https có thể được ủy quyền / định tuyến đến các dịch vụ nội bộ cụ thể thông qua một ip bên ngoài.
Tuy nhiên, LoadBalancer không thực sự cần thiết cho việc này. Vì, thông qua việc sử dụng hostNetwork hoặc hostPort, về mặt kỹ thuật, bạn có thể liên kết một cổng trên máy chủ với một dịch vụ (cho phép bạn truy cập nó thông qua ip: port bên ngoài của máy chủ). Mặc dù chính thức nhưng điều này không được khuyến khích vì nó sử dụng hết các cổng trên nút thực tế.
Người giới thiệu:
https://kubernetes.io/docs/con accept / configuration / view / # service
https://kubernetes.io/docs/t Nhiệm/access-application-cluster/create-external-load-balancer/
https://kubernetes.io/docs/t Nhiệm/access-application-cluster/create-external-load-balancer/#external-load-balancer-providers
https://kubernetes.io/docs/con accept / service-network / forum /