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

1. Panoramica

ASP.NET è un framework web open source per creare app e servizi web moderni con .NET. ASP.NET crea siti web basati su HTML5, CSS e JavaScript in modo semplice, veloce e scalabile per milioni di utenti.

In questo lab eseguirai il deployment di una semplice app ASP.NET su Windows Server in esecuzione su Compute Engine. Questo codelab si basa sul codelab Deploy Windows Server with ASP.NET Framework to Compute Engine. Ti consigliamo di completare prima quel lab.

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

Obiettivi didattici

  • Come creare una semplice app ASP.NET.
  • Come eseguire l'app ASP.NET localmente in Visual Studio.
  • Scopri come eseguire il deployment dell'app ASP.NET ed eseguirla in un server Windows su Compute Engine.

Che cosa ti serve

Come utilizzerai questo tutorial?

Solo lettura Leggilo e completa gli esercizi

Come valuteresti la tua esperienza con la piattaforma Google Cloud?

Principiante Livello intermedio Eccellente

2. Configurazione e requisiti

Configurazione dell'ambiente da seguire in modo autonomo

Dovresti già avere il progetto Google Cloud del lab precedente, quindi non è necessario crearne uno nuovo. Accedi alla console della piattaforma 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 relativo repository Git.

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

In ogni caso, dovresti avere una cartella getting-started-dotnet con il seguente contenuto.

1acce2c66bc3b8aa.png

4. Esegui l'applicazione in locale

Fai doppio clic su aspnet\1-hello-world\hello-world.sln. La soluzione viene aperta 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, nel browser dovresti vedere un popup Hello World.

77768b92a41434c2.png

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

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

In questa sezione scopriremo come creare una nuova istanza di macchina virtuale Google Compute Engine con Windows Server e ASP.NET Framework installati utilizzando Cloud Marketplace da Google Cloud Console.

Accedere alla console Google Cloud

Passa alla console Google Cloud da https://console.cloud.google.com da un'altra scheda o finestra del browser. Utilizza le credenziali di accesso che hai configurato al momento della registrazione a Google Cloud Platform o quelle che ti sono state fornite dal supervisore del lab.

f6cb1591046097da.png

Nella console Google Cloud, fai clic sull'icona Menu per Prodotti e servizi nella parte superiore sinistra dello schermo:

32152624d878d9f8.png

Quindi vai a Cloud Marketplace.

6c08c9a31e3a9c6c.png

Cerca ASP.NET Framework

Digita ASP.NET per cercare ASP.NET Framework, quindi fai clic sulla casella dei risultati di seguito.

d64d04962212c3c1.png

Lancio 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-dUlteriori informazioni sulle zone in Regioni e documentazione relativa alle zone.

Tipo di macchina

1 vCPU (n1-standard-1)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, arrivando fino a 32 core / 208 GiB di RAM. Scopri di più su questo tipo di macchina e sui tipi di macchina personalizzata nella documentazione relativa ai tipi di macchine.Nota: un nuovo progetto ha una quota di risorse predefinita, che potrebbe limitare il numero di core CPU. Puoi richiedere altre risorse per i tuoi progetti.

Versione del sistema operativo Windows Server

2016

Tipo di disco di avvio

Standard persistent diskNota: facoltativamente, puoi scegliere un'unità disco a stato solido (SSD) più performante. Vedi Opzioni di archiviazione.

Dimensioni del disco in GB

Stiamo utilizzando il valore predefinito di 100 GB, ma puoi regolarlo su un valore maggiore o minore a seconda delle 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 insieme al traffico WebDeploy e RDF.

Fai clic su Esegui il deployment per creare la nuova istanza di macchina virtuale con Windows Server e ASP.NET Framework. Verrà visualizzata una nuova pagina in cui potrai vedere l'avanzamento.

3276c6d3647fd36.png

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

fc50b1cfd8b1f4b3.png

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

iis.PNG

Tieni presente che puoi anche eseguire il desktop remoto (RDP) nella macchina, ma prima dobbiamo creare un utente e una password Windows.

6. Creare un utente e una password Windows

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

cf9b67269c4fa290.png

Si aprirà una nuova finestra in cui potrai creare un utente. Mantieni l'impostazione predefinita e seleziona Imposta. Dopo alcuni secondi, dovresti visualizzare la finestra di dialogo Nuova password di Windows con la password appena creata. Annota la password, che ti servirà nella sezione successiva.

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

È il momento di eseguire il deployment della tua applicazione su un Windows Server in esecuzione su un'istanza Compute Engine.

Innanzitutto, devi trovare l'IP esterno dell'istanza Compute Engine di cui hai eseguito il deployment in Deployment di Windows Server con ASP.NET Framework in Compute Engine. Nella console Cloud, vai su Compute > istanze VM, trova la tua istanza e annota il suo indirizzo IP esterno.

8163b495fda4a4c5.png

Ora ti serviranno il nome utente e la password 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 sul web, seleziona Personalizzato come target 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 delle istanze VM in the Cloud Console. The IP address is temporanea, which is sufficient for our purposes.

Nome sito

Default Web SiteNota: il nome del sito specificato qui deve corrispondere a quello visualizzato nel gestore IIS nell'istanza di 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 al quale 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 nel deployment utilizza un certificato autofirmato per impostazione predefinita, durante il processo di convalida verrà visualizzato un errore di 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 file e seleziona Rimuovi i 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 ripulire le risorse che hai utilizzato (per risparmiare sui costi ed essere un buon cittadino del cloud).

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

a3152ac7b76cdd4e.png

Ovviamente, puoi anche eliminare l'intero progetto, ma perderai tutte le impostazioni di fatturazione già eseguite (è 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, è abbastanza facile eseguire il deployment di un'app ASP.NET in Windows Server su Compute Engine.

Argomenti trattati

  • Come creare una semplice app ASP.NET.
  • Come eseguire l'app ASP.NET localmente in Visual Studio.
  • Scopri come eseguire il deployment dell'app ASP.NET ed eseguirla in un server Windows su Compute Engine.

Passaggi successivi

Licenza

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

/