Distribuera Azure IoT Operations Preview till ett Arc-aktiverat Kubernetes-kluster

Viktigt!

Förhandsversion av Azure IoT Operations – aktiverad av Azure Arc är för närvarande i förhandsversion. Du bör inte använda den här förhandsgranskningsprogramvaran i produktionsmiljöer.

Du måste distribuera en ny Azure IoT Operations-installation när en allmänt tillgänglig version görs tillgänglig. Du kommer inte att kunna uppgradera en förhandsgranskningsinstallation.

Juridiska villkor för Azure-funktioner i betaversion, förhandsversion eller som av någon annan anledning inte har gjorts allmänt tillgängliga ännu finns i kompletterande användningsvillkor för Microsoft Azure-förhandsversioner.

Lär dig hur du distribuerar förhandsversionen av Azure IoT Operations till ett Kubernetes-kluster med hjälp av Azure Portal.

I den här artikeln diskuterar vi Distributioner och instanser av Azure IoT Operations, som är två olika begrepp:

  • En Azure IoT Operations-distribution beskriver alla komponenter och resurser som aktiverar Azure IoT Operations-scenariot. Dessa komponenter och resurser omfattar:

    • En Azure IoT Operations-instans
    • Arc-tillägg
    • Anpassade platser
    • Resurser som du kan konfigurera i din Azure IoT Operations-lösning, till exempel tillgångar och tillgångsslutpunkter.
  • En Azure IoT Operations-instans är den överordnade resursen som paketera tjänstepaketet som definieras i Vad är Azure IoT Operations Preview? som MQTT-asynkron meddelandekö, dataflöden och OPC UA-anslutningsprogram.

När vi pratar om att distribuera Azure IoT Operations menar vi den fullständiga uppsättningen komponenter som utgör en distribution. När distributionen finns kan du visa, hantera och uppdatera instansen.

Förutsättningar

Molnresurser:

Utvecklingsresurser:

  • Azure CLI installerat på utvecklingsdatorn. Det här scenariot kräver Azure CLI version 2.64.0 eller senare. Använd az --version för att kontrollera din version och az upgrade uppdatera om det behövs. Mer information finns i Installera Azure CLI.

  • Azure IoT Operations-tillägget för Azure CLI. Använd följande kommando för att lägga till tillägget eller uppdatera det till den senaste versionen:

    az extension add --upgrade --name azure-iot-ops
    

En klustervärd:

  • Ha ett Azure Arc-aktiverat Kubernetes-kluster med de anpassade funktionerna för plats- och arbetsbelastningsidentitet aktiverade. Om du inte har något följer du stegen i Förbereda ditt Azure Arc-aktiverade Kubernetes-kluster.

    Om du distribuerade Azure IoT Operations till klustret tidigare avinstallerar du resurserna innan du fortsätter. Mer information finns i Uppdatera Azure IoT-åtgärder.

  • Kontrollera att klustervärden är korrekt konfigurerad för distribution med hjälp av kommandot verify-host på klustervärden:

    az iot ops verify-host
    
  • (Valfritt) Förbered klustret för observerbarhet innan du distribuerar Azure IoT-åtgärder: Konfigurera observerbarhet.

Distribuera

