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:
- Sprzęt spełniający wymagania systemowe.
Subskrypcja Azure. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz je bezpłatnie .
Interfejs wiersza polecenia platformy Azure w wersji 2.46.0 lub nowszej zainstalowany na komputerze deweloperskim. Użyj
az --version
polecenia , aby sprawdzić wersję iaz upgrade
zaktualizować w razie potrzeby. Aby uzyskać więcej informacji, zobacz Jak zainstalować interfejs wiersza polecenia platformy Azure.Rozszerzenie Operacje usługi Azure IoT dla interfejsu wiersza polecenia platformy Azure. Użyj następującego polecenia, aby dodać rozszerzenie lub zaktualizować je do najnowszej wersji:
az extension add --upgrade --name azure-iot-ops
Sprzęt spełniający wymagania systemowe:
- Upewnij się, że maszyna ma co najmniej 10 GB pamięci RAM, 4 procesory wirtualne i 40 GB wolnego miejsca na dysku.
- Zapoznaj się z macierzą wymagań i obsługi usługi AKS Edge Essentials.
- Zapoznaj się ze wskazówkami dotyczącymi sieci AKS Edge Essentials.
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.
Otwórz okno programu PowerShell z podwyższonym poziomem uprawnień, zmień katalog na folder roboczy, a następnie 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.
Pobierz instalatora zweryfikowanej wersji programu AKS Edge Essentials na komputer lokalny.
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.
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
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
Uruchom następujące polecenia, aby sprawdzić, czy wdrożenie zakończyło się pomyślnie:
Import-Module AksEdge
Get-AksEdgeDeploymentInfo
W danych wyjściowych Get-AksEdgeDeploymentInfo
polecenia powinien zostać wyświetlony stan arc klastra o wartości Connected
.
Włączanie klastra w usłudze Arc
Połączenie klastra do usługi Azure Arc, aby można było zarządzać nim zdalnie.
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 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
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
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.