Dela via


Distribuera acceleratorn fjärrövervakningslösning lokalt – Visual Studio Code

Den här artikeln visar hur du distribuerar acceleratorn fjärrövervakningslösning till din lokala dator för testning och utveckling. Du lär dig hur du kör mikrotjänsterna i Visual Studio Code. En lokal mikrotjänstdistribution använder följande molntjänster: IoT Hub, Cosmos DB, Azure Streaming Analytics och Azure Time Series Insights.

Förutsättningar

Om du vill distribuera De Azure-tjänster som används av acceleratorn fjärrövervakningslösning behöver du en aktiv Azure-prenumeration.

Om du inte har något konto kan du skapa ett kostnadsfritt utvärderingskonto på bara några minuter. Mer information om den kostnadsfria utvärderingsversionen av Azure finns Kostnadsfri utvärderingsversion av Azure.

Datorinstallation

För att slutföra den lokala distributionen behöver du följande verktyg installerade på den lokala utvecklingsdatorn:

Anteckning

Visual Studio Code är tillgängligt för Windows, Mac och Ubuntu.

Ladda ned källkoden

Lagringsplatserna för källkod för fjärrövervakning innehåller källkoden och de Docker-konfigurationsfiler som du behöver för att köra Docker-avbildningarna för mikrotjänster.

Om du vill klona och skapa en lokal version av lagringsplatsen använder du kommandoradsmiljön för att navigera till en lämplig mapp på den lokala datorn. Kör sedan någon av följande uppsättningar kommandon för att klona antingen .NET-lagringsplatsen:

Om du vill ladda ned den senaste versionen av .NET-mikrotjänstimplementeringarna kör du:

git clone --recurse-submodules https://github.com/Azure/azure-iot-pcs-remote-monitoring-dotnet.git

# To retrieve the latest submodules, run the following command:

cd azure-iot-pcs-remote-monitoring-dotnet
git submodule foreach git pull origin master

Anteckning

Dessa kommandon laddar ned källkoden för alla mikrotjänster utöver de skript som du använder för att köra mikrotjänsterna lokalt. Även om du inte behöver källkoden för att köra mikrotjänsterna i Docker är källkoden användbar om du senare planerar att ändra lösningsacceleratorn och testa ändringarna lokalt.

Distribuera Azure-tjänsterna

Även om den här artikeln visar hur du kör mikrotjänsterna lokalt är de beroende av Azure-tjänster som körs i molnet. Använd följande skript för att distribuera Azure-tjänsterna. Följande skriptexempel förutsätter att du använder .NET-lagringsplatsen på en Windows-dator. Om du arbetar i en annan miljö justerar du sökvägarna, filnamnstilläggen och sökvägsavgränsarna på rätt sätt.

Skapa nya Azure-resurser

Om du inte har skapat de Nödvändiga Azure-resurserna än följer du dessa steg:

  1. I kommandoradsmiljön navigerar du till mappen \services\scripts\local\launch i den klonade kopian av lagringsplatsen.

  2. Kör följande kommandon för att installera CLI-verktyget pcs och logga in på ditt Azure-konto:

    npm install -g iot-solutions
    pcs login
    
  3. Kör start.cmd-skriptet . Skriptet uppmanar dig att ange följande information:

    • Ett lösningsnamn.

    • Den Azure-prenumeration som ska användas.

    • Platsen för det Azure-datacenter som ska användas.

      Skriptet skapar en resursgrupp i Azure med ditt lösningsnamn. Den här resursgruppen innehåller de Azure-resurser som lösningsacceleratorn använder. Du kan ta bort den här resursgruppen när du inte längre behöver motsvarande resurser.

      Skriptet lägger också till en uppsättning miljövariabler med prefixet PCS till den lokala datorn. Dessa miljövariabler innehåller information om fjärrövervakning för att kunna läsa från en Azure-Key Vault resurs. I den här Key Vault resursen läser fjärrövervakningen sina konfigurationsvärden från.

      Tips

      När skriptet har slutförts sparas även miljövariablerna i en fil som heter <din hemmapp>\.pcs\<solution name.env>. Du kan använda dem för framtida distributioner av lösningsacceleratorer. Observera att alla miljövariabler som anges på den lokala datorn åsidosätter värden i filen services\scripts\local\.env när du kör docker-compose.

  4. Avsluta kommandoradsmiljön.

