Déployer une application ASP.NET sur Windows Server sur Compute Engine

1. Présentation

ASP.NET est un framework Web Open Source permettant de créer des applications et des services Web modernes avec .NET. ASP.NET crée des sites Web basés sur HTML5, CSS et JavaScript, qui sont simples, rapides et peuvent évoluer pour accueillir des millions d'utilisateurs.

Dans cet atelier, vous allez déployer une application ASP.NET simple sur Windows Server exécuté sur Compute Engine. Cet atelier de programmation s'appuie sur l'atelier de programmation Déployer Windows Server avec le framework ASP.NET sur Compute Engine. Nous vous conseillons de commencer par cet atelier.

De plus, vous aurez besoin de Visual Studio 2013 ou version ultérieure pour écrire votre application ASP.NET et la déployer sur Compute Engine.

Points abordés

  • Créer une application ASP.NET simple
  • Comment exécuter l'application ASP.NET en local dans Visual Studio.
  • Découvrez comment déployer et exécuter votre application ASP.NET sur un serveur Windows sur Compute Engine.

Prérequis

Comment allez-vous utiliser ce tutoriel ?

Je vais le lire uniquement Je vais le lire et effectuer les exercices

Quel est votre niveau d'expérience avec Google Cloud Platform ?

Débutant Intermédiaire Expert

2. Préparation

Configuration de l'environnement au rythme de chacun

Vous devriez déjà avoir votre projet Google Cloud Platform du précédent atelier. Il n'est donc pas nécessaire d'en créer un autre. Connectez-vous à la console Google Cloud Platform ( console.cloud.google.com) et sélectionnez le projet de l'atelier précédent.

3. Télécharger l'application ASP.NET

Téléchargez l'exemple sous forme de fichier ZIP et extrayez-le.

Vous pouvez également cloner son dépôt git.

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

Dans tous les cas, vous devriez disposer d'un dossier getting-started-dotnet avec le contenu suivant.

1acce2c66bc3b8aa.png

4. Exécuter l'application en local

Double-cliquez sur aspnet\1-hello-world\hello-world.sln. La solution s'ouvre dans Visual Studio.

8a699ba7495ab79e.png

Consultez WebApiConfig.cs.. Il inclut un simple gestionnaire 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."))
    });
  }
};

Dans Visual Studio, appuyez sur F5 pour compiler et exécuter l'application. Une fois que Visual Studio a téléchargé les dépendances NuGet et compilé l'application, un message "Hello World" devrait s'afficher dans votre navigateur.

77768b92a41434c2.png

Une fois que vous êtes certain que l'application s'exécute en local, appuyez sur Maj+F5 pour l'arrêter.

5. Déployer Windows Server avec le framework ASP.NET

Dans cette section, nous allons apprendre à créer une instance de machine virtuelle Google Compute Engine avec Windows Server et ASP.NET Framework installés à l'aide de Cloud Marketplace depuis la console Google Cloud.

Se connecter à la console Google Cloud

Accédez à la console Google Cloud depuis un autre onglet ou une autre fenêtre de navigateur, à l'adresse https://console.cloud.google.com. Utilisez les identifiants de connexion que vous avez définis lorsque vous vous êtes inscrit à Google Cloud Platform ou ceux qui vous ont été fournis par le responsable de l'atelier.

f6cb1591046097da.png

Dans la console Google Cloud, cliquez sur l'icône de menu Produits et services en haut à gauche de l'écran :

32152624d878d9f8.png

Accédez ensuite à Cloud Marketplace.

6c08c9a31e3a9c6c.png

Rechercher ASP.NET Framework

Saisissez ASP.NET pour rechercher ASP.NET Framework, puis cliquez sur la zone de résultats ci-dessous.

d64d04962212c3c1.png

Lancer sur Compute Engine

Sur l'écran suivant, cliquez sur Lancer sur Compute Engine.

Vous pouvez configurer de nombreux paramètres lors de la création d'une instance. Prenons l'exemple suivant :

Nom

gcelab

Nom de déploiement

windows-aspnet-instance

Zone

europe-west1-d Pour en savoir plus sur les zones, consultez la documentation sur les régions et les zones.

Type de machine

1 vCPU (n1-standard-1)Le type n1-standard-1 est plus que suffisant pour notre site Web ASP.NET, avec 1 cœur et 3,75 Gio de RAM. Toutefois, vous pouvez sélectionner des machines plus petites ou plus grandes, jusqu'à 32 cœurs / 208 Gio de RAM. Pour en savoir plus sur ce sujet et sur les types de machines personnalisés, consultez la documentation sur les types de machines.Remarque : Un nouveau projet dispose d'un quota de ressources par défaut, ce qui peut limiter le nombre de cœurs de processeur disponibles. Vous pouvez en demander davantage pour vos projets.

Version de l'OS Windows Server

2016

Boot Disk Type (Type de disque de démarrage)

Standard persistent diskRemarque : Vous pouvez éventuellement choisir un disque dur SSD (Solid State Drive) plus performant. Consultez Options de stockage.

Taille du disque en Go

100 : nous utilisons la valeur par défaut de 100 Go, mais vous pouvez l'ajuster à la hausse ou à la baisse selon vos besoins.

Pare-feu

Allow HTTP traffic
Allow HTTPS traffic
Allow WebDeploy traffic
Allow RDP trafficConservez les valeurs par défaut, qui créeront des règles de pare-feu pour autoriser le trafic HTTP et HTTPS, ainsi que le trafic WebDeploy et RDF.

