Application mobile: Création du service d’application Azure

Dans cet article invité de Kamil Mrzygłód, développeur de logiciels, architecte et MVP Microsoft Azure, vous apprendrez à créer Azure App Service. Vous verrez comment créer Azure App Service à l’aide du portail Azure et de Visual Studio. Chaque méthode peut être plus simple ou plus difficile, selon vos besoins actuels et les spécifications de votre application. Cependant, la force d’une offre Cloud et Platform as a Service (PaaS) réside dans le processus simple et intuitif de provisionnement des nouveaux composants de votre système.

Création d’Azure App Service à l’aide du portail Azure

Pour commencer avec App Service, je vais vous montrer comment créer votre toute première application web à l’aide du portail Azure. En fait, tout ce dont vous avez besoin est votre souris et votre clavier (car chaque application doit avoir un nom) – ni matériel externe ni informations de configuration détaillées ne sont nécessaires ici, car Azure fera tout pour vous.

Sélection d’Azure Web App parmi les services disponibles

Pour créer Azure App Service dans le portail Azure, vous devez d’abord le trouver dans la liste des services disponibles. Le moyen le plus simple de le faire est de cliquer sur le bouton + Créer une ressource et de rechercher Web App :

1.png

Noter
Au lieu d’utiliser le bouton + Créer une ressource, vous pouvez cliquer sur App Services – cela vous redirigera vers une vue différente, où vous pourrez créer un App Service en cliquant sur le bouton + Ajouter. Cela est vrai pour tous les services Azure les plus populaires, tels que les bases de données SQL, les machines virtuelles et les comptes de stockage.

Comme vous pouvez le voir, le portail Azure essaie de vous aider à trouver le service le plus pertinent pour la chaîne de recherche. Lorsque vous cliquez sur l’élément Web App, vous verrez un autre écran contenant plusieurs éléments similaires, tous liés d’une manière ou d’une autre à celui que vous recherchez :

2.png

Pour les besoins de cet exercice, sélectionnez Application Web, puis cliquez sur le bouton Créer en bas à droite de l’écran.

Noter
Au début, il est toujours plus facile de sélectionner l’option la plus générique lorsqu’il s’agit de choisir un service. Lorsque vous acquerrez plus d’expérience et que vous vous familiariserez avec les services disponibles, vous verrez qu’Azure propose de nombreuses configurations préconfigurées utiles (telles qu’une application Web intégrée et une base de données SQL), qui peuvent être utilisées pour raccourcir le développement et configurer tous les services en un seul endroit.

Configuration d’une application Web Azure

Lorsque vous cliquez sur le bouton Créer, vous verrez un écran où vous pourrez entrer toutes les informations nécessaires pour créer une application Web. Tous les champs obligatoires sont marqués d’un symbole * (astérisque) :

3.png

Comme vous pouvez le voir, lors de la création d’une application Web, nous devons remplir presque tous les champs (à une petite exception près concernant le bouton radio Application Insights, que nous aborderons dans les prochains chapitres). Concentrons-nous sur chaque domaine séparément, afin de mieux comprendre leur fonctionnement :

• Nom de l’application : ce champ représente le nom de domaine de votre application. Il est important de sélectionner à la fois un nom unique et valide, car il ne pourra pas être modifié ultérieurement. Veuillez noter que vous pouvez facilement attacher votre propre domaine personnalisé si nécessaire.
• Abonnement : Si vous avez accès à plus d’un abonnement, vous aurez la possibilité de sélectionner le bon pour cette ressource particulière. Grâce à cela, vous pourrez différencier le coût entre, par exemple, différents projets.
• Groupe de ressources : dans Azure, chaque ressource doit faire partie d’un conteneur logique, appelé groupe de ressources. Cela n’implique aucun coût supplémentaire en soi, vous n’avez donc pas à vous soucier de créer plusieurs groupes de ressources.
• Système d’exploitation : actuellement dans Azure, vous pouvez créer une application Web à l’aide des différents systèmes d’exploitation des conteneurs Windows, Linux ou Docker. Ce choix peut avoir un impact à la fois sur les coûts et les performances, alors assurez-vous d’avoir choisi le système d’exploitation adapté à vos besoins.
• Plan/Emplacement App Service : les services App dans Azure sont directement liés aux plans App Service, qui offrent différentes fonctionnalités et performances selon l’option que vous choisissez.