Använda befintliga Azure-resurser

Om du redan har skapat nödvändiga Azure-resurser skapar du motsvarande miljövariabler på den lokala datorn. Ange miljövariablerna för följande:

  • PCS_KEYVAULT_NAME – Namnet på Azure Key Vault-resursen
  • PCS_AAD_APPID – AAD-program-ID
  • PCS_AAD_APPSECRET – AAD-programhemligheten

Konfigurationsvärden läse från den här Azure Key Vault-resursen. Dessa miljövariabler kan sparas i <filen home folder>\.pcs\<solution name.env> från distributionen. Observera att miljövariabler som anges på den lokala datorn åsidosätter värden i filen services\scripts\local\.env när du kör docker-compose.

En del av den konfiguration som krävs av mikrotjänsten lagras i en instans av Key Vault som skapades vid den första distributionen. Motsvarande variabler i nyckelvalvet bör ändras efter behov.

Kör mikrotjänsterna

I det här avsnittet kör du mikrotjänster för fjärrövervakning. Du kör webbgränssnittet internt, enhetssimuleringstjänsten i Docker och mikrotjänsterna i Visual Studio Code.

Skapa koden

Gå till azure-iot-pcs-remote-monitoring-dotnet\services i kommandotolken och kör följande kommandon för att skapa koden.

dotnet restore
dotnet build -c Release

Distribuera alla andra mikrotjänster på den lokala datorn

Följande steg visar hur du kör mikrotjänster för fjärrövervakning i Visual Studio Code:

  1. Starta Visual Studio Code.
  2. Öppna mappen azure-iot-pcs-remote-monitoring-dotnet i VS Code.
  3. Skapa en ny mapp med namnet .vscode i mappen azure-iot-pcs-remote-monitoring-dotnet .
  4. Kopiera filerna launch.json och tasks.json från services\scripts\local\launch\idesettings\vscode till mappen .vscode som du nyss skapade.
  5. Öppna felsökningspanelen i VS Code och kör konfigurationen Kör alla mikrotjänster . Den här konfigurationen kör enhetssimuleringsmikrotjänsten i Docker och kör de andra mikrotjänsterna i felsökningsprogrammet.

Utdata från körning av Kör alla mikroenheter i felsökningskonsolen ser ut så här:

Distribuera lokala mikrotjänster

Kör webbgränssnittet

I det här steget startar du webbgränssnittet. Gå till mappen azure-iot-pcs-remote-monitoring-dotnet\webui i din lokala kopia och kör följande kommandon:

npm install
npm start

När starten är klar visar webbläsaren sidan http://localhost:3000/dashboard. Felen på den här sidan förväntas. Om du vill visa programmet utan fel slutför du följande steg.

Konfigurera och köra NGINX

Konfigurera en omvänd proxyserver för att länka webbappen och mikrotjänster som körs på den lokala datorn:

  • Kopiera filen nginx.conf från mappen webui\scripts\localhost till installationskatalogen nginx\conf .
  • Kör nginx.

Mer information om hur du kör nginx finns i nginx för Windows.

Anslut till instrumentpanelen

Om du vill komma åt instrumentpanelen för fjärrövervakningslösningen går du till http://localhost:9000 i webbläsaren.

Rensa

För att undvika onödiga avgifter tar du bort molntjänsterna från din Azure-prenumeration när du är klar med testningen. Om du vill ta bort tjänsterna navigerar du till Azure Portal och tar bort resursgruppen som start.cmd-skriptet skapade.

Du kan också ta bort den lokala kopian av fjärrövervakningslagringsplatsen som skapades när du klonade källkoden från GitHub.

Nästa steg

Nu när du har distribuerat fjärrövervakningslösningen är nästa steg att utforska funktionerna i lösningsinstrumentpanelen.