Cliquez sur Déployer pour créer l'instance de machine virtuelle avec Windows Server et le framework ASP.NET. Vous êtes redirigé vers une nouvelle page où vous pouvez suivre l'avancement de l'opération.

3276c6d3647fd36.png

Une fois l'opération terminée, accédez à Compute Engine dans le menu de gauche, puis sélectionnez Instances de VM. La nouvelle machine virtuelle doit s'afficher dans la liste Instances de VM.

fc50b1cfd8b1f4b3.png

Si vous cliquez sur Adresse IP externe, vous devriez également voir le site Web IIS par défaut diffusé à partir de l'instance.

iis.PNG

Notez que vous pouvez également utiliser le Bureau à distance (RDP) pour accéder à la machine, mais nous devons d'abord créer un utilisateur et un mot de passe Windows.

6. Créer un utilisateur et un mot de passe Windows

Pour créer un utilisateur et un mot de passe Windows, sélectionnez Créer ou réinitialiser le mot de passe Windows.

cf9b67269c4fa290.png

Une nouvelle fenêtre s'ouvre, dans laquelle vous pouvez créer un utilisateur. Conservez la valeur par défaut et sélectionnez Définir. Au bout de quelques secondes, une boîte de dialogue Nouveau mot de passe Windows devrait s'afficher avec le mot de passe que vous venez de créer. Notez le mot de passe, car vous en aurez besoin dans la section suivante.

7. Déployer l'application sur votre serveur Windows sur Compute Engine

Il est temps de déployer votre application sur un serveur Windows Server s'exécutant sur une instance Compute Engine.

Vous devez d'abord trouver l'adresse IP externe de l'instance Compute Engine que vous avez déployée dans Déployer Windows Server avec le framework ASP.NET sur Compute Engine. Dans la console Cloud, accédez à Compute > Instances de VM, recherchez votre instance et notez son adresse IP externe.

8163b495fda4a4c5.png

Vous aurez besoin du nom d'utilisateur et du mot de passe Windows que vous avez créés à l'étape précédente.

Dans l'explorateur de solutions de Visual Studio, effectuez un clic droit sur votre projet, puis sélectionnez Publier dans le menu contextuel.

31dc67741553583e.png

Dans la boîte de dialogue Publish Web (Publier sur le Web), sélectionnez Custom (Personnalisé) comme cible de publication.

Dans la boîte de dialogue New Custom Profile (Nouveau profil personnalisé), saisissez un nom pour le profil de déploiement, puis cliquez sur OK.

Remplissez votre profil comme suit.

sur le serveur GAIA

The external IP address of your Compute Engine instance. This address can be found on the Page "Instances de VM" in the Cloud Console. The IP address is éphémère, which is sufficient for our purposes.

Nom du site

Default Web SiteRemarque : Le nom de site que vous indiquez ici doit correspondre à celui qui apparaît dans le Gestionnaire IIS sur votre instance Compute Engine.

Nom d'utilisateur

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

Mot de passe

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

Destination URL

http://Remarque : L'URL de destination est l'adresse à laquelle votre page sera accessible une fois déployée.

Cliquez sur Valider la connexion pour vérifier que les propriétés sont correctes.

5587e66e1f61acd6.png

Étant donné que l'installation de Microsoft IIS intégrée à votre déploiement utilise un certificat autosigné par défaut, un message Certificate Error (Erreur de certificat) s'affiche pendant le processus de validation. Cochez la case Save this certificate for future sessions of Visual Studio (Enregistrer ce certificat pour les futures sessions de Visual Studio), puis cliquez sur Accept (Accepter) pour accepter le certificat.

e7cc4bdef3064b9b.png

Si votre configuration est valide, cliquez sur Paramètres. Cliquez sur File Publish Options (Options de publication des fichiers), puis cochez la case Remove additional files at destination (Supprimer les fichiers supplémentaires à l'emplacement de destination). Cette étape est importante pour plus tard, lorsque vous publierez de nouveaux sites Web sur la même instance Compute Engine.

1014554485ba6720.png

Cliquez sur Publier pour déployer l'application. Une fois la publication terminée, Visual Studio ouvre l'application dans votre navigateur Web par défaut.

feab07f5ac573240.png

8. Nettoyage

Et voilà ! Il est maintenant temps de nettoyer les ressources que vous avez utilisées (pour limiter vos dépenses et utiliser le cloud de manière raisonnée).

Vous pouvez supprimer les instances ou simplement les arrêter. Toutefois, n'oubliez pas que les instances arrêtées peuvent toujours entraîner des coûts liés au stockage.

a3152ac7b76cdd4e.png

Bien sûr, vous pouvez également supprimer l'intégralité du projet, mais vous perdrez toute configuration de facturation que vous avez effectuée (vous devez d'abord désactiver la facturation du projet). De plus, la suppression d'un projet n'empêche sa facturation qu'à la fin du cycle de facturation en cours.

9. Félicitations !

Google Compute Engine constitue la base de l'infrastructure en tant que service de Google Cloud Platform. Comme vous l'avez vu, il est assez facile de déployer une application ASP.NET sur Windows Server sur Compute Engine.

Points abordés

  • Créer une application ASP.NET simple
  • Comment exécuter l'application ASP.NET en local dans Visual Studio.
  • Découvrez comment déployer et exécuter votre application ASP.NET sur un serveur Windows sur Compute Engine.

Étapes suivantes

Licence

Ce document est publié sous une licence Creative Commons Attribution 2.0 Generic.

/