Noter
Il est toujours recommandé d’exploiter les groupes de ressources et de séparer vos ressources à l’aide d’un filtre spécifique, tel que la durée de vie des ressources ou l’environnement donné (c’est-à-dire la production, le transfert ou les tests). Les groupes de ressources vous offrent un meilleur contrôle sur les services déployés et permettent un contrôle plus précis sur les personnes pouvant accéder à une ressource.

Étant donné que vous débutez avec Azure, vous n’avez probablement créé aucun plan App Service. Comme nous ne pouvons pas créer un App Service sans App Service Plan, nous allons trier cela maintenant.

Création d’un plan de service d’applications

Lorsque vous cliquez sur App Service plan/Location, vous verrez un écran avec le bouton + Créer un nouveau, permettant la création d’un nouveau App Service Plan. Ça devrait ressembler à ça:

4.png

Comme vous pouvez le voir, nous devons renseigner trois champs :
• Plan App Service : il s’agit du nom de votre plan App Service, qui doit être unique au sein d’un groupe de ressources.
• Emplacement : grâce à ce paramètre, nous pouvons localiser notre plan de service d’applications dans une région spécifique. Cela implique parfois que différentes fonctionnalités sont disponibles.
• Niveau de tarification : lorsque vous cliquez sur cet élément, vous verrez un autre écran présentant les fonctionnalités disponibles pour les différents niveaux disponibles. Ce choix est très important au niveau des fonctionnalités, et dépendra dans la plupart des cas des caractéristiques environnementales que vous prévoyez (comme les environnements de développement/test, les applications de production, si vous avez besoin ou non d’emplacements de déploiement, etc.) :

5.png

Comme vous pouvez le voir dans la capture d’écran précédente, nous avons trois catégories d’App Service Plans :
• Dev / Test : celui-ci contient les niveaux F, D et B (qui signifient gratuit, partagé et basique). Ils sont conçus pour des scénarios de développement/test simples et des applications Web légères qui n’ont pas besoin de fonctionnalités telles que la mise à l’échelle automatique ou les sauvegardes.
• Production : cela offre des machines puissantes et des fonctionnalités avancées qui sont utiles dans de nombreux scénarios réalistes, tels que les API, le commerce électronique et les portails populaires.
• Isolé : cela utilise le même matériel que le niveau Production, mais avec encore plus de fonctionnalités et de possibilités pour isoler vos applications Web des accès externes. C’est la catégorie la plus chère, mais elle peut être utile lors de la création de systèmes qui ne peuvent pas être rendus publics.

Noter
Il est important de se rappeler que les niveaux F et D ont un temps de calcul limité par jour. Cela signifie qu’une fois que vous dépassez la limite (60 minutes pour le niveau F et 240 minutes pour le niveau D) de votre temps de traitement, votre demande deviendra indisponible et sera suspendue jusqu’au lendemain.

Pour les besoins de cet exercice, je recommanderais de sélectionner n’importe quel niveau de la catégorie Dev/Test. Une fois que vous êtes satisfait de l’option que vous avez sélectionnée, vous pouvez cliquer sur le bouton Appliquer. Ma configuration, par exemple, ressemble à ceci :

6.png

Noter
N’oubliez pas que vous pouvez toujours mettre à niveau (ou augmenter) l’instance de votre plan App Service, par exemple, lorsque vous avez besoin d’une fonctionnalité spécifique ou lorsque la popularité de votre application a augmenté. C’est l’un des plus grands avantages du cloud par rapport au local, où vous devrez acheter et configurer vous-même de nouvelles machines.

