Esegui il deployment dell'app ASP.NET in Windows Server su Compute Engine

1. Panoramica

ASP.NET è un framework web open source per la creazione di app e servizi web moderni con .NET. ASP.NET crea siti web basati su HTML5, CSS e JavaScript che sono semplici, veloci e possono essere scalati per milioni di utenti.

In questo lab, esegui il deployment di una semplice app ASP.NET su Windows Server in esecuzione su Compute Engine. Questo codelab si basa sul codelab Esegui il deployment di Windows Server con ASP.NET Framework su Compute Engine. Ti consigliamo di completare prima questo lab.

Inoltre, per scrivere l'app ASP.NET ed eseguirne il deployment su Compute Engine, avrai bisogno di Visual Studio 2013 o versioni successive.

Obiettivi didattici

  • Come creare una semplice app ASP.NET.
  • Come eseguire l'app ASP.NET in locale in Visual Studio.
  • Come eseguire il deployment e l'esecuzione dell'app ASP.NET su Windows Server in Compute Engine.

Che cosa ti serve

Come utilizzerai questo tutorial?

Leggilo e basta Leggilo e completa gli esercizi

Come valuteresti la tua esperienza con Google Cloud Platform?

Principiante Intermedio Avanzato

2. Configurazione e requisiti

Configurazione dell'ambiente autonomo

Dovresti già avere il progetto Google Cloud Platform del lab precedente, quindi non è necessario crearne uno nuovo. Accedi alla console Google Cloud ( console.cloud.google.com) e seleziona il progetto del lab precedente.

3. Scarica l'app ASP.NET

Scarica l'esempio come file ZIP ed estrailo.

In alternativa, puoi clonare il suo repository Git.

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

In entrambi i casi, dovresti avere una cartella getting-started-dotnet con i seguenti contenuti.

1acce2c66bc3b8aa.png

4. Esegui l'applicazione localmente

Fai doppio clic su aspnet\1-hello-world\hello-world.sln. Si apre la soluzione in Visual Studio.

8a699ba7495ab79e.png

Dai un'occhiata a WebApiConfig.cs.. Include un semplice gestore HTTP HelloWorld.

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."))
    });
  }
};

In Visual Studio, premi F5 per creare ed eseguire l'applicazione. Dopo che Visual Studio ha scaricato le dipendenze NuGet e creato l'app, dovresti visualizzare un messaggio Hello World nel browser.

77768b92a41434c2.png

Quando hai la certezza che l'app sia in esecuzione in locale, premi Maiusc+F5 per arrestarla.

5. Esegui il deployment di Windows Server con ASP.NET Framework

In questa sezione impareremo a creare una nuova istanza di macchina virtuale Google Compute Engine con Windows Server e ASP.NET Framework installati utilizzando Cloud Marketplace dalla console Google Cloud.

Accedi a Google Cloud Console

Vai alla console Google Cloud da un'altra scheda o finestra del browser, all'indirizzo https://console.cloud.google.com. Utilizza le credenziali di accesso che hai configurato quando ti sei registrato a Google Cloud o quelle che ti sono state fornite dal responsabile del lab.

f6cb1591046097da.png

Nella console Google Cloud, fai clic sull'icona del menu per Prodotti e servizi in alto a sinistra dello schermo:

32152624d878d9f8.png

Poi vai a Cloud Marketplace.

6c08c9a31e3a9c6c.png

Cercare ASP.NET Framework

Digita ASP.NET per cercare ASP.NET Framework e poi fai clic sulla casella dei risultati qui sotto.

d64d04962212c3c1.png

Avvia su Compute Engine

Nella schermata successiva, fai clic su Avvia su Compute Engine.

Ci sono molti parametri che puoi configurare quando crei una nuova istanza. Utilizziamo quanto segue:

Nome

gcelab

Nome deployment

windows-aspnet-instance

Zona

europe-west1-dScopri di più sulle zone nella documentazione relativa alle regioni e alle zone.

Tipo di macchina

1 vCPU (n1-standard-1)L'istanza n1-standard-1 è più che sufficiente per il nostro sito web ASP.NET, con 1 core e 3,75 GiB di RAM. Tuttavia, puoi selezionare macchine più piccole o più grandi, fino a 32 core / 208 GiB di RAM. Scopri di più su questo argomento e sui tipi di macchine personalizzate nella documentazione sui tipi di macchine.Nota: un nuovo progetto ha una quota di risorse predefinita, che può limitare il numero di core CPU. Puoi richiedere una quota maggiore per i tuoi progetti.

Versione del sistema operativo Windows Server

2016

Tipo di disco di avvio

Standard persistent diskNota:se vuoi, puoi scegliere un'unità a stato solido (SSD) più performante. Consulta la sezione Opzioni di archiviazione.

Dimensioni del disco in GB

100Utilizziamo il valore predefinito di 100 GB, ma puoi modificarlo in base alle tue esigenze.

Firewall

Allow HTTP traffic
Allow HTTPS traffic
Allow WebDeploy traffic
Allow RDP trafficMantieni i valori predefiniti, che creeranno regole firewall per consentire il traffico HTTP e HTTPS, nonché il traffico WebDeploy e RDF.

