Informacje o siatkach usług

Siatka usług zapewnia możliwości, takie jak zarządzanie ruchem, odporność, zasady, zabezpieczenia, silna tożsamość i możliwość obserwacji obciążeń. Aplikacja jest oddzielona od tych możliwości operacyjnych, a siatka usług przenosi je poza warstwę aplikacji i do warstwy infrastruktury.

Scenariusze

Oto niektóre scenariusze, które można włączyć dla obciążeń w przypadku korzystania z siatki usług:

  • Szyfruj cały ruch w klastrze — włącz wzajemne szyfrowanie TLS między określonymi usługami w klastrze. Można ją rozszerzyć na ruch przychodzący i wychodzący w sieci obwodowej. Domyślnie zapewnia bezpieczną opcję bez żadnych zmian wymaganych dla kodu aplikacji i infrastruktury.

  • Canary and phased rollouts (Canary and phased rollouts) — określa warunki dla podzbioru ruchu, który ma być przekierowywał do zestawu nowych usług w klastrze. Po pomyślnym teście wydania canary usuń routing warunkowy i stopniowo zwiększaj procent całego ruchu do nowej usługi. Ostatecznie cały ruch zostanie skierowany do nowej usługi.

  • Zarządzanie ruchem i manipulowanie nimi — utwórz zasady dla usługi, które będą ograniczać cały ruch do wersji usługi z określonego źródła. Lub zasady, które stosuje strategię ponawiania do klas błędów między określonymi usługami. Dublowanie ruchu na żywo do nowych wersji usług podczas migracji lub w celu debugowania problemów. Wstrzyknąć błędy między usługami w środowisku testowym, aby przetestować odporność.

  • Wgląd — uzyskaj wgląd w sposób, w jaki usługi są połączone z ruchem, który przepływa między nimi. Uzyskaj metryki, dzienniki i ślady dla całego ruchu w klastrze oraz ruchu przychodzącym/wychodzącym. Dodawanie możliwości śledzenia rozproszonego do aplikacji.

Kryteria wyboru

Przed wybraniem siatki usług upewnij się, że rozumiesz wymagania i przyczyny instalowania siatki usług. Zadaj następujące pytania.

  • Czy kontroler ruchu wychodzącego jest wystarczający do moich potrzeb? — Czasami możliwość testowania a/b lub dzielenia ruchu na wejściu jest wystarczająca do obsługi wymaganego scenariusza. Nie zwiększaj złożoności środowiska bez żadnych utrudnień.

  • Czy moje obciążenia i środowisko tolerują dodatkowe obciążenia? — Wszystkie dodatkowe składniki wymagane do obsługi siatki usług wymagają dodatkowych zasobów, takich jak procesor i pamięć. Ponadto wszystkie proxy i skojarzone z nimi kontrole zasad dodają opóźnienie do ruchu. Jeśli masz obciążenia, które są bardzo wrażliwe na opóźnienia lub nie mogą zapewnić dodatkowych zasobów w celu pokrycia składników siatki usług, rozważ ponownie.

  • Czy to niepotrzebnie zwiększa złożoność? — Jeśli przyczyną instalowania siatki usług jest uzyskanie możliwości, która nie musi być krytyczna dla zespołów biznesowych lub operacyjnych, należy rozważyć, czy dodatkowa złożoność instalacji, konserwacji i konfiguracji jest tego warta.

  • Czy można to przyjąć w przypadku podejścia przyrostowego? — Niektóre siatki usług, które zapewniają wiele możliwości, można przyjąć w bardziej przyrostowej podejściu. Zainstaluj tylko składniki potrzebne do zapewnienia powodzenia. Gdy masz większą pewność i wymagane są dodatkowe możliwości, zapoznaj się z tymi możliwościami. Opór nękania, aby zainstalować wszystko od początku.

Następne kroki

W następnym kroku zapoznaj się z usługą Open Service Mesh (TAP) w usłudze Azure Kubernetes Service (AKS):

Możesz również eksplorować następujące siatki usług na platformie Azure Kubernetes Service (AKS) za pośrednictwem kompleksowej dokumentacji projektu dostępnej dla każdej z nich:

Jeśli chcesz dowiedzieć się więcej na temat krajobrazu siatki usług, szerszego zestawu dostępnych siatek usług, narzędzi i zgodności, zapoznaj się z:

Warto również poznać różne działania w zakresie standaryzacji siatki usług: