ASP.NET-Anwendung für Windows Server in Compute Engine bereitstellen

1. Übersicht

ASP.NET ist ein Open-Source-Webframework zum Erstellen moderner Web-Apps und ‑Dienste mit .NET. ASP.NET erstellt Websites auf Basis von HTML5, CSS und JavaScript, die einfach und schnell sind und auf Millionen von Nutzern skaliert werden können.

In diesem Lab stellen Sie eine einfache ASP.NET-App auf einem Windows-Server bereit, der in Compute Engine ausgeführt wird. Dieses Codelab baut auf dem Codelab Windows-Server mit ASP.NET-Framework in Compute Engine bereitstellen auf. Vielleicht möchten Sie dieses Lab zuerst abschließen.

Außerdem benötigen Sie Visual Studio 2013 oder höher, um Ihre ASP.NET-App zu schreiben und in Compute Engine bereitzustellen.

Lerninhalte

  • Eine einfache ASP.NET-App erstellen
  • So führen Sie die ASP.NET-App lokal in Visual Studio aus.
  • So stellen Sie Ihre ASP.NET-App auf einem Windows-Server in Compute Engine bereit und führen sie dort aus.

Voraussetzungen

Wie werden Sie diese Anleitung verwenden?

Nur lesen Lesen und Übungen durchführen

Wie würden Sie Ihre Erfahrung mit der Google Cloud Platform bewerten?

Anfänger Mittelstufe Fortgeschritten

2. Einrichtung und Anforderungen

Umgebung zum selbstbestimmten Lernen einrichten

Sie sollten Ihr Google Cloud Platform-Projekt bereits aus dem vorherigen Lab haben. Es ist also nicht erforderlich, ein neues Projekt zu erstellen. Melden Sie sich in der Google Cloud Console ( console.cloud.google.com) an und wählen Sie das Projekt aus dem vorherigen Lab aus.

3. ASP.NET-App herunterladen

Laden Sie das Beispiel als ZIP-Datei herunter und entpacken Sie es.

Alternativ können Sie auch das Git-Repository klonen.

git clone https://github.com/GoogleCloudPlatform/getting-started-dotnet.git

In jedem Fall sollten Sie einen getting-started-dotnet-Ordner mit folgendem Inhalt haben.

1acce2c66bc3b8aa.png

4. Anwendung lokal ausführen

Doppelklicken Sie auf aspnet\1-hello-world\hello-world.sln. Dadurch wird die Lösung in Visual Studio geöffnet.

8a699ba7495ab79e.png

Sehen Sie sich WebApiConfig.cs. an. Es enthält einen einfachen HelloWorld-HTTP-Handler.

public class HelloWorldHandler : HttpMessageHandler
{
  protected override Task<HttpResponseMessage> SendAsync(
       HttpRequestMessage request,
       CancellationToken cancellationToken)
  {
    return Task.FromResult(new HttpResponseMessage()
    {
      Content = new ByteArrayContent(Encoding.UTF8.GetBytes("Hello World."))
    });
  }
};

Drücken Sie in Visual Studio F5, um die Anwendung zu erstellen und auszuführen. Nachdem Visual Studio die NuGet-Abhängigkeiten heruntergeladen und die App erstellt hat, sollte in Ihrem Browser die Meldung „Hello World“ angezeigt werden.

77768b92a41434c2.png

Wenn Sie sicher sind, dass die App lokal ausgeführt wird, drücken Sie Umschalt + F5, um die Anwendung zu beenden.

5. Windows Server mit ASP.NET Framework bereitstellen

In diesem Abschnitt erfahren Sie, wie Sie über den Cloud Marketplace in der Google Cloud Console eine neue Google Compute Engine-VM-Instanz mit installiertem Windows Server und ASP.NET Framework erstellen.

In der Google Cloud Console anmelden

Rufen Sie die Google Cloud Console in einem anderen Tab oder Fenster des Browsers unter https://console.cloud.google.com auf. Verwenden Sie die Anmeldedaten, die Sie bei der Registrierung für die Google Cloud Platform eingerichtet haben, oder die Anmeldedaten, die Ihnen vom Prüfungsaufsichtspersonal gegeben wurden.

f6cb1591046097da.png

Klicken Sie in der Google Cloud Console oben links auf das Menüsymbol für Produkte & Dienste:

