Rozszerzenia klastra

Wykresy helm ułatwiają zarządzanie aplikacjami Kubernetes, udostępniając bloki konstrukcyjne potrzebne do definiowania, instalowania i uaktualniania nawet najbardziej złożonych aplikacji Kubernetes. Funkcja rozszerzenia klastra jest oparta na składnikach pakietów programu Helm, zapewniając środowisko oparte na usłudze Azure Resource Manager na potrzeby instalowania i zarządzania cyklem życia różnych funkcji platformy Azure na podstawie klastra Kubernetes.

Operator klastra lub administrator może używać funkcji rozszerzeń klastra do:

  • Instalowanie funkcji zarządzania kluczami, danych i ofert aplikacji oraz zarządzanie nimi w klastrze platformy Kubernetes.
  • Korzystaj z usługi Azure Policy, aby zautomatyzować wdrażanie rozszerzeń klastra na dużą skalę we wszystkich klastrach w Twoim środowisku.
  • Subskrybuj łańcuchy wydawania (np. wersje zapoznawcze lub stabilne) dla każdego rozszerzenia.
  • Skonfiguruj automatyczne uaktualnianie rozszerzeń lub przypnij określoną wersję i ręcznie uaktualniaj wersje.
  • Aktualizuj właściwości rozszerzeń lub usuwaj wystąpienia rozszerzeń.

Aby uzyskać listę wszystkich aktualnie obsługiwanych rozszerzeń, zobacz Dostępne rozszerzenia dla klastrów Kubernetes z obsługą usługi Azure Arc.

Architektura

Cluster extensions architecture

Wystąpienie rozszerzenia klastra jest tworzone jako rozszerzenie zasobu usługi Azure Resource Manager (Microsoft.KubernetesConfiguration/extensions) w oparciu o zasób Kubernetes z obsługą usługi Azure Arc (reprezentowany przez Microsoft.Kubernetes/connectedClusters) w usłudze Azure Resource Manager. Ta reprezentacja w usłudze Azure Resource Manager umożliwia tworzenie zasad, które sprawdzają wszystkie zasoby kubernetes z włączoną obsługą usługi Azure Arc lub bez określonego rozszerzenia klastra. Po ustaleniu, które klastry nie mają rozszerzeń klastra z żądanymi wartościami właściwości, można skorygować te niezgodne zasoby przy użyciu usługi Azure Policy.

Działanie config-agent w klastrze śledzi nowe i zaktualizowane zasoby rozszerzenia w zasobie Kubernetes z obsługą usługi Azure Arc. extensions-manager Agent uruchomiony w klastrze odczytuje typ rozszerzenia, który musi zostać zainstalowany i ściąga skojarzony pakiet Helm z usługi Azure Container Registry lub Microsoft Container Registry i instaluje go w klastrze.

config-agent Zarówno składniki i extensions-manager uruchomione w klastrze obsługują aktualizacje wystąpień rozszerzenia, aktualizacje wersji i usuwanie wystąpienia rozszerzenia. Ci agenci używają przypisanej przez system tożsamości zarządzanej klastra do bezpiecznego komunikowania się z usługami platformy Azure.

Uwaga

config-agent sprawdza, czy nie ma nowych lub zaktualizowanych wystąpień rozszerzeń w klastrze Kubernetes z obsługą usługi Azure Arc. Agenci wymagają łączności dla żądanego stanu rozszerzenia do ściągania do klastra. Jeśli agenci nie mogą nawiązać połączenia z platformą Azure, propagacja żądanego stanu do klastra jest opóźniona.

Chronione ustawienia konfiguracji dla wystąpienia rozszerzenia są przechowywane przez maksymalnie 48 godzin w usługach Kubernetes z obsługą usługi Azure Arc. W związku z tym, jeśli klaster pozostanie odłączony w ciągu 48 godzin od utworzenia zasobu rozszerzenia na platformie Azure, rozszerzenie zmieni się ze Pending stanu na Failed stan. Aby temu zapobiec, zalecamy regularne przełączanie klastrów w tryb online.

Ważne

Obecnie rozszerzenia klastra Kubernetes z obsługą usługi Azure Arc nie są obsługiwane w klastrach opartych na architekturze ARM64, z wyjątkiem platformy Flux (GitOps). Aby zainstalować i używać innych rozszerzeń klastra, klaster musi mieć co najmniej jeden węzeł systemu operacyjnego i typ linux/amd64architektury .

Zakres rozszerzenia

Każdy typ rozszerzenia definiuje zakres, w którym działają w klastrze. Instalacje rozszerzeń w klastrach Kubernetes z obsługą usługi Arc są objęte zakresem klastra lub przestrzenią nazw.

Rozszerzenie o zakresie klastra zostanie zainstalowane w release-namespace określonym czasie podczas tworzenia rozszerzenia. Zazwyczaj tylko jedno wystąpienie rozszerzenia o zakresie klastra i jego składników, takich jak zasobniki, operatory i niestandardowe definicje zasobów (CRD), są instalowane w przestrzeni nazw wydania w klastrze.

Rozszerzenie o zakresie przestrzeni nazw można zainstalować w danej przestrzeni nazw udostępnionej –namespace przy użyciu właściwości . Ponieważ rozszerzenie można wdrożyć w zakresie przestrzeni nazw, wiele wystąpień rozszerzenia o zakresie przestrzeni nazw i jego składników można uruchomić w klastrze. Każde wystąpienie rozszerzenia ma uprawnienia do przestrzeni nazw, w której jest wdrażana. Wszystkie powyższe rozszerzenia są objęte zakresem klastra, z wyjątkiem usługi Event Grid na platformie Kubernetes.

Wszystkie obecnie dostępne rozszerzenia są objęte zakresem klastra, z wyjątkiem usługi Azure API Management w usłudze Azure Arc.

Następne kroki