Procedure: Fouten opsporen in Windows-containers in Azure Service Fabric met behulp van Visual Studio 2019

Met Visual Studio 2019 kunt u fouten opsporen in .NET-toepassingen in containers als Service Fabric-services. In dit artikel wordt beschreven hoe u uw omgeving configureert en vervolgens fouten opspoort in een .NET-toepassing in een container die wordt uitgevoerd in een lokaal Service Fabric-cluster.

Vereisten

Uw ontwikkelomgeving configureren om fouten in containers op te sporen

  1. Zorg ervoor dat de Service Docker voor Windows wordt uitgevoerd voordat u doorgaat met de volgende stap.

  2. Ter ondersteuning van DNS-omzetting tussen containers moet u uw lokale ontwikkelcluster instellen met behulp van de computernaam. Deze stappen zijn ook nodig als u services wilt adresseren via de omgekeerde proxy.

    1. Open PowerShell als beheerder

    2. Navigeer naar de installatiemap van het SDK-cluster, meestal C:\Program Files\Microsoft SDKs\Service Fabric\ClusterSetup.

    3. Het script uitvoeren DevClusterSetup.ps1

        C:\Program Files\Microsoft SDKs\Service Fabric\ClusterSetup\DevClusterSetup.ps1
      

      Notitie

      U kunt de -CreateOneNodeCluster gebruiken om een cluster met één knooppunt in te stellen. De standaardinstelling maakt een lokaal cluster met vijf knooppunten.

      Zie DNS-service in Azure Service Fabric voor meer informatie over de DNS-service in Service Fabric. Zie Reverse proxy special handling for services running in containers (Omgekeerde proxyverwerking voor services die in containers worden uitgevoerd) voor meer informatie over het gebruik van omgekeerde proxy van Service Fabric van services die worden uitgevoerd in een container.

Bekende beperkingen bij het opsporen van fouten in containers in Service Fabric

Hieronder vindt u een lijst met bekende beperkingen met foutopsporingscontainers in Service Fabric en mogelijke oplossingen:

  • Het gebruik van localhost voor ClusterFQDNorIP biedt geen ondersteuning voor DNS-omzetting in containers.
    • Oplossing: stel het lokale cluster in met behulp van de computernaam (zie hierboven)
  • Als u Windows10 uitvoert op een virtuele machine, wordt er geen DNS-antwoord naar de container geretourneerd.
  • Het omzetten van services in dezelfde toepassing met behulp van de DNS-servicenaam werkt niet in Windows10, als de toepassing is geïmplementeerd met Docker Compose
  • Als u een IP-adres gebruikt voor ClusterFQDNorIP, wordt de DNS-functionaliteit verbroken als u het primaire IP-adres op de host wijzigt.
    • Oplossing: maak het cluster opnieuw met behulp van het nieuwe primaire IP-adres op de host of gebruik de computernaam. Deze onderbreking is standaard.
  • Als de FQDN waarmee het cluster is gemaakt, niet kan worden omgezet in het netwerk, mislukt DNS.
    • Oplossing: Maak het lokale cluster opnieuw met behulp van het primaire IP-adres van de host. Deze fout is standaard.
  • Wanneer u fouten in een container opspoort, zijn docker-logboeken alleen beschikbaar in het uitvoervenster van Visual Studio, niet via Service Fabric-API's, waaronder Service Fabric Explorer

Fouten opsporen in een .NET-toepassing die wordt uitgevoerd in Docker-containers in Service Fabric

  1. Voer Visual Studio uit als beheerder.

  2. Open een bestaande .NET-toepassing of maak een nieuwe.

  3. Klik met de rechtermuisknop op het project en selecteer Toevoegen -> Container Orchestrator-ondersteuning -> Service Fabric

  4. Druk op F5 om de foutopsporing in de toepassing te starten.

    Visual Studio ondersteunt console- en ASP.NET-projecttypen voor .NET en .NET Core.

Volgende stappen

Zie Overzicht van Service Fabric-containers voor meer informatie over de mogelijkheden van Service Fabric en containers.