32152624d878d9f8.png

Rufen Sie dann den Cloud Marketplace auf.

6c08c9a31e3a9c6c.png

Nach ASP.NET Framework suchen

Geben Sie ASP.NET ein, um nach ASP.NET Framework zu suchen, und klicken Sie dann auf das Ergebnisfeld unten.

d64d04962212c3c1.png

In Compute Engine starten

Klicken Sie auf dem nächsten Bildschirm auf In Compute Engine starten.

Beim Erstellen einer Instanz können Sie viele Parameter konfigurieren. Wir verwenden Folgendes:

Name

gcelab

Bereitstellungsname

windows-aspnet-instance

Zone

europe-west1-dWeitere Informationen zu Zonen finden Sie in der Dokumentation zu Regionen und Zonen.

Maschinentyp

1 vCPU (n1-standard-1)Der Maschinentyp „n1-standard-1“ mit 1 Kern und 3, 75 GiB RAM ist für unsere ASP.NET-Website mehr als ausreichend. Sie können jedoch auch kleinere oder größere Maschinen auswählen, bis hin zu 32 Kernen / 208 GiB RAM. Weitere Informationen zu benutzerdefinierten Maschinentypen finden Sie in der Dokumentation zu Maschinentypen.Hinweis: Für neue Projekte gilt standardmäßig ein Ressourcenkontingent, durch das die Anzahl der CPU-Kerne möglicherweise begrenzt wird. Sie können mehr für Ihre Projekte anfordern.

Windows Server-Betriebssystemversion

2016

Bootlaufwerktyp

Standard persistent diskHinweis:Optional können Sie ein leistungsstärkeres Solid State Drive (SSD) auswählen. Weitere Informationen finden Sie unter Speicheroptionen.

Laufwerksgröße in GB

100Wir verwenden den Standardwert von 100 GB, Sie können ihn aber je nach Bedarf anpassen.

Firewall

Allow HTTP traffic
Allow HTTPS traffic
Allow WebDeploy traffic
Allow RDP trafficBehalten Sie die Standardeinstellungen bei. Dadurch werden Firewallregeln erstellt, die HTTP- und HTTPS-Traffic sowie WebDeploy- und RDF-Traffic zulassen.

Klicken Sie auf Bereitstellen, um die neue VM-Instanz mit Windows Server und ASP.NET Framework zu erstellen. Sie werden auf eine neue Seite weitergeleitet, auf der Sie den Fortschritt sehen können.

3276c6d3647fd36.png

Wenn Sie fertig sind, rufen Sie im Menü auf der linken Seite Compute Engine auf und wählen Sie dann VM-Instanzen aus. Die neue virtuelle Maschine sollte in der Liste VM Instances (VM-Instanzen) angezeigt werden.

fc50b1cfd8b1f4b3.png

Wenn Sie auf Externe IP-Adresse klicken, sollte auch die Standard-IIS-Website angezeigt werden, die von der Instanz bereitgestellt wird.

iis.PNG

Sie können auch eine RDP-Verbindung zum Computer herstellen, müssen aber zuerst einen Windows-Nutzer und ein Windows-Passwort erstellen.

6. Windows-Nutzer und ‑Passwort erstellen

Wenn Sie einen Windows-Nutzer und ein Windows-Passwort erstellen möchten, wählen Sie Windows-Passwort erstellen oder zurücksetzen aus.

cf9b67269c4fa290.png

Dadurch wird ein neues Fenster geöffnet, in dem Sie einen Nutzer erstellen können. Behalten Sie die Standardeinstellung bei und wählen Sie Festlegen aus. Nach einigen Sekunden sollte das Dialogfeld Neues Windows-Passwort mit dem neu erstellten Passwort angezeigt werden. Notieren Sie sich das Passwort, da Sie es im nächsten Abschnitt benötigen.

7. Anwendung auf Ihrem Windows Server in Compute Engine bereitstellen

Es ist an der Zeit, Ihre Anwendung auf einem Windows Server bereitzustellen, der auf einer Compute Engine-Instanz ausgeführt wird.

Zuerst müssen Sie die externe IP-Adresse der Compute Engine-Instanz ermitteln, die Sie in Windows-Server mit ASP.NET-Framework in Compute Engine bereitstellen bereitgestellt haben. Rufen Sie in der Cloud Console „Compute“ > „VM-Instanzen“ auf, suchen Sie Ihre Instanz und notieren Sie sich ihre externe IP-Adresse.

