Przygotowywanie klastra Kubernetes z obsługą usługi Azure Arc

Ważne

Usługa Azure IoT Operations Preview — włączona przez usługę Azure Arc jest obecnie dostępna w wersji zapoznawczej. Nie należy używać tego oprogramowania w wersji zapoznawczej w środowiskach produkcyjnych.

Zobacz Dodatkowe warunki użytkowania wersji zapoznawczych platformy Microsoft Azure, aby zapoznać się z postanowieniami prawnymi dotyczącymi funkcji platformy Azure, które są w wersji beta lub wersji zapoznawczej albo w inny sposób nie zostały jeszcze wydane jako ogólnie dostępne.

Klaster Kubernetes z obsługą usługi Azure Arc jest wymaganiem wstępnym do wdrożenia usługi Azure IoT Operations Preview. W tym artykule opisano sposób przygotowywania klastra Kubernetes z obsługą usługi Azure Arc przed wdrożeniem rozszerzeń usługi Azure IoT Operations Preview w klastrze Kubernetes w celu uruchamiania własnych obciążeń. Ten artykuł zawiera wskazówki dotyczące środowisk ubuntu, Windows i chmury.

Napiwek

Jeśli chcesz wdrożyć operacje usługi Azure IoT i uruchomić przykładowe obciążenie, zobacz Przewodnik Szybki start: wdrażanie usługi Azure IoT Operations Preview w klastrze Kubernetes z obsługą usługi Arc.

Usługa Azure Iot Operations jest dostarczana jako zestaw usług Kubernetes z obsługą usługi Azure Arc i jest przeznaczona do użytku z zgodnymi produktami partnerskimi firmy Arc zweryfikowanymi przez usługę ARC. Obecnie firma Microsoft zweryfikowała operacje usługi Azure IoT względem następującego stałego zestawu infrastruktury i środowisk:

Środowisko Wersja
Usługa AKS-EE w systemie Windows 11 IoT Enterprise
na jednym węźle AMD Ryzen-7 (8 rdzeni, 3,3 GHz), 16 GB pamięci RAM
AksEdge-K3s-1.26.10-1.6.384.0
K3s w systemie Ubuntu 22.04.2
na jednym węźle AMD Ryzen-7 (8 rdzeni, 3,3 GHz), 16 GB pamięci RAM
K3s w wersji 1.28.5

Ważne

Wymienione wcześniej środowiska są środowiskami przypominającymi środowisko produkcyjne, które firma Microsoft zweryfikowała. Nie są to jedyne środowiska, w których można uruchamiać operacje usługi Azure IoT. Operacje usługi Azure IoT można uruchamiać w dowolnym klastrze Kubernetes z obsługą usługi Arc, który spełnia wymagania systemowe platformy Kubernetes z obsługą usługi Azure Arc.

Wymagania wstępne

Aby przygotować klaster Kubernetes z obsługą usługi Azure Arc, potrzebne są następujące elementy:

Tworzenie klastra

Ta sekcja zawiera kroki przygotowywania i włączania klastrów usługi Arc w zweryfikowanych środowiskach w systemach Linux i Windows, a także w usłudze GitHub Codespaces w chmurze.

Azure Kubernetes Service Edge Essentials to lokalna implementacja platformy Kubernetes usługi Azure Kubernetes Service (AKS), która automatyzuje uruchamianie konteneryzowanych aplikacji na dużą skalę. Usługa AKS Edge Essentials zawiera obsługiwaną przez firmę Microsoft platformę Kubernetes, która obejmuje uproszczoną dystrybucję Kubernetes z niewielką ilością i prostą instalacją, co ułatwia wdrażanie platformy Kubernetes na sprzęcie typu PC lub "lekkim" brzegowym.

Napiwek

Możesz użyć skryptu AksEdgeQuickStartForAio.ps1 , aby zautomatyzować kroki opisane w tej sekcji i połączyć klaster.

W oknie programu PowerShell z podwyższonym poziomem uprawnień uruchom następujące polecenia:

$url = "https://raw.githubusercontent.com/Azure/AKS-Edge/main/tools/scripts/AksEdgeQuickStart/AksEdgeQuickStartForAio.ps1"
Invoke-WebRequest -Uri $url -OutFile .\AksEdgeQuickStartForAio.ps1
Unblock-File .\AksEdgeQuickStartForAio.ps1
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force
.\AksEdgeQuickStartForAio.ps1 -SubscriptionId "<SUBSCRIPTION_ID>" -TenantId "<TENANT_ID>" -ResourceGroupName "<RESOURCE_GROUP_NAME>"  -Location "<LOCATION>"  -ClusterName "<CLUSTER_NAME>"