Distributionsupplevelsen Azure Portal är ett hjälpverktyg som genererar ett distributionskommando baserat på dina resurser och konfiguration. Det sista steget är att köra ett Azure CLI-kommando, så du behöver fortfarande de Azure CLI-krav som beskrivs i föregående avsnitt.

  1. I Azure Portal söker du efter och väljer Azure IoT-åtgärder.

  2. Välj Skapa.

  3. Ange följande information på fliken Grundläggande :

    Parameter Värde
    Abonnemang Välj den prenumeration som innehåller ditt Arc-aktiverade kluster.
    Resursgrupp Välj den resursgrupp som innehåller ditt Arc-aktiverade kluster.
    Klusternamn Välj det kluster som du vill distribuera Azure IoT-åtgärder till.
    Namn på anpassad plats Valfritt: Ersätt standardnamnet för den anpassade platsen.

    En skärmbild som visar den första fliken för distribution av Azure IoT-åtgärder från portalen.

  4. Välj Nästa: Konfiguration.

  5. På fliken Konfiguration anger du följande information:

    Parameter Värde
    Namn på Azure IoT-åtgärder Valfritt: Ersätt standardnamnet för Azure IoT Operations-instansen.
    Konfiguration av MQTT-koordinator Valfritt: Redigera standardinställningarna för MQTT-koordinatorn. Mer information finns i Konfigurera grundläggande MQTT-mäklarinställningar.
    Konfiguration av dataflödesprofil Valfritt: Redigera standardinställningarna för dataflöden. Mer information finns i Konfigurera dataflödesprofil.

    En skärmbild som visar den andra fliken för distribution av Azure IoT-åtgärder från portalen.

  6. Välj Nästa: Beroendehantering.

  7. På fliken Beroendehantering väljer du ett befintligt schemaregister eller använder följande steg för att skapa ett:

    1. Välj Skapa ny.

    2. Ange ett schemaregisternamn och schemaregistrets namnområde.

    3. Välj Välj Azure Storage-container.

    4. Välj ett lagringskonto i listan över hierarkiska namnområdesaktiverade konton eller välj Skapa för att skapa ett.

      Schemaregistret kräver ett Azure Storage-konto med hierarkiskt namnområde och åtkomst till offentligt nätverk aktiverat. När du skapar ett nytt lagringskonto väljer du lagringskontotypen Generell användning v2 och anger Hierarkisk namnrymd till Aktiverad.

    5. Välj en container i ditt lagringskonto eller välj Container för att skapa en.

    6. Välj Använd för att bekräfta schemaregisterkonfigurationerna.

  8. På fliken Beroendehantering väljer du antingen alternativet Testinställningar eller Distribution av säkra inställningar. Om du inte är säker på vilket som passar ditt scenario kan du läsa vägledningen i Distributionsinformation > Välj dina funktioner.

    Beroende på ditt val följer du stegen för att antingen:

Distribuera med testinställningar

Använd de här stegen om du väljer alternativet Testinställningarfliken Beroendehantering .

  1. Välj Nästa: Automation.

  2. En i taget kör du varje Azure CLI-kommando på fliken Automation i en terminal:

    1. Logga in på Azure CLI interaktivt med en webbläsare även om du redan har loggat in tidigare. Om du inte loggar in interaktivt kan du få ett felmeddelande om att enheten måste hanteras för att få åtkomst till resursen.

      az login
      
    2. Installera det senaste Azure IoT Operations CLI-tillägget.

      az upgrade
      az extension add --upgrade --name azure-iot-ops
      
    3. Skapa ett schemaregister som ska användas av Azure IoT Operations-komponenter. Kopiera och kör det angivna kommandot az iot ops schema registry create .

      Om du väljer att använda ett befintligt schemaregister visas inte det här kommandot på fliken Automation .

    4. Förbereda klustret för Azure IoT Operations-distribution. Kopiera och kör det angivna kommandot az iot ops init .

      Dricks

      Kommandot init behöver bara köras en gång per kluster. Om du återanvänder ett kluster som redan har Azure IoT Operations version 0.8.0 distribuerat på det kan du hoppa över det här steget.

      Om du har följt den valfria förutsättningen för att konfigurera en egen utfärdare av certifikatutfärdare lägger du till --user-trust flaggan i init kommandot .

      Det kan ta flera minuter att slutföra det här kommandot. Du kan se förloppet i distributionsframsteget i terminalen.

    5. Distribuera Azure IoT-åtgärder. Kopiera och kör det angivna kommandot az iot ops create .

      • Om du har följt de valfria kraven för att förbereda klustret för observerbarhet lägger du till följande parametrar i create kommandot:

        Parameter Värde beskrivning
        --ops-config observability.metrics.openTelemetryCollectorAddress=<FULLNAMEOVERRIDE>.azure-iot-operations.svc.cluster.local:<GRPC_ENDPOINT> Ange den OpenTelemetry-insamlareadress (OTel) som du konfigurerade i filen otel-collector-values.yaml.

        Exempelvärdena som används i Konfigurera observerbarhet är fullnameOverride=aio-otel-collector och grpc.enpoint=4317.
        --ops-config observability.metrics.exportInternalSeconds=<CHECK_INTERVAL> Ange det check_interval värde som du konfigurerade i filen otel-collector-values.yaml.

        Exempelvärdet som används i Konfigurera observerbarhet är check_interval=60.
      • Om du har följt de valfria kraven för att konfigurera en egen utfärdare av certifikatutfärdare lägger du till parametrarna --trust-settings i create kommandot:

        --trust-settings configMapName=<CONFIGMAP_NAME> configMapKey=<CONFIGMAP_KEY_WITH_PUBLICKEY_VALUE> issuerKind=<CLUSTERISSUER_OR_ISSUER> issuerName=<ISSUER_NAME>
        

      Det kan ta flera minuter att slutföra det här kommandot. Du kan se förloppet i distributionsframsteget i terminalen.

  3. När alla Azure CLI-kommandon har slutförts kan du stänga guiden Installera Azure IoT Operations .