Maintenant, vous pouvez cliquer sur OK et vous reviendrez au panneau Web App, où vous pourrez saisir les champs manquants. Ici, vous pouvez voir toute la configuration de mon application web :

7.png

Il ne reste plus qu’à cliquer sur le bouton Créer et attendre quelques secondes la création d’une nouvelle ressource. Pendant ce temps, Azure validera le modèle et les paramètres, et orchestrera plusieurs contrôleurs sous-jacents pour créer un service. Une fois qu’une nouvelle ressource est créée, vous devriez voir une notification et pouvoir la voir dans vos ressources. Pour valider rapidement cela, cliquez sur le bouton Toutes les ressources à gauche et filtrez-les toutes en utilisant, par exemple, le nom de l’App Service que vous avez créé :

8.png

Création d’un service d’application Azure à l’aide de Visual Studio

Si vous ne souhaitez pas créer vos applications Web à l’aide du portail Azure, vous pouvez utiliser Microsoft Visual Studio, qui a une intégration intégrée pour de nombreux services Azure différents.

Noter

Dans Visual Studio, cliquez sur Fichier | Nouveau projet. Cela affichera une fenêtre Nouveau projet, où vous pouvez trouver de nombreux modèles différents pour démarrer une nouvelle application. Parce que nous nous intéressons aux projets cloud, commençons par la catégorie Cloud :

9.png

Étant donné que nous travaillons avec App Services dans ce chapitre, le modèle qui nous intéresse est l’application Web ASP.NET (.NET Framework). L’autre option valide ici est également l’application Web ASP.NET Core. N’hésitez pas à l’utiliser si vous vous sentez suffisamment en confiance pour travailler avec les dernières versions de .NET, car nous couvrirons les deux scénarios. Lorsque vous êtes satisfait de votre choix, cliquez sur OK.

L’étape suivante est la sélection du modèle approprié. Ici, vous avez plusieurs options, telles que les suivantes :
• Vide : l’option la plus simple, qui vous permet d’avoir un contrôle total sur les packages installés et la structure globale
• Web Forms : le plus ancien framework disponible pour la création d’applications Web, utilisant de nombreux contrôles intégrés avec accès aux données
• MVC : une architecture bien connue de modèle-vue-contrôleur (MVC), qui a remplacé les formulaires Web
• API Web : un modèle pour créer des services HTTP RESTful à l’aide de la pile de programmation .NET
• Application à page unique : ce modèle est fourni avec de nombreux outils supplémentaires pour créer des interactions côté client

Toutes les options précédentes devraient vous être plus ou moins familières. Cependant, grâce à l’installation de l’ensemble d’outils Azure, vous devriez avoir accès à deux modèles supplémentaires :
• Azure API App : cela offre des intégrations supplémentaires avec différents services Azure tels que Azure AD, API Management et les applications Logic
• Azure : un modèle pour créer des backends mobiles
Cependant, nous aborderons ces deux aspects dans les prochaines sections de ce chapitre. Pour l’instant, pour continuer, sélectionnons MVC, car c’est le plus courant et le plus simple de tous les modèles répertoriés ici. Utilisez les options par défaut pour ce modèle et cliquez sur OK.

Noter
Vous avez probablement remarqué un bouton supplémentaire, que je n’ai pas décrit, Modifier l’authentification. Il permet de sélectionner la méthode utilisée pour authentifier l’accès à votre application Web. Nous aborderons cette fonctionnalité dans la section décrivant la sécurité des applications Web dans Azure.

Après quelques secondes, Visual Studio doit générer un projet basé sur le modèle sélectionné. Je pense que cela devrait vous sembler familier, car ce n’est pas si différent d’une application Web traditionnelle créée à partir d’un modèle MVC. Je suis sûr que vous avez hâte de voir si cela fonctionne – n’attendez plus et appuyez sur F5 pour démarrer l’application.

Vous devriez voir un écran similaire au mien :

10.png

Comme vous pouvez le voir, il s’agit du même modèle générique que vous verriez en commençant par un projet traditionnel. La question est, comment pouvons-nous le déployer sur Azure pour que notre site Web fonctionne dans le cloud ?

