Delen via


Een AKS Edge Essentials-cluster maken en configureren waarmee Azure IoT Operations kan worden uitgevoerd

Azure Kubernetes Service (AKS) Edge Essentials is een van de ondersteunde clusterplatforms voor Azure IoT Operations. U kunt AKS Edge Essentials gebruiken om een door Microsoft beheerd Kubernetes-cluster te maken en Azure IoT Operations erop te implementeren als een workload. In dit artikel worden de stappen beschreven voor het uitvoeren van een script waarmee een AKS Edge Essentials Kubernetes-cluster wordt gemaakt met de vereiste configuraties voor Azure IoT-bewerkingen en die cluster vervolgens verbindt met Azure Arc.

Notitie

Azure IoT Operations ondersteunt AKS Edge Essentials wanneer deze wordt geïmplementeerd op clusters met één machine. Het implementeren van clusters op meerdere computers is een experimentele functie.

Vereisten voor het uitvoeren van het script

Als u het script wilt uitvoeren, hebt u de volgende vereisten nodig:

  • Een Azure-abonnement met de rol Eigenaar of een combinatie van de rollen Inzender en Beheerder voor gebruikerstoegang. U kunt uw toegangsniveau controleren door naar uw abonnement te navigeren, toegangsbeheer (IAM) aan de linkerkant van Azure Portal te selecteren en vervolgens Mijn toegang weergeven te selecteren. Als u geen Azure-abonnement hebt, kunt u er gratis een maken voordat u begint.

  • Azure CLI versie 2.64.0 of hoger geïnstalleerd op uw ontwikkelcomputer. Gebruik az --version deze optie om uw versie te controleren en az upgrade zo nodig bij te werken. Zie De Azure CLI installeren voor meer informatie.

  • Installeer de nieuwste versie van de connectedk8s-extensies voor Azure CLI:

    az extension add --upgrade --name connectedk8s 
    
  • Hardwarevereisten: zorg ervoor dat uw computer minimaal 16 GB ram-geheugen, 4 beschikbare vCPU's en 52 GB vrije schijfruimte heeft die is gereserveerd voor Azure IoT-bewerkingen.

Een cluster met Arc maken

Het AksEdgeQuickStartForAio.ps1-script automatiseert het proces van het maken en verbinden van een cluster en is het aanbevolen pad voor het implementeren van Azure IoT-bewerkingen op AKS Edge Essentials. Met het script worden de volgende taken uitgevoerd:

  • Downloadt de nieuwste AKS Edge Essentials MSI vanuit deze opslagplaats.
  • Installeert AKS Edge Essentials en implementeert en maakt één Kubernetes-cluster op uw Windows-computer.
  • Maakt verbinding met het Azure-abonnement, maakt een resourcegroep als deze nog niet bestaat en verbindt het cluster met Arc om een Kubernetes-cluster met Arc te maken.
  • Hiermee schakelt u de functie voor aangepaste locatie in het Kubernetes-cluster met Arc in.
  • Hiermee schakelt u de functie voor federatie van workloadidentiteiten in het Kubernetes-cluster met Arc in.
  • Hiermee wordt de inrichting van het lokale pad geïmplementeerd.
  • Hiermee configureert u firewallregels op de Windows-hostcomputer voor de MQTT-broker.
  • Op de Virtuele Linux-machine, die fungeert als het Kubernetes-besturingsvlakknooppunt:
    • Hiermee configureert u de poortproxy voor het standaard-IP-bereik van de Kubernetes-service van 10.96.0.0/28.
    • Hiermee configureert u de IP-tabelregels:
      • sudo iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 9110 -j ACCEPT
      • sudo iptables -A INPUT -p tcp --dport (10124, 8420, 2379, 50051) -j ACCEPT

Voer de volgende stappen uit om het quickstartscript uit te voeren:

  1. Open een PowerShell-venster met verhoogde bevoegdheid en wijzig de map in een werkmap.

  2. Haal de objectId Microsoft Entra ID-toepassing op die door de Azure Arc-service in uw tenant wordt gebruikt. Voer de volgende opdracht precies uit zoals geschreven, zonder de GUID-waarde te wijzigen.

    az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv
    
  3. Voer de volgende opdrachten uit, waarbij u de waarden van de tijdelijke aanduiding vervangt door uw gegevens:

    $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>" -CustomLocationOid "<ARC_APP_OBJECT_ID>"
    
    Tijdelijke aanduiding Weergegeven als
    SUBSCRIPTION_ID De id van uw Azure-abonnement. Als u uw abonnements-id niet weet, raadpleegt u Uw Azure-abonnement zoeken.
    TENANT_ID De id van uw Microsoft Entra-tenant. Als u uw tenant-id niet weet, raadpleegt u Uw Microsoft Entra-tenant zoeken.
    RESOURCE_GROUP_NAME De naam van een bestaande resourcegroep of een naam voor een nieuwe resourcegroep die moet worden gemaakt. Er wordt slechts één Azure IoT Operations-exemplaar per resourcegroep ondersteund.
    LOCATIE Een Azure-regio dicht bij u in de buurt. Zie Ondersteunde regio's voor de lijst met ondersteunde Azure IoT-bewerkingen.
    CLUSTER_NAME Een naam voor het nieuwe cluster dat moet worden gemaakt.
    ARC_APP_OBJECT_ID De object-id-waarde die u in stap 2 hebt opgehaald.

    Als er problemen zijn tijdens de implementatie, bijvoorbeeld als uw computer opnieuw wordt opgestart als onderdeel van dit proces, voert u de set opdrachten opnieuw uit.

  4. Voer de volgende opdrachten uit om te controleren of de implementatie is geslaagd:

    Import-Module AksEdge
    Get-AksEdgeDeploymentInfo
    

    In de uitvoer van de Get-AksEdgeDeploymentInfo opdracht ziet u dat de Arc-status van het cluster is verbonden.

Uw cluster verifiëren

Voer de volgende opdracht uit om te controleren of uw Kubernetes-cluster is ingeschakeld voor Azure Arc:

kubectl get deployments,pods -n azure-arc

De uitvoer ziet er ongeveer als volgt uit:

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

Volgende stappen