Konfiguracje usługi GitOps Flux w wersji 1 z włączoną usługą Kubernetes z obsługą usługi Azure Arc
Ważne
Dokumenty w tej sekcji dotyczą metodyki GitOps z rozwiązaniem Flux w wersji 1. Usługa GitOps z rozwiązaniem Flux v2 jest teraz dostępna dla klastrów Kubernetes i Azure Kubernetes Service (AKS) z obsługą usługi Azure Arc; dowiedz się więcej o usłudze GitOps z rozwiązaniem Flux w wersji 2. Zalecamy jak najszybsze przeprowadzenie migracji do wersji Flux v2 .
Obsługa zasobów konfiguracji klastra opartych na platformie Flux w wersji 1 utworzonych przed 1 stycznia 2024 r. zakończy się 24 maja 2025 r. Od 1 stycznia 2024 r. nie będzie można utworzyć nowych zasobów konfiguracji klastra opartego na platformie Flux w wersji 1.
W odniesieniu do platformy Kubernetes usługa GitOps to praktyka deklarowania żądanego stanu konfiguracji klastra Kubernetes (wdrożeń, przestrzeni nazw itp.) w repozytorium Git. Po tej deklaracji następuje sondowanie i wdrażanie oparte na ściąganiu tych konfiguracji klastra przy użyciu operatora. Repozytorium Git może zawierać następujące elementy:
- Manifesty w formacie YAML opisujące wszystkie prawidłowe zasoby kubernetes, w tym przestrzenie nazw, ConfigMaps, Wdrożenia, DaemonSets itp.
- Wykresy helm na potrzeby wdrażania aplikacji.
Flux, popularne narzędzie open source w przestrzeni GitOps, można wdrożyć w klastrze Kubernetes, aby ułatwić przepływ konfiguracji z repozytorium Git do klastra Kubernetes. Platforma Flux obsługuje wdrażanie operatora zarówno w zakresie klastra, jak i przestrzeni nazw. Operator flux wdrożony z zakresem przestrzeni nazw może wdrażać tylko obiekty Kubernetes w tej konkretnej przestrzeni nazw. Możliwość wyboru między zakresem klastra lub przestrzeni nazw ułatwia osiągnięcie wzorców wdrażania wielu dzierżaw w tym samym klastrze Kubernetes.
Konfiguracje
Połączenie między klastrem a repozytorium Git jest tworzone jako zasób konfiguracji (Microsoft.KubernetesConfiguration/sourceControlConfigurations
) w oparciu o zasób Kubernetes z włączoną usługą Azure Arc (reprezentowany przez Microsoft.Kubernetes/connectedClusters
) w usłudze Azure Resource Manager.
Właściwości zasobu konfiguracji służą do wdrażania operatora Flux w klastrze z odpowiednimi parametrami, takimi jak repozytorium Git, z którego mają być ściągane manifesty i interwał sondowania, w którym można je ściągnąć. Dane zasobów konfiguracji są przechowywane w spoczynku w bazie danych usługi Azure Cosmos DB w celu zapewnienia poufności danych.
Uruchomienie config-agent
w klastrze jest odpowiedzialne za:
- Śledzenie nowych lub zaktualizowanych zasobów konfiguracji w zasobie Kubernetes z obsługą usługi Azure Arc.
- Wdrażanie operatora Flux w celu obejrzenia repozytorium Git dla każdego zasobu konfiguracji.
- Stosowanie wszelkich aktualizacji wprowadzonych do dowolnego zasobu konfiguracji.
Możesz utworzyć wiele zasobów konfiguracji o zakresie przestrzeni nazw w tym samym klastrze Kubernetes z obsługą usługi Azure Arc, aby osiągnąć wielodostępność.
Uwaga
config-agent
monitoruje nowe lub zaktualizowane zasoby konfiguracji, które mają być dostępne w zasobie Kubernetes z obsługą usługi Azure Arc. W związku z tym agenci wymagają łączności, aby żądany stan był ściągany do klastra. Jeśli agenci nie mogą nawiązać połączenia z platformą Azure, istnieje opóźnienie propagacji żądanego stanu do klastra.- Poufne dane wejściowe klienta, takie jak klucz prywatny, znana zawartość hostów, nazwa użytkownika HTTPS i token/hasło nie są przechowywane przez więcej niż 48 godzin w usługach Kubernetes z obsługą usługi Azure Arc. Jeśli używasz poufnych danych wejściowych dla konfiguracji, przełącz klastry w tryb online tak regularnie, jak to możliwe.
Stosowanie konfiguracji na dużą skalę
Ponieważ usługa Azure Resource Manager zarządza konfiguracjami, możesz zautomatyzować tworzenie tej samej konfiguracji we wszystkich zasobach platformy Kubernetes z włączoną usługą Azure Arc przy użyciu usługi Azure Policy w zakresie subskrypcji lub grupy zasobów.
To wymuszanie na dużą skalę gwarantuje, że można zastosować wspólną konfigurację linii bazowej (zawierającą konfiguracje, takie jak ClusterRoleBindings, RoleBindings i NetworkPolicy) w całej floty lub spisie klastrów Kubernetes z obsługą usługi Azure Arc.
Ważne
Dokumenty w tej sekcji dotyczą metodyki GitOps z rozwiązaniem Flux w wersji 1. Usługa GitOps z rozwiązaniem Flux v2 jest teraz dostępna dla klastrów Kubernetes i Azure Kubernetes Service (AKS) z obsługą usługi Azure Arc; dowiedz się więcej o usłudze GitOps z rozwiązaniem Flux w wersji 2. Zalecamy jak najszybsze przeprowadzenie migracji do wersji Flux v2 .
Obsługa zasobów konfiguracji klastra opartych na platformie Flux w wersji 1 utworzonych przed 1 stycznia 2024 r. zakończy się 24 maja 2025 r. Od 1 stycznia 2024 r. nie będzie można utworzyć nowych zasobów konfiguracji klastra opartego na platformie Flux w wersji 1.
Następne kroki
- Skorzystaj z naszego przewodnika Szybki start, aby połączyć klaster Kubernetes z usługą Azure Arc.
- Utwórz konfiguracje w klastrze Kubernetes z obsługą usługi Azure Arc.
- Użyj usługi Azure Policy, aby zastosować konfiguracje na dużą skalę.