Łączenie klastra z klastrami Kubernetes z obsługą usługi Azure Arc

Funkcja łączenia klastra Kubernetes z włączoną usługą Azure Arc zapewnia łączność z apiserver klastrem bez konieczności włączania żadnego portu przychodzącego w zaporze. Agent zwrotnego serwera proxy uruchomiony w klastrze może bezpiecznie uruchomić sesję z usługą Azure Arc w sposób wychodzący.

Połączenie klastra umożliwia deweloperom dostęp do swoich klastrów z dowolnego miejsca na potrzeby interaktywnego programowania i debugowania. Umożliwia również użytkownikom klastra i administratorom dostęp do klastrów lub zarządzanie nimi z dowolnego miejsca. Możesz nawet użyć hostowanych agentów/modułów uruchamiających usługi Azure Pipelines, GitHub Actions lub dowolnej innej hostowanej usługi ciągłej integracji/ciągłego wdrażania, aby wdrożyć aplikacje w klastrach lokalnych bez konieczności samodzielnego hostowania agentów.

Architektura

Diagram showing cluster connect architecture.

Po stronie klastra agent zwrotnego serwera proxy o nazwie clusterconnect-agent, wdrożony w ramach wykresu programu Helm agenta wykonuje wywołania wychodzące do usługi Azure Arc w celu ustanowienia sesji.

Gdy użytkownik wywołuje metodę az connectedk8s proxy:

  1. Plik binarny serwera proxy usługi Azure Arc jest pobierany i rozwijany jako proces na maszynie klienckiej.
  2. Serwer proxy usługi Azure Arc pobiera kubeconfig plik skojarzony z klastrem Kubernetes z obsługą usługi Azure Arc, na którym jest wywoływany az connectedk8s proxy .
    • Serwer proxy usługi Azure Arc używa tokenu dostępu platformy Azure obiektu wywołującego i nazwy identyfikatora usługi Azure Resource Manager.
  3. kubeconfig Plik zapisany na maszynie przez serwer proxy usługi Azure Arc wskazuje adres URL serwera do punktu końcowego w procesie serwera proxy usługi Azure Arc.

Gdy użytkownik wysyła żądanie przy użyciu tego kubeconfig pliku:

  1. Serwer proxy usługi Azure Arc mapuje punkt końcowy odbierający żądanie do usługi Azure Arc.
  2. Następnie usługa Azure Arc przekazuje żądanie do uruchomionego clusterconnect-agent klastra.
  3. Obiekt clusterconnect-agent przekazuje żądanie do kube-aad-proxy składnika, który wykonuje uwierzytelnianie Firmy Microsoft w jednostce wywołującej.
  4. Po uwierzytelnieniu kube-aad-proxy firmy Microsoft Entra personifikacja użytkownika kubernetes umożliwia przekazanie żądania do klastra apiserver.

Następne kroki