Fai clic su Deploy per creare la nuova istanza di macchina virtuale con Windows Server e ASP.NET Framework. Verrà visualizzata una nuova pagina in cui puoi vedere lo stato di avanzamento.

3276c6d3647fd36.png

Al termine, vai a Compute Engine dal menu a sinistra e poi seleziona Istanze VM. Dovresti vedere la nuova macchina virtuale nell'elenco Istanze VM.

fc50b1cfd8b1f4b3.png

Se fai clic su IP esterno, dovresti visualizzare anche il sito web IIS predefinito pubblicato dall'istanza.

iis.PNG

Tieni presente che puoi anche accedere alla macchina tramite Remote Desktop (RDP), ma prima devi creare un utente e una password Windows.

6. Creare un utente e una password di Windows

Per creare un utente e una password di Windows, seleziona Crea o reimposta la password di Windows.

cf9b67269c4fa290.png

Si aprirà una nuova finestra in cui potrai creare un utente. Mantieni il valore predefinito e seleziona Imposta. Dopo alcuni secondi, dovrebbe essere visualizzata la finestra di dialogo Nuova password di Windows con la password appena creata. Prendi nota della password, perché ti servirà nella sezione successiva.

7. Esegui il deployment dell'applicazione su Windows Server in Compute Engine

È il momento di eseguire il deployment dell'applicazione su un server Windows in esecuzione su un'istanza Compute Engine.

Innanzitutto, devi trovare l'IP esterno dell'istanza Compute Engine di cui hai eseguito il deployment in Esegui il deployment di Windows Server con ASP.NET Framework su Compute Engine. Nella console Google Cloud, vai a Compute > Istanze VM, individua la tua istanza e annota il relativo indirizzo IP esterno.

8163b495fda4a4c5.png

Ora avrai bisogno del nome utente e della password di Windows che hai creato nel passaggio precedente.

In Esplora soluzioni di Visual Studio, fai clic con il tasto destro del mouse sul progetto e seleziona Pubblica nel menu contestuale.

31dc67741553583e.png

Nella finestra di dialogo Pubblica web, seleziona Personalizzato come destinazione di pubblicazione.

Nella finestra di dialogo Nuovo profilo personalizzato, fornisci un nome per il profilo di deployment e fai clic su OK.

Compila il tuo profilo come segue.

Server

The external IP address of your Compute Engine instance. This address can be found on the Pagina Istanze VM in the Cloud Console. The IP address is temporaneo, which is sufficient for our purposes.

Nome del sito

Default Web SiteNota: il nome del sito che fornisci qui deve corrispondere a quello visualizzato in IIS Manager nell'istanza Compute Engine.

Nome utente

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

Password

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

URL di destinazione

http://Nota: l'URL di destinazione è l'indirizzo in cui la tua pagina sarà accessibile dopo il deployment.

Fai clic su Convalida connessione per assicurarti che le proprietà siano corrette.

5587e66e1f61acd6.png

Poiché l'installazione di Microsoft IIS nella tua implementazione utilizza un certificato autofirmato per impostazione predefinita, durante la procedura di convalida verrà visualizzato un errore del certificato. Seleziona la casella Salva questo certificato per le sessioni future di Visual Studio e fai clic su Accetta per accettare il certificato.

e7cc4bdef3064b9b.png

Se la configurazione è valida, fai clic su Impostazioni. Fai clic su Opzioni di pubblicazione dei file e seleziona Rimuovi file aggiuntivi nella destinazione. Questo è importante per i passaggi successivi, quando pubblichi nuovi siti web nella stessa istanza Compute Engine.

1014554485ba6720.png

Fai clic su Pubblica per eseguire il deployment dell'applicazione. Al termine della pubblicazione, Visual Studio apre l'applicazione nel browser web predefinito.

feab07f5ac573240.png

8. Esegui la pulizia

È tutto. Ora è il momento di pulire le risorse che hai utilizzato (per risparmiare sui costi ed essere un buon cittadino del cloud).

Puoi eliminare le istanze o semplicemente arrestarle, anche se tieni presente che le istanze arrestate possono comunque comportare costi relativi all'archiviazione.

a3152ac7b76cdd4e.png

Naturalmente, puoi anche eliminare l'intero progetto, ma perderai qualsiasi configurazione di fatturazione che hai eseguito (è necessario disattivare prima la fatturazione del progetto). Inoltre, l'eliminazione di un progetto ne interrompe la fatturazione solo al termine del ciclo di fatturazione corrente.

9. Complimenti!

Google Compute Engine è la base del servizio Infrastructure-as-a-Service di Google Cloud. Come hai visto, è piuttosto facile eseguire il deployment di un'app ASP.NET su Windows Server in Compute Engine.

Argomenti trattati

  • Come creare una semplice app ASP.NET.
  • Come eseguire l'app ASP.NET in locale in Visual Studio.
  • Come eseguire il deployment e l'esecuzione dell'app ASP.NET su Windows Server in Compute Engine.

Passaggi successivi

Licenza

Questo lavoro è concesso in licenza ai sensi di una licenza Creative Commons Attribution 2.0 Generic.

/