Maszyna może zostać uruchomiona ponownie w ramach tego procesu. Jeśli tak, uruchom ponownie cały zestaw poleceń.

Przygotuj maszynę do usługi AKS Edge Essentials.

  1. Pobierz instalatora zweryfikowanej wersji programu AKS Edge Essentials na komputer lokalny.

  2. Wykonaj kroki opisane w artykule Przygotowywanie maszyny do usługi AKS Edge Essentials. Pamiętaj, aby użyć zweryfikowanego instalatora pobranego w poprzednim kroku, a nie najnowszej wersji.

Skonfiguruj klaster AKS Edge Essentials na maszynie.

  1. Wykonaj kroki opisane w temacie Tworzenie wdrożenia pojedynczej maszyny, ale na końcu kroku 1: parametry konfiguracji pojedynczej maszyny zmodyfikuj następujące wartości w pliku aksedge-config.json:

    `Init.ServiceIPRangeSize` = 10
    `LinuxNode.DataSizeInGB` = 30
    `LinuxNode.MemoryInMB` = 8192
    
  2. Zainstaluj magazyn ścieżki lokalnej w klastrze, uruchamiając następujące polecenie:

    kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/storage/local-path-provisioner/local-path-storage.yaml
    

Włączanie klastra w usłudze Arc

Aby połączyć klaster z usługą Azure Arc, wykonaj kroki opisane w Połączenie klastrze AKS Edge Essentials z usługą Arc.

Weryfikowanie klastra

Aby sprawdzić, czy klaster Kubernetes jest teraz włączony w usłudze Azure Arc, uruchom następujące polecenie:

kubectl get deployments,pods -n azure-arc

Dane wyjściowe wyglądają jak w poniższym przykładzie:

NAME                                         READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/clusterconnect-agent         1/1     1            1           10m
deployment.apps/extension-manager            1/1     1            1           10m
deployment.apps/clusteridentityoperator      1/1     1            1           10m
deployment.apps/controller-manager           1/1     1            1           10m
deployment.apps/flux-logs-agent              1/1     1            1           10m
deployment.apps/cluster-metadata-operator    1/1     1            1           10m
deployment.apps/extension-events-collector   1/1     1            1           10m
deployment.apps/config-agent                 1/1     1            1           10m
deployment.apps/kube-aad-proxy               1/1     1            1           10m
deployment.apps/resource-sync-agent          1/1     1            1           10m
deployment.apps/metrics-agent                1/1     1            1           10m

NAME                                              READY   STATUS    RESTARTS        AGE
pod/clusterconnect-agent-5948cdfb4c-vzfst         3/3     Running   0               10m
pod/extension-manager-65b8f7f4cb-tp7pp            3/3     Running   0               10m
pod/clusteridentityoperator-6d64fdb886-p5m25      2/2     Running   0               10m
pod/controller-manager-567c9647db-qkprs           2/2     Running   0               10m
pod/flux-logs-agent-7bf6f4bf8c-mr5df              1/1     Running   0               10m
pod/cluster-metadata-operator-7cc4c554d4-nck9z    2/2     Running   0               10m
pod/extension-events-collector-58dfb78cb5-vxbzq   2/2     Running   0               10m
pod/config-agent-7579f558d9-5jnwq                 2/2     Running   0               10m
pod/kube-aad-proxy-56d9f754d8-9gthm               2/2     Running   0               10m
pod/resource-sync-agent-769bb66b79-z9n46          2/2     Running   0               10m
pod/metrics-agent-6588f97dc-455j8                 2/2     Running   0               10m

Aby sprawdzić, czy klaster jest gotowy do wdrożenia operacji usługi Azure IoT, możesz użyć polecenia pomocnika verify-host w rozszerzeniu Operacje usługi Azure IoT dla interfejsu wiersza polecenia platformy Azure. Po uruchomieniu na hoście klastra to polecenie pomocnika sprawdza łączność z punktami końcowymi usług Azure Resource Manager i Microsoft Container Registry.

az iot ops verify-host

Tworzenie lokacji

Aby zarządzać klastrami, do których użytkownicy OT mają dostęp, możesz grupować klastry w lokacje. Aby dowiedzieć się więcej, zobacz Co to jest menedżer lokacji usługi Azure Arc (wersja zapoznawcza)?.

Następne kroki

Teraz, gdy masz klaster Kubernetes z włączoną usługą Azure Arc, możesz wdrożyć operacje usługi Azure IoT.