create När kommandot har slutförts har du en fungerande Azure IoT Operations-instans som körs i klustret. Nu är din instans konfigurerad för de flesta test- och utvärderingsscenarier.

Om du vid någon tidpunkt i framtiden vill förbereda din instans för produktionsscenarier följer du stegen i Aktivera säkra inställningar på en befintlig Azure IoT Operations-instans.

Distribuera med säkra inställningar

Använd de här stegen om du väljer alternativet Säkra inställningarfliken Beroendehantering .

  1. I avsnittet Distributionsalternativ anger du följande information:

    Parameter Värde
    Abonnemang Välj den prenumeration som innehåller ditt Azure-nyckelvalv.
    Azure Key Vault Välj ett Azure-nyckelvalv och välj Skapa nytt.

    Se till att nyckelvalvet har åtkomstprincipen För valv som behörighetsmodell. Om du vill kontrollera den här inställningen väljer du Hantera valda valvinställningar>>Åtkomstkonfiguration.
    Användartilldelad hanterad identitet för hemligheter Välj en identitet eller välj Skapa ny.
    Användartilldelad hanterad identitet för AIO-komponenter Välj en identitet eller välj Skapa ny. Använd inte samma hanterade identitet som den du valde för hemligheter.

    En skärmbild som visar hur du konfigurerar säkra inställningar på den tredje fliken för distribution av Azure IoT-åtgärder från portalen.

  2. Välj Nästa: Automation.

  3. En i taget kör du varje Azure CLI-kommando på fliken Automation i en terminal:

    1. Logga in på Azure CLI interaktivt med en webbläsare även om du redan har loggat in tidigare. Om du inte loggar in interaktivt kan du få ett felmeddelande om att enheten måste hanteras för att komma åt resursen när du fortsätter till nästa steg för att distribuera Azure IoT-åtgärder.

      az login
      
    2. Installera det senaste Azure IoT Operations CLI-tillägget.

      az upgrade
      az extension add --upgrade --name azure-iot-ops
      
    3. Skapa ett schemaregister som ska användas av Azure IoT Operations-komponenter. Kopiera och kör det angivna kommandot az iot ops schema registry create .

      Om du väljer att använda ett befintligt schemaregister visas inte det här kommandot på fliken Automation .

      Kommentar

      Det här kommandot kräver att du har skrivbehörigheter för rolltilldelning eftersom det tilldelar en roll för att ge schemaregistret åtkomst till lagringskontot. Som standard är rollen den inbyggda rollen Storage Blob Data Contributor , eller så kan du skapa en anpassad roll med begränsad behörighet att tilldela i stället. Mer information finns i az iot ops schema registry create.

    4. Förbereda klustret för Azure IoT Operations-distribution. Kopiera och kör det angivna kommandot az iot ops init .

      Dricks

      Kommandot init behöver bara köras en gång per kluster. Om du återanvänder ett kluster som redan har Azure IoT Operations version 0.8.0 distribuerat på det kan du hoppa över det här steget.

      Det kan ta flera minuter att slutföra det här kommandot. Du kan se förloppet i distributionsframsteget i terminalen.

    5. Distribuera Azure IoT-åtgärder. Kopiera och kör det angivna kommandot az iot ops create .

      Om du har följt de valfria förutsättningarna för att förbereda klustret för observerbarhet lägger du till följande valfria parametrar i create kommandot:

      Valfri parameter Värde beskrivning
      --ops-config observability.metrics.openTelemetryCollectorAddress=<FULLNAMEOVERRIDE>.azure-iot-operations.svc.cluster.local:<GRPC_ENDPOINT> Ange den OpenTelemetry-insamlareadress (OTel) som du konfigurerade i filen otel-collector-values.yaml.

      Exempelvärdena som används i Konfigurera observerbarhet är fullnameOverride=aio-otel-collector och grpc.enpoint=4317.
      --ops-config observability.metrics.exportInternalSeconds=<CHECK_INTERVAL> Ange det check_interval värde som du konfigurerade i filen otel-collector-values.yaml.

      Exempelvärdet som används i Konfigurera observerbarhet är check_interval=60.

      Det kan ta flera minuter att slutföra det här kommandot. Du kan se förloppet i distributionsframsteget i terminalen.

    6. Aktivera hemlig synkronisering för den distribuerade Azure IoT Operations-instansen. Kopiera och kör det angivna kommandot az iot ops secretsync enable .

      Det här kommandot:

      • Skapar en federerad identitetsautentiseringsuppgift med hjälp av den användartilldelade hanterade identiteten.
      • Lägger till en rolltilldelning till den användartilldelade hanterade identiteten för åtkomst till Azure Key Vault.
      • Lägger till en lägsta hemlighetsproviderklass som är associerad med Azure IoT Operations-instansen.
    7. Tilldela en användartilldelad hanterad identitet till den distribuerade Azure IoT Operations-instansen. Kopiera och kör det angivna kommandot az iot ops identity assign .

      Det här kommandot skapar en federerad identitetsautentiseringsuppgift med OIDC-utfärdaren av det angivna anslutna klustret och Azure IoT Operations-tjänstkontot.

  4. När alla Azure CLI-kommandon har slutförts kan du stänga guiden Installera Azure IoT Operations .

create När kommandot har slutförts har du en fungerande Azure IoT Operations-instans som körs i klustret. Nu är din instans konfigurerad för produktionsscenarier.

Verifiera distributionen

När distributionen är klar använder du az iot ops check för att utvärdera IoT Operations-tjänstdistributionen för hälsa, konfiguration och användbarhet. Kommandot check kan hjälpa dig att hitta problem i distributionen och konfigurationen.

az iot ops check

Kommandot check visar en varning om saknade dataflöden, vilket är normalt och förväntat tills du skapar ett dataflöde. Mer information finns i Bearbeta och dirigera data med dataflöden.

Du kan kontrollera konfigurationerna för ämneskartor, QoS och meddelandevägar genom att lägga till parametern --detail-level 2 i check kommandot för en utförlig vy.

Nästa steg

Om dina komponenter behöver ansluta till Azure-slutpunkter som SQL eller Fabric kan du lära dig hur du hanterar hemligheter för distributionen av Azure IoT Operations Preview.