Konfigurowanie klastrów Kubernetes z obsługą usługi Azure Arc przy użyciu usługi GitOps

Ukończone

Główną zaletą usługi Azure Arc jest ułatwienie implementacji zasad metodyki DevOps, które stosują ustalone praktyki programistyczne do operacji. Metodyka DevOps zwiększa elastyczność bez zagrożenia stabilności środowiska IT.

Platforma Kubernetes z obsługą usługi Azure Arc obsługuje metodykę GitOps, która usprawnia wydania aplikacji przez zmniejszenie nakładu pracy ręcznego wdrażania.

W tej lekcji dowiesz się więcej na temat metodyki GitOps i sposobu jej konfigurowania dla klastrów Kubernetes z obsługą usługi Azure Arc.

GitOps dla platformy Kubernetes z obsługą usługi Arc

Usługa GitOps ułatwia standaryzację konfiguracji platformy Kubernetes w całej organizacji, w tym platformę Kubernetes z obsługą usługi Arc. Repozytorium lub inne pliki źródłowe hostują pliki konfiguracji, które reprezentują oczekiwany stan zasobu. Na przykład konfiguracja punktu odniesienia może obejmować model delegowania, ustawienia monitorowania i rejestrowania oraz charakterystykę usług obejmujących cały klaster.

Agent uruchomiony w klastrze Kubernetes monitoruje stan repozytorium. W przypadku zmiany konfiguracji agent ściąga zaktualizowane pliki do klastra i stosuje nową konfigurację, zapewniając, że klaster pozostaje w żądanym stanie.

Klastry Kubernetes z obsługą usługi Azure Arc korzystają z platformy Flux, popularnego operatora wdrażania GitOps typu open source, który automatyzuje wdrożenia konfiguracji w klastrze. Platforma Flux obsługuje typowe źródła plików, takie jak repozytoria Git, repozytoria Helm i zasobniki, oraz obsługuje typy szablonów konfiguracji YAML, Helm i Kustomize.

Na poniższym diagramie przedstawiono przepływ usługi GitOps, który używa rozwiązania Flux do wdrażania konfiguracji klastra i aktualizacji aplikacji.

Diagram of the GitOps flow showing an application update.

Konfigurowanie metodyki GitOps

Usługa GitOps kojarzy klaster Kubernetes z obsługą usługi Arc z co najmniej jednym źródłem plików, takim jak repozytorium Git. Każde repozytorium może zawierać konfiguracje wszystkich prawidłowych zasobów platformy Kubernetes, takich jak przestrzenie nazw lub wdrożenia w postaci plików manifestu.

Na poniższym diagramie przedstawiono proces stosowania konfiguracji opartych na metodyce GitOps do wielu klastrów z obsługą usługi Azure Arc.

Diagram showing the process of applying GitOps-based configuration to multiple Azure Arc-enabled clusters.

Usługa GitOps jest włączona w klastrze Kubernetes jako zasób rozszerzenia klastra Microsoft.KubernetesConfiguration/extensions/microsoft.flux . Aby utworzyć fluxConfigurationsplik , microsoft.flux rozszerzenie musi być zainstalowane w klastrze. Rozszerzenie jest instalowane automatycznie podczas tworzenia pierwszego Microsoft.KubernetesConfiguration/fluxConfigurations wystąpienia w klastrze. Rozszerzenie można również zainstalować ręcznie przed utworzeniem konfiguracji.

Każde skojarzenie między konfiguracją klastra Kubernetes z włączoną usługą Azure Arc a odpowiednim repozytorium GitOps znajduje się na platformie Azure w ramach zasobu platformy Azure z obsługą usługi Kubernetes z obsługą usługi Azure Arc. Skojarzenie można skonfigurować przy użyciu interfejsów zarządzania platformy Azure, takich jak witryna Azure Portal lub interfejs wiersza polecenia platformy Azure.

Aby zaimplementować metodyki GitOps z klastrem Kubernetes z włączoną usługą Azure Arc, wykonaj następujące ogólne kroki.

  1. Użyj rozszerzenia interfejsu k8s-configuration wiersza polecenia platformy Azure, aby zastosować konfigurację platformy Flux i włączyć usługę GitOps w klastrze Kubernetes z obsługą usługi Arc.
  2. Zweryfikuj konfigurację, aby potwierdzić pomyślne utworzenie. Zasób konfiguracji aktualizuje informacje o stanie zgodności, komunikatach i debugowaniu.

Po zastosowaniu konfiguracji możesz użyć witryny Azure Portal, aby wyświetlić szczegóły zgodności. Za pomocą witryny Azure Portal można również tworzyć, aktualizować i usuwać konfiguracje usługi GitOps.

Automatyzowanie konfiguracji przy użyciu usługi Azure Policy

Za pomocą usługi Azure Policy można zautomatyzować proces konfiguracji, aby można było je stale stosować na dużą skalę. Przed przypisaniem zasad w celu skonfigurowania klastrów należy się upewnić, że rozszerzenie Flux zostało utworzone w klastrach. Można to zrobić, przypisując najpierw definicję zasad konfiguracji instalacji rozszerzenia Flux na platformie Kubernetes, co gwarantuje, że rozszerzenie jest zainstalowane.

Tworzenie przypisania usługi Azure Policy w witrynie Azure Portal składa się z następujących kroków wysokiego poziomu:

  1. W witrynie Azure Portal wyświetl wszystkie definicje zasad, wyszukując i wybierając pozycję Zasady, a następnie wybierając pozycję Definicje w menu po lewej stronie Zasady .
  2. Wyszukaj pozycję Configure Kubernetes clusters with specified GitOps configuration (Konfigurowanie klastrów Kubernetes z określoną konfiguracją usługi GitOps) i wybierz jedną z wbudowanych definicji zasad.
  3. Wybierz pozycję Przypisz i utwórz przypisanie zasad, określając ustawienia zakresu, parametrów i korygowania.
  4. Wybierz opcję Przejrzyj i utwórz, a następnie wybierz pozycję Utwórz.

Przypisanie zasad automatycznie włącza metodyki GitOps dla każdego klastra Kubernetes z włączoną obsługą usługi Azure Arc, który jest tworzony w zakresie przypisania. W przypadku istniejących klastrów należy ręcznie uruchomić zadanie korygowania.

Więcej informacji na temat usługi Azure Policy znajdziesz w następnej lekcji.