Een Node.js-toepassing hosten in Azure Service Fabric

In deze snelstartgids wordt uitgelegd hoe u een bestaande toepassing (Node.js in dit voorbeeld) kunt implementeren in een Service Fabric-cluster in Azure.

Vereisten

Voordat u aan de slag gaat, moet u ervoor zorgen dat u uw ontwikkelomgeving hebt ingesteld, waaronder het installeren van de Service Fabric SDK en Visual Studio 2019 of 2015.

U moet ook beschikken over een bestaande Node.js-toepassing voor implementatie. Deze snelstartgids maakt gebruik van een eenvoudige Node.js-website die hier kan worden gedownload. Pak dit bestand uit in de map <path-to-project>\ApplicationPackageRoot\<package-name>\Code\ nadat u het project in de volgende stap hebt gemaakt.

Als u nog geen abonnement op Azure hebt, maakt u een gratis account aan.

De service maken

Start Visual Studio als beheerder.

Maak een project met CTRL+SHIFT+N

Kies in het dialoogvenster Nieuw projectde optie Cloud > Service Fabric-toepassing.

Geef de toepassing de naam MyGuestApp en druk op Maken.

Belangrijk

Node.js kan gemakkelijk de limiet van 260 tekens overschrijden voor paden in Windows. Gebruik een kort pad voor het project zelf, zoals c:\code\svc1. U kunt desgewenst deze instructies volgen om lange bestandspaden in te schakelen in Windows 10.

Dialoogvenster voor nieuw project in Visual Studio

In het volgende dialoogvenster kunt u elk type Service Fabric-service maken. Kies voor deze snelstartgids Door gast uitvoerbaar bestand.

Noem de service MyGuestService en stel de opties aan de rechterkant in op de volgende waarden:

Instelling Waarde
Map met codepakket <de map met uw Node.js-app>
Gedrag codepakket Mapinhoud naar project kopiëren
Programma node.exe
Argumenten server.js
Werkmap CodePackage

Druk op OK.

Dialoogvenster voor nieuwe service in Visual Studio

Visual Studio maakt het toepassingsproject en het actorserviceproject en geeft deze weer in Solution Explorer.

Het toepassingsproject (MyGuestApp) bevat geen code rechtstreeks. Het project verwijst naar een set serviceprojecten. Het bevat ook drie andere typen inhoud:

  • Profielen publiceren
    Hulpprogrammavoorkeuren voor verschillende omgevingen.

  • Scripts
    PowerShell-script voor het implementeren/bijwerken van uw toepassing.

  • Toepassingsdefinitie
    Bevat het manifest van de toepassing onder ApplicationPackageRoot. Gekoppelde bestanden met toepassingsparameters vindt u onder ApplicationParameters, die de toepassing definiëren en waarmee u deze specifiek voor een bepaalde omgeving kunt configureren.

Zie Aan de slag met Reliable Services voor een overzicht van de inhoud van het serviceproject.

Netwerkservice instellen

De voorbeeld-Node.js-app die we implementeren gebruikt poort 80 en we moeten Service Fabric doorgeven dat deze poort open moet zijn.

Open het bestand ServiceManifest.xml in het project. Onderaan het manifest ziet u een met een <Resources> \ <Endpoints> vermelding die al is gedefinieerd. Wijzig deze vermelding om Port, Protocol en Type toe te voegen.

  <Resources>
    <Endpoints>
      <!-- This endpoint is used by the communication listener to obtain the port on which to 
           listen. Please note that if your service is partitioned, this port is shared with 
           replicas of different partitions that are placed in your code. -->
      <Endpoint Name="MyGuestAppServiceTypeEndpoint" Port="80" Protocol="http" Type="Input" />
    </Endpoints>
  </Resources>

Implementeren op Azure

Als u op F5 drukt en het project uitvoert, wordt het geïmplementeerd in het lokale cluster. Echter, we gaan in plaats daarvan implementeren in Azure.

Klik met de rechtermuisknop op het project en kies Publiceren... Er wordt een dialoogvenster geopend waarin u kunt aangeven dat u naar Azure wilt publiceren.

Dialoogvenster Publiceren naar Azure voor een Service Fabric-service

Selecteer het doelprofiel PublishProfiles\Cloud.xml.

Kies een Azure-account waarnaar u wilt implementeren als u dit nog niet hebt gedaan. Als u er nog geen hebt, meldt u zich er voor een aan.

Selecteer onder Verbindingseindpunt het Service Fabric-cluster waarin u wilt implementeren. Als u nog geen cluster hebt, selecteert u <Nieuw cluster maken...> om het browservenster te openen met de Azure Portal. Zie Een cluster maken in de portal voor meer informatie.

Wanneer u de Service Fabric-cluster maakt, zorg er dan voor dat u de Aangepaste eindpunten instelt op 80.

Service Fabric-knooppuntconfiguratie met aangepast eindpunt

Het maken van een nieuw Service Fabric-cluster neemt enige tijd in beslag. Zodra het is gemaakt, gaat u terug naar het publicatiedialoogvenster en selecteert u <Vernieuwen>. Het nieuwe cluster wordt vermeld in de vervolgkeuzelijst; selecteer het.

Druk op Publiceren en wacht tot de implementatie is voltooid.

Dit kan enkele minuten duren. Nadat deze is voltooid, kan het nog enkele minuten duren voordat de toepassing volledig beschikbaar is.

De website testen

Test uw service na publicatie in een webbrowser.

Open eerst Azure Portal en zoek uw Service Fabric-service op.

Controleer de overzichtsblade van het serviceadres. Gebruik de domeinnaam van de eigenschap Eindpunt van de clientverbinding. Bijvoorbeeld http://mysvcfab1.westus2.cloudapp.azure.com.

Overzichtsblade van Service Fabric in Azure Portal

Navigeer naar dit adres waar u het HELLO WORLD antwoord ziet.

Het cluster verwijderen

Vergeet niet om alle resources te verwijderen die u voor deze quickstart hebt gemaakt, omdat er kosten in rekening worden gebracht voor deze resources.

Volgende stappen

Lees meer over door gast uitvoerbare bestanden.