Planowanie sieci aplikacji dla usługi Azure Kubernetes Service (AKS)

W tym artykule przedstawiono opcje sieci aplikacji dla usługi Azure Kubernetes Service (AKS). Najpierw zadajemy pytanie, które pomogą Ci w planowaniu, a następnie udostępnimy opcje, zalecenia i najlepsze rozwiązania.

Jak chcesz uzyskać dostęp do aplikacji?

Sieć aplikacji steruje sposobem, w jaki aplikacje uruchomione w zasobnikach Kubernetes są widoczne dla klientów spoza klastra.

Opcje sieci aplikacji

Podczas konfigurowania sieci aplikacji można wybrać między usługą Load Balancer z równoważeniem obciążenia warstwy 4 lub kontrolerami ruchu przychodzącego z równoważeniem obciążenia warstwy 7:

Opcja sieci aplikacji Funkcje i funkcjonalność
Usługa modułu równoważenia obciążenia • Używa usługi Kubernetes LoadBalancer Service do bezpośredniego uwidaczniania aplikacji na publicznym lub prywatnym adresie IP.
• Obsługuje wiele portów i dowolny ruch TCP lub UDP.
• Wymaga co najmniej jednej unikatowej pary IP:port na aplikację.
Kontrolery ruchu przychodzącego • Uwidacznia aplikację za zwrotnym serwerem proxy warstwy 7.
• Możliwość użycia tylko dla ruchu podobnego do protokołu HTTP (HTTP, HTTPS, gRPC).
• Może współużytkować jeden publiczny adres IP i porty dla wszystkich definicji ruchu przychodzącego na tym samym kontrolerze ruchu przychodzącego.
• Opcje zarządzanego ruchu przychodzącego obejmują: Zarządzany ruch przychodzący-nginx za pośrednictwem dodatku routingu aplikacji, usługi Azure Application Gateway for Containers (zalecane) i bramy ruchu przychodzącego Istio.

Rekomendacje

W przypadku ruchu innego niż HTTP zalecamy użycie usługi Load Balancer z równoważeniem obciążenia w warstwie 4. Takie podejście zapewnia bezpośredni dostęp do aplikacji i obsługuje szeroką gamę protokołów. W przypadku ruchu HTTP-podobnego zalecamy używanie kontrolerów Ingress z równoważeniem obciążenia warstwy 7. Takie podejście umożliwia korzystanie z zaawansowanych funkcji routingu i udostępnianie jednego publicznego adresu IP dla wielu aplikacji.