Arrêtons l’exécution de notre site Web localement et revenons un instant à Visual Studio. Lorsque vous faites un clic droit sur une icône de projet, vous verrez un menu contextuel. Là, entre plusieurs options différentes, vous pouvez cliquer sur Publier… :

11.png

Puisqu’il s’agit d’un projet cloud, vous verrez des options supplémentaires en plus de IIS, FTP et Dossier :
• App Service : pour déployer votre application sur un service PaaS
• Machines virtuelles Azure : pour déployer votre application sur une machine virtuelle que vous avez configurée

Noter
Le sujet de ce livre étant les services PaaS, nous n’aborderons pas le déploiement d’une application Web sur une machine virtuelle. Cependant, si cela vous intéresse, des instructions appropriées sont disponibles sur https://github.com/aspnet/Tooling/blob/AspNetVMs/docs/create-asp-net-vm-with-webdeploy.md.

Pour l’instant, sélectionnons App Service. Vous devriez voir deux options différentes :
• Créer nouveau : pour déployer une application sur un service d’applications fraîchement créé
• Sélectionner existant : Cette option n’est utile que si vous avez déjà déployé votre site

Parce que nous commençons tout juste, l’option qui nous intéresse est Créer nouveau. Après avoir cliqué sur Publier…, vous verrez un autre écran, où vous pourrez entrer tous les paramètres requis. Si vous lisez la section précédente sur la création d’un App Service à l’aide du portail Azure, certains champs devraient vous sembler familiers. En fait, vous faites exactement la même chose que vous feriez dans le portail. Si vous avez sauté cette section, je vous recommande fortement de revenir en arrière et de lire les descriptions. Après avoir configuré mon application Web, mon écran ressemble à ceci :

12.png

Noter
N’oubliez pas que vous pouvez créer à la fois des groupes de ressources et des plans App Service directement à partir de l’écran précédent. Si vous n’aimez pas les options qui y sont répertoriées, vous pouvez cliquer sur le bouton Nouveau…, qui vous guidera tout au long du processus de création d’une nouvelle ressource. C’est un autre avantage des outils tels que Visual Studio, car vous n’avez pas à quitter votre environnement de programmation pour travailler avec Azure.

Si vous êtes satisfait de la configuration actuelle, la dernière chose à faire est de cliquer sur le bouton Créer et d’attendre un moment que le déploiement de l’application se termine. De plus, Visual Studio préparera un profil de publication que vous pourrez réutiliser à tout moment. Nous allons y jeter un coup d’œil, car cela nous aidera dans la prochaine section de ce chapitre. Une fois le déploiement terminé, vous devriez voir votre application Web s’ouvrir automatiquement dans votre navigateur par défaut :

13.png

Toutes nos félicitations! Vous venez de créer et de déployer votre tout premier App Service. Si vous jetez un œil à l’URL, vous verrez qu’elle contient le nom que vous avez défini dans l’assistant Visual Studio. Toutes les applications Web dans Azure sont accessibles à l’aide du format d’URL suivant :

http(s) : //{appservicename}.azurewebsites.net

Cela explique également pourquoi un nom doit être unique : puisque, par défaut, toutes les applications Web hébergées en tant qu’Azure Web Apps sont disponibles publiquement, vous devez sélectionner un nom qui n’est pas déjà utilisé dans une autre URL. Dans la section suivante, nous essaierons d’utiliser FTP pour déployer notre application, comme alternative à l’utilisation de Visual Studio.

C’est ça! Si vous souhaitez en savoir plus sur Azure, vous devez consulter Azure pratique pour les développeurs. Alors que la plupart des guides ont tendance à décrire Microsoft Azure à un niveau plus générique, en se concentrant sur la présentation générale des composants, Hands-On Azure pour les développeurs vous donnera une compréhension approfondie du fonctionnement de ce cloud particulier et des meilleures solutions pour différents les scénarios sont.

#Création #service #dapplication #Azure