8163b495fda4a4c5.png

Jetzt benötigen Sie den Windows-Nutzernamen und das Passwort, die Sie im vorherigen Schritt erstellt haben.

Klicken Sie in Visual Studio im Projektmappen-Explorer mit der rechten Maustaste auf Ihr Projekt und wählen Sie im Kontextmenü Veröffentlichen aus.

31dc67741553583e.png

Wählen Sie im Dialogfeld Web veröffentlichen als Ziel für die Veröffentlichung Benutzerdefiniert.

Geben Sie im Dialogfeld Neues benutzerdefiniertes Profil einen Namen für das Bereitstellungsprofil ein und klicken Sie auf „OK“.

Füllen Sie Ihr Profil so aus:

Server

The external IP address of your Compute Engine instance. This address can be found on the Seite „VM-Instanzen“ in the Cloud Console. The IP address is kurzlebig, which is sufficient for our purposes.

Name der Website

Default Web SiteHinweis: Der hier angegebene Websitename muss mit dem Namen übereinstimmen, der in IIS Manager auf Ihrer Compute Engine-Instanz angezeigt wird.

Nutzername

The username of the Windows user account you created on your Compute Engine instance.

Passwort

The password of the Windows user account you created on your Compute Engine instance.

Ziel-URL

http://Hinweis: Die Ziel-URL ist die Adresse, unter der Ihre Seite nach der Bereitstellung aufgerufen werden kann.

Klicken Sie auf Verbindung prüfen, um die Richtigkeit der Einstellungen sicherzustellen.

5587e66e1f61acd6.png

Da bei der Microsoft IIS-Installation in Ihrer Bereitstellung standardmäßig ein selbst signiertes Zertifikat verwendet wird, wird während des Validierungsprozesses ein Zertifikatsfehler angezeigt. Klicken Sie das Kästchen Dieses Zertifikat für zukünftige Sitzungen von Visual Studio speichern an und klicken Sie auf Akzeptieren, um das Zertifikat zu akzeptieren.

e7cc4bdef3064b9b.png

Wenn Ihre Konfiguration gültig ist, klicken Sie auf Einstellungen. Klicken Sie auf Datei > Veröffentlichungsoptionen und setzen Sie ein Häkchen bei Zusätzliche Dateien am Zielort entfernen. Das ist wichtig für spätere Schritte, wenn Sie neue Websites auf derselben Compute Engine-Instanz veröffentlichen.

1014554485ba6720.png

Klicken Sie auf Veröffentlichen, um die Anwendung bereitzustellen. Nach Abschluss der Veröffentlichung öffnet Visual Studio die Anwendung in Ihrem Standardwebbrowser.

feab07f5ac573240.png

8. Bereinigen

Geschafft! Jetzt ist es an der Zeit, die verwendeten Ressourcen zu bereinigen, um Kosten zu sparen und nicht mehr benötigte Ressourcen für andere freizugeben.

Sie können die Instanzen entweder löschen oder einfach beenden. Beachten Sie jedoch, dass für beendete Instanzen weiterhin Speicherkosten anfallen können.

a3152ac7b76cdd4e.png

Sie können natürlich auch das gesamte Projekt löschen. In diesem Fall gehen jedoch alle Abrechnungseinstellungen verloren, die Sie vorgenommen haben. Dazu müssen Sie zuerst die Projektabrechnung deaktivieren. Wenn Sie ein Projekt löschen, wird die Abrechnung erst nach Ablauf des aktuellen Abrechnungszeitraums eingestellt.

9. Glückwunsch!

Google Compute Engine ist die Grundlage für IaaS (Infrastructure as a Service) der Google Cloud Platform. Wie Sie gesehen haben, ist es ganz einfach, eine ASP.NET-App auf Windows Server in Compute Engine bereitzustellen.

Behandelte Themen

  • Eine einfache ASP.NET-App erstellen
  • So führen Sie die ASP.NET-App lokal in Visual Studio aus.
  • So stellen Sie Ihre ASP.NET-App auf einem Windows-Server in Compute Engine bereit und führen sie dort aus.

Nächste Schritte

Lizenz

Dieser Text ist mit einer Creative Commons Attribution 2.0 Generic License lizenziert.

/