Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: ✔️ AKS Automatic AKS Standard ✔️
Rozpoznawanie systemu nazw domen (DNS) jest krytycznym składnikiem w usłudze Azure Kubernetes Service (AKS), umożliwiając zasobnikom i usługom komunikowanie się przy użyciu nazw czytelnych dla człowieka zamiast adresów IP. Usługa AKS udostępnia wbudowane usługi DNS, aby zapewnić bezproblemowe rozpoznawanie nazw dla zasobów klastra wewnętrznego i zewnętrznych punktów końcowych. Zrozumienie sposobu działania systemu DNS w usłudze AKS pomaga operatorom klastra i deweloperom zapewnić niezawodną łączność, zoptymalizować wydajność i skutecznie rozwiązywać problemy z siecią.
AKS Automatic to zalecany, domyślny wybór gotowy do wdrożeń produkcyjnych dla większości obciążeń AKS. Klastry automatyczne AKS są wstępnie skonfigurowane z funkcją LocalDNS w celu poprawy wydajności DNS, zmniejszenia obciążenia mechanizmu conntrack i zwiększenia odporności bez konieczności dodatkowej konfiguracji.
W usłudze AKS Standard usługa LocalDNS jest opcjonalna i można ją włączyć i skonfigurować oddzielnie.
Aby uzyskać więcej informacji o usłudze AKS Automatic, zobacz Czym jest usługa AKS Automatic?
CoreDNS w usłudze Azure Kubernetes Service
CoreDNS to domyślna usługa DNS w usłudze AKS. Zapewnia wewnętrzne rozpoznawanie nazw i odnajdywanie usług dla obciążeń uruchomionych w klastrze. Działa jako zestaw zasobników w przestrzeni nazw kube-system i jest ściśle zintegrowany z siecią Kubernetes.
Gdy zasobnik w usłudze AKS wystawia zapytanie DNS, takie jak rozpoznawanie nazwy innej usługi, żądanie przechodzi do zasobników CoreDNS. Te zasobniki przetwarzają zapytanie i zwracają odpowiedni adres IP lub przesyłają żądanie do nadrzędnego serwera DNS dla domen zewnętrznych.
Ta architektura zapewnia równowagę między elastycznością a bezpieczeństwem operacyjnym w środowisku zarządzanym. Aby uzyskać szczegółowe informacje na temat dostosowywania usługi CoreDNS w usłudze AKS, zapoznaj się z przewodnikiem dostosowywania coreDNS.
Aby uzyskać informacje na temat projektu CoreDNS, zobacz stronę projektu nadrzędnego CoreDNS.
LocalDNS w usłudze Azure Kubernetes Service
Uwaga / Notatka
Ten artykuł zawiera omówienie funkcji LocalDNS i jej zalet w usłudze AKS.
W przypadku usługi AKS Automatic lokalna sieciDNS jest wstępnie skonfigurowana.
W przypadku usługi AKS Standard informacje o tym, jak włączyć i skonfigurować LocalDNS, można znaleźć w przewodniku z instrukcjami dotyczącymi LocalDNS.
Przegląd
LocalDNS to zaawansowana funkcja w usłudze Azure Kubernetes Service (AKS), która wdraża serwer proxy systemu nazw domen (DNS) na każdym węźle w celu zapewnienia wysoce odpornego, niskiego opóźnienia w rozpoznawaniu nazw DNS. Dzięki obsłudze zapytań DNS lokalnie ten serwer proxy zmniejsza ruch do zasobników dodatków CoreDNS, zwiększając ogólną niezawodność i wydajność DNS w klastrze. LocalDNS jest szczególnie korzystne w dużych klastrach lub środowiskach z dużymi ilościami zapytań DNS, w sytuacji, gdy scentralizowane rozwiązywanie DNS może stać się wąskim gardłem.
Gdy LocalDNS jest włączony, AKS wdraża jako usługę systemd lokalną pamięć podręczną DNS na każdym węźle. Zasobniki na węźle wysyłają zapytania DNS do tej lokalnej pamięci podręcznej, co umożliwia szybsze rozwiązywanie poprzez zmniejszenie liczby przeskoków sieciowych. Takie podejście minimalizuje conntrack również użycie tabel, obniżając ryzyko wyczerpania tabel. Ponadto, jeśli nadrzędny DNS stanie się niedostępny, LocalDNS może nadal dostarczać buforowane odpowiedzi przez określony czas, co pomaga zachować łączność podu i niezawodność usługi.
LocalDNS i AKS Automatic
AKS Automatic wstępnie konfiguruje usługę LocalDNS w ramach domyślnych ustawień gotowych do użycia w środowisku produkcyjnym. Nie musisz uruchamiać osobnego polecenia włączającego w klastrach AKS Automatic.
Z tego artykułu dowiesz się, jak działa usługa LocalDNS i dlaczego poprawia działanie DNS dla obciążeń AKS. Jeśli potrzebujesz kroków włączania i konfiguracji usługi AKS Standard, skorzystaj z przewodnika z instrukcjami localDNS.
Kluczowe możliwości
-
Mniejsze opóźnienie rozpoznawania nazw DNS: każdy węzeł usługi AKS uruchamia usługę LocalDNS
systemd. Obciążenia uruchomione w węźle wysyłają zapytania DNS do tej usługi, co rozwiązuje je lokalnie, zmniejszając przeskoki sieciowe i przyspieszając wyszukiwanie DNS. -
Dostosowywalne zachowanie DNS: użyj polecenia
kubeDNSOverridesivnetDNSOverrides, aby kontrolować zachowanie DNS w klastrze. -
Unikaj wyścigów conntrack i wyczerpania tabeli conntrack: zasobniki wysyłają zapytania DNS do usługi LocalDNS w tym samym węźle bez tworzenia nowych
conntrackwpisów tabeli. Pominięcie śledzenia połączeń pomaga zmniejszyć konflikty w systemie conntrack i zapobiega zapełnianiu tabel wpisami DNS protokołu UDP (User Datagram Protocol). Ta optymalizacja zapobiega zarzuconym i odrzucanym połączeniom spowodowanym wyczerpaniemconntracktabeli i warunkami wyścigu. -
Połączenie uaktualnione do protokołu TCP: połączenie z
localdnspamięci podręcznej do usługi CoreDNS klastra korzysta z protokołu TCP (Transmission Control Protocol). Protokół TCP umożliwia ponowne równoważenie połączenia i usuwaconntrackwpisy tabeli, gdy serwer zamyka połączenie (w przeciwieństwie do połączeń UDP, które mają domyślny limit czasu 30 sekund). Aplikacje nie wymagają zmian, ponieważlocaldnsusługa nadal nasłuchuje ruchu UDP. -
Buforowanie: Możesz skonfigurować wtyczkę pamięci podręcznej LocalDNS przy użyciu
serveStalei ustawień czasu życia (TTL). Ustaw parametryserveStale,serveStaleDurationInSecondsicacheDurationInSeconds, aby zapewnić odporność DNS, nawet podczas awarii nadrzędnego serwera DNS. -
Kontrola protokołu: ustaw protokół zapytania DNS (np
PreferUDP. lubForceTCP) dla każdej domeny. Ta elastyczność umożliwia optymalizację ruchu DNS dla określonych domen lub spełnienie wymagań sieciowych.
Inne korzyści i zagadnienia
| Korzyści | Rozważania |
|---|---|
| Lepsza skalowalność: zmniejsza obciążenie scentralizowanych zasobników CoreDNS | Minimalne obciążenie zasobów: wykorzystuje niewielką ilość CPU i pamięci w każdym węźle |
| Bezproblemowa integracja: nie wymaga zmian istniejących połączeń aplikacji | Zmiany konfiguracji: Aktualizacje wymagają uaktualnień obrazu węzła, co może powodować tymczasowe zakłócenia |
| Blokuj nieprawidłowe domeny wyszukiwania: uniemożliwia nieprawidłowe zapytania DNS na poziomie węzła | Planowanie dostępności: zespoły korzystające z usługi AKS Standard powinny ocenić, czy wydajność i odporność DNS uzasadniają włączenie lokalnej sieciDNS |
Działanie AKS Automatic i AKS Standard
| Tryb klastra | Zachowanie lokalnych sieciDNS |
|---|---|
| Automatyczne usługi AKS | Wstępnie skonfigurowane |
| AKS Standard | Optional |
Dzięki użyciu LocalDNS uzyskując szybsze i bardziej niezawodne rozwiązanie DNS dla obciążeń, można zmniejszyć ryzyko awarii związanych z systemem DNS i uzyskać większą kontrolę nad ruchem DNS w środowisku usługi AKS.
Treści powiązane
- Aby dowiedzieć się więcej o usłudze AKS Automatic, zobacz Co to jest Azure Kubernetes Service (AKS) Automatic?
- Aby dowiedzieć się, jak utworzyć klaster automatyczny usługi AKS, zobacz Szybki start: tworzenie klastra automatycznego usługi AKS.
- Aby dowiedzieć się, jak włączyć usługę LocalDNS i skonfigurować jej ustawienia w klastrze usługi AKS, zobacz Przewodnik z instrukcjami localDNS.
- Aby dowiedzieć się więcej na temat podstawowych pojęć dotyczących sieci, zobacz Pojęcia dotyczące sieci dla aplikacji w usłudze AKS.