Configuration d’un environnement App Service Environment v1
Important
Cet article traite de l’environnement App Service Environment v1. App Service Environment v1 et v2 ont été mis hors service le 31 août 2024. Il existe une nouvelle version d’App Service Environment, plus facile à utiliser et qui s’exécute sur des infrastructures plus puissantes. Pour en savoir plus sur la nouvelle version, commencez par consulter Présentation de l’environnement App Service Environment. Si vous utilisez actuellement App Service Environment v1, suivez les étapes de cet article pour migrer vers la nouvelle version.
À compter du 31 août 2024, le Contrat de niveau de service (SLA) et les crédits de service ne s’appliquent plus aux charges de travail App Service Environment v1 et v2 qui sont toujours en production depuis que ce sont des produits mis hors service. La mise hors service du matériel App Service Environment v1 et v2 a commencé, ce qui risque d’avoir une incidence sur la disponibilité et les performances de vos applications et de vos données.
Vous devez effectuer la migration vers App Service Environment v3 immédiatement, sans quoi vos applications et ressources risquent d’être supprimées. Nous ferons tout notre possible pour migrer automatiquement les charges de travail App Service v1 et v2 restantes à l’aide de la fonctionnalité de migration sur place, mais Microsoft ne garantit nullement ni n’affirme que les applications seront disponibles après la migration automatique. Vous serez peut-être amené à effectuer une configuration manuelle pour finaliser la migration et choisir la référence SKU du plan App Service la mieux adaptée à vos besoins. Si la migration automatique n’est pas possible, vos ressources et les données d’application associées seront supprimées. Nous vous recommandons vivement d’agir dès maintenant pour éviter l’un ou l’autre de ces scénarios extrêmes.
Si vous avez besoin de plus de temps, nous pouvons offrir une seule période de grâce de 30 jours pour vous permettre d’effectuer votre migration. Pour plus d’informations et pour demander cette période de grâce, passez en revue la vue d’ensemble de la période de grâce, puis accédez au portail Azure et au panneau Migration pour chacun de vos environnements App Service.
Pour obtenir les informations les plus à jour sur la mise hors service d’App Service Environment v1/v2, consultez la Mise à jour sur la mise hors service d’App Service Environment v1 et v2.
Vue d’ensemble
Globalement, un environnement Azure App Service se compose de plusieurs composants principaux :
- Des ressources de calcul s’exécutant dans le service hébergé d’environnement App Service
- Stockage
- Une base de données
- Un réseau virtuel Azure Classic(V1) ou Resource Manager(V2) (réseau virtuel)
- Un sous-réseau sur lequel s’exécute le service hébergé d’environnement App Service
Ressources de calcul
Vous utilisez les ressources de calcul pour vos quatre pools de ressources. Chaque environnement App Service (ASE) possède un ensemble de serveurs frontaux et trois pools de travail possibles. Vous n’avez pas besoin d’utiliser les trois pools de travail. Si vous le souhaitez, vous pouvez n’en utiliser qu’un ou deux.
Les hôtes dans les pools de ressources (front-ends et workers) ne sont pas directement accessibles aux locataires. Vous ne pouvez pas utiliser le protocole RDP (Remote Desktop Protocol) pour vous y connecter, modifier leur approvisionnement ou agir sur eux en tant qu’administrateur.
Vous pouvez définir la taille et la quantité des pools de ressources. Dans un environnement App Service, vous disposez de quatre options de taille (P1 à P4). Pour plus de détails sur ces tailles et leur tarification, voir Tarification de App Service. La modification de la quantité ou de la taille est une opération appelée « mise à l’échelle ». Il ne peut y avoir qu’une seule opération de mise à l’échelle en cours à la fois.
Serveurs frontaux : les front-ends sont les points de terminaison HTTP/HTTPS pour vos applications contenues dans votre environnement App Service (ASE). Les charges de travail ne sont pas exécutées dans les serveurs frontaux.
- Un environnement App Service commence avec deux P2, ce qui est suffisant pour les charges de travail de développement et de test et les charges de travail de production de bas niveau. Nous vous recommandons vivement d’utiliser des P3 pour des charges de travail de production moyennes et lourdes.
- Il est recommandé d’avoir au moins quatre P3 pour les charges de travail moyennes et lourdes, afin de garantir l’exécution d’un nombre suffisant de serveurs frontaux pendant la maintenance planifiée. Les activités de maintenance planifiées entraînent un front-end à la fois. Cela réduit la capacité globale disponible des serveurs frontaux pendant les activités de maintenance.
- Le déploiement des front-ends peut prendre jusqu’à une heure.
- Pour un ajustement optimal de la mise à l’échelle, vous devez analyser le pourcentage UC, le pourcentage de mémoire ainsi que les mesures des demandes actives pour le pool frontal. Si le pourcentage UC ou de mémoire est supérieur à 70 % lorsque vous exécutez des P3, ajoutez davantage de serveurs frontaux. Si la valeur moyenne des demandes actives oscille entre 15 000 et 20 000 demandes par serveur frontal, vous devez également ajouter davantage de serveurs frontaux. L’objectif est de maintenir le pourcentage UC et de mémoire en dessous de 70 % et le nombre moyen des demandes actives en dessous de 15 000 par serveur frontal lorsque vous exécutez des P3.
Workers: les workers sont là où vos applications s’exécutent. Lorsque vous faites monter en puissance vos plans App Service, cette opération utilise des Workers dans le pool de travail associé.
- Vous ne pouvez pas ajouter instantanément des workers. Le déploiement peut prendre jusqu’à une heure.
- La mise à l’échelle de la taille d’une ressource de calcul pour n’importe quel pool prend < 1 heure par domaine de mise à jour. Un environnement App Service contient 20 domaines de mise à jour. Si vous mettez à l’échelle la taille de calcul d’un pool de travail contenant 10 instances, cette opération peut prendre jusqu’à 10 heures.
- Si vous modifiez la taille des ressources de calcul utilisées dans un pool de travail, vous provoquerez des démarrages froids des applications qui s’exécutent dans ce pool de workers.
Le moyen le plus rapide de modifier la taille des ressources de calcul d’un pool de workers qui n’exécute aucune application consiste à :
- Réduire la quantité d’employés à 2. L’échelle minimale de diminution dans le portail est de 2. La libération de vos instances prendra quelques minutes.
- Sélectionner la nouvelle taille de calcul et le nombre d’instances. À partir de là, l’opération prendra jusqu’à 2 heures.
Si vos applications nécessitent une plus grande taille de ressources de calcul, les étapes précédentes ne vous concernent pas. Au lieu de modifier la taille du pool de travail qui héberge ces applications, vous pouvez remplir un autre pool de travail avec des Workers de la taille souhaitée, puis déplacer vos applications vers ce pool.
- Créez les instances supplémentaires de la taille de calcul nécessaire dans un autre pool de travail. L’opération prendra jusqu’à 1 heure.
- Réaffectez vos plans App Service hébergeant les applications qui nécessitent une plus grande taille au pool de travail nouvellement configuré. Il s’agit d’une opération rapide qui devrait prendre moins d’une minute.
- Descendez en puissance le premier pool de travail si ces instances inutilisées ne vous servent plus. Cette opération prend quelques minutes.
Mise à l’échelle automatique : la mise à l’échelle automatique constitue l’un des outils pouvant vous aider à gérer la consommation des ressources de calcul. Vous pouvez utiliser la mise à l’échelle pour les serveurs frontaux ou les pools de travail. Vous pouvez effectuer des opérations comme augmenter vos instances de n’importe quel type de pool le matin et les réduire le soir. Vous pouvez également par exemple ajouter des instances lorsque le nombre de Workers disponibles dans un pool de travail passe en dessous d’un certain seuil.
Si vous souhaitez définir des règles de mise à l’échelle automatique en vous basant sur des mesures de pool de ressources de calcul, gardez en tête le temps d’approvisionnement nécessaire. Pour plus d’informations sur la mise à l’échelle automatique des environnements App Service, consultez Comment configurer la mise à l’échelle automatique dans un environnement App Service.
Stockage
Chaque ASE est configuré avec 500 Go de stockage. Cet espace est utilisé par toutes les applications dans l’ASE. Cet espace de stockage est une partie de l’ASE ; actuellement, aucun basculement pour utiliser votre espace de stockage n’est possible. Si vous apportez des ajustements au routage ou à la sécurité de votre réseau virtuel, vous devez toujours autoriser l’accès au stockage Azure, ou à l’ASE ne peut pas fonctionner.
Base de données
La base de données contient les informations qui définissent l’environnement et les détails sur les applications en cours d’exécution. Cela est également inclus dans l’abonnement Azure. Il ne s’agit pas d’un élément que vous avez la possibilité de manipuler directement. Si vous apportez des ajustements au routage ou à la sécurité de votre réseau virtuel, vous devez toujours autoriser l’accès à SQL Azure ou à l’ASE ne peut pas fonctionner.
Network (Réseau)
Le réseau virtuel utilisé avec votre ASE peut être un réseau que vous avez créé lors de la création de l’ASE ou de celui que vous avez effectué à l’avance. Si vous créez le sous-réseau lors de la création de l’ASE, cela force l’ASE à être dans le même groupe de ressources que le réseau virtuel. Si vous avez besoin que le groupe de ressources utilisé par votre ASE soit différent de celui de votre réseau virtuel, vous devez créer votre ASE à l’aide d’un modèle Azure Resource Manager.
Un réseau virtuel contient quelques restrictions utilisées pour un environnement App Service :
- Le réseau virtuel doit être un réseau virtuel régional.
- Il doit y avoir un sous-réseau avec huit adresses ou plus où l’ASE est déployé.
- Lorsqu’un sous-réseau est utilisé pour héberger un ASE, la plage d’adresses du sous-réseau ne peut être modifiée. Pour cette raison, il est recommandé que le sous-réseau contienne au moins 64 adresses pour la prise en charge d’ASE supplémentaires potentiels.
- Le sous-réseau doit contenir uniquement l’ASE.
Contrairement au service hébergé qui contient l’ASE, le réseau virtuel et le sous-réseau sont tous les deux contrôlés par l’utilisateur. Vous pouvez administrer votre réseau virtuel via l’interface utilisateur de réseau virtuel ou Powershell. Un ASE peut être déployé dans un réseau virtuel Classique ou Resource Manager. Le portail et les expériences API varient légèrement entre les réseaux virtuels classique et Resource Manager, mais l’expérience ASE est identique.
Le réseau virtuel utilisé pour héberger un ASE peut utiliser des adresses IP privées RFC1918 ou des adresses IP publiques. Si vous souhaitez utiliser une plage d’adresses IP qui n’est pas couverte par RFC1918 (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16), vous devez créer votre réseau virtuel et votre sous-réseau à utiliser avant la création d’ASE.
Étant donné que cette fonctionnalité place Azure App Service sur votre réseau virtuel, vos applications hébergées dans votre ASE peuvent désormais accéder aux ressources rendues disponibles directement via des réseaux virtuels VPN ExpressRoute ou site à site. Les applications qui se trouvent dans votre environnement App Service n’ont pas besoin de fonctionnalités réseau supplémentaires pour accéder aux ressources disponibles pour le réseau virtuel qui héberge votre environnement App Service. Cela signifie que vous n’avez pas besoin d’utiliser l’intégration de réseau virtuel ou les connexions hybrides pour accéder aux ressources dans ou connectées à votre réseau virtuel. Vous pouvez toujours utiliser ces deux fonctionnalités pour accéder aux ressources des réseaux qui ne sont pas connectés à votre réseau virtuel.
Par exemple, vous pouvez utiliser l’intégration de réseau virtuel pour l’intégrer à un réseau virtuel qui se trouve dans votre abonnement, mais qui n’est pas connecté au réseau virtuel dans lequel se trouve votre environnement ASE. Vous pouvez toujours également utiliser des connexions hybrides pour accéder aux ressources dans d’autres réseaux, comme vous le faites normalement.
Si votre réseau virtuel est configuré avec un VPN ExpressRoute, vous devez être informé de certains des besoins de routage d’un ASE. Certaines configurations d’itinéraire défini par l’utilisateur ne sont pas compatibles avec un ASE. Pour plus d’informations sur l’exécution d’un environnement ASE dans un réseau virtuel avec ExpressRoute, consultez Exécution d’un environnement App Service dans un réseau virtuel avec ExpressRoute.
Sécurisation du trafic entrant
Il existe deux méthodes principales pour contrôler le trafic entrant dans votre ASE. Vous pouvez utiliser des groupes de sécurité réseau (NSG) pour contrôler les adresses IP pouvant accéder à votre ASE comme décrit dans Comment contrôler le trafic entrant dans un environnement App Service et vous pouvez également configurer votre ASE avec un équilibreur de charge interne (ILB). Ces fonctionnalités peuvent par ailleurs être utilisées simultanément si vous souhaitez restreindre l’accès à votre ILB ASE à l’aide de groupes de sécurité réseau.
Lorsque vous créez un ASE, il crée une adresse IP virtuelle dans votre réseau virtuel. Il existe deux types d’adresses IP virtuelles : internes et externes. Lorsque vous créez un ASE avec une adresse IP virtuelle externe, les applications dans votre ASE sont accessibles via une adresse IP Internet routable. Lorsque vous sélectionnez Interne votre ASE est configuré avec un ILB et ne sera pas directement accessible à Internet. Un ASE ILB nécessite toujours une adresse IP virtuelle externe, mais elle est utilisée uniquement pour l’accès à la gestion et à la maintenance Azure.
Lors de la création de l’ILB ASE, vous indiquez le sous-domaine qu’il utilise et vous devez gérer votre propre serveur DNS pour le sous-domaine que vous spécifiez. Étant donné que vous définissez le nom du sous-domaine, vous devez également gérer le certificat utilisé pour l’accès HTTPS. Après la création d’ASE, vous êtes invité à fournir le certificat. Pour en savoir plus sur la création et l’utilisation d’un environnement ASE ILB, consultez Comment créer un environnement ASEv1 à partir d’un modèle.
Portail
L’interface utilisateur sur le portail Azure vous permet de gérer et surveiller votre environnement App Service. Si vous avez un ASE, vous êtes susceptible de voir le symbole App Service sur votre barre latérale. Ce symbole est utilisé pour représenter les environnements App Service dans le portail Azure :
Pour ouvrir l’interface utilisateur qui répertorie tous vos environnements App Service, vous pouvez utiliser l’icône ou sélectionnez la flèche de développement (symbole « > ») en bas de la barre latérale pour sélectionner Environnements App Service. La sélection de l’un des ASE répertoriés ouvre l’interface utilisateur utilisée pour le surveiller et le gérer.
Ce premier panneau présente certaines propriétés de votre ASE avec un graphique de mesures par pool de ressources. Certaines des propriétés affichées dans le bloc Essentiels sont également des liens hypertexte qui ouvrent le panneau associé. Par exemple, vous pouvez sélectionner le nom de réseau virtuel pour ouvrir l’interface utilisateur associée au réseau virtuel dans lequel votre ASE est exécuté. Les plans App Service et les applications ouvrent des panneaux qui répertorient les éléments figurant dans votre ASE.
Surveillance
Les graphiques permettent de voir les différentes mesures de performances dans chaque pool de ressources. Vous pouvez analyser l’utilisation moyenne de l’UC et de la mémoire pour le pool frontal. Pour les pools de travail, vous pouvez surveiller la quantité utilisée et la quantité disponible.
Plusieurs plans App Service peuvent utiliser les Workers dans un pool de travail. La charge de travail n’est pas distribuée de la même façon que avec les serveurs front-end, de sorte que l’utilisation du processeur et de la mémoire ne fournissent pas beaucoup d’informations utiles. Il est plus important de suivre le nombre de Workers que vous avez utilisés et qui sont disponibles, en particulier si vous gérez ce système pour d’autres utilisateurs.
Vous pouvez également utiliser toutes les mesures qui peuvent être suivies dans les graphiques pour configurer des alertes. La configuration d’alertes ici fonctionne de la même manière qu’ailleurs dans App Service. Vous pouvez définir une alerte à partir de l’interface utilisateur Alertes ou dans toute interface utilisateur de mesures en cliquant sur Ajouter une alerte.
Les mesures qui ont été abordées sont les métriques App Service Environment. Des mesures sont également disponibles au niveau du plan App Service. C’est là que la surveillance de l’utilisation de l’UC et de la mémoire se révèle intéressante.
Dans un ASE, tous les plans App Service sont des plans App Service dédiés. Cela signifie que les seules applications qui sont exécutées sur les hôtes alloués à ce plan App Service sont les applications de ce plan App Service. Pour afficher des détails sur votre plan App Service, affichez-le simplement à partir d’une liste quelconque dans l’interface utilisateur de l’ASE, voire à partir des plans App Service qui les répertorient tous.
Paramètres
Dans le panneau ASE, il existe une section Paramètres qui contient plusieurs fonctionnalités importantes :
Paramètres>Propriétés : le panneau Paramètres s’ouvre automatiquement quand vous affichez le panneau de votre environnement App Service (ASE). Les Propriétésse trouvent dans la partie supérieure. Il existe de nombreux éléments ici qui sont redondants à ce que vous voyez dans Essentiels, mais ce qui est utile est adresse IP virtuelle, et adresses IP sortantes.
Paramètres>Adresses IP : une adresse IP SSL est nécessaire quand vous créez une application IP SSL (Secure Sockets Layer) dans votre environnement App Service (ASE). Pour en obtenir une, votre ASE doit posséder des adresses IP SSL qui peuvent être allouées. Lorsqu’un ASE est créé, il dispose d’une adresse IP SSL unique à cette fin, mais vous pouvez en ajouter d’autres. Il existe des frais pour les adresses IP SSL supplémentaires, comme indiqué dans Tarification d’App Service (dans la section sur les connexions SSL). Le supplément de prix correspond au coût IP SSL.
Paramètres>Pool frontal / Pools de workers : chacun de ces panneaux de pools de ressources offre la possibilité de voir uniquement des informations sur ce pool de ressources, en plus de proposer des commandes permettant de le mettre entièrement à l’échelle.
Le panneau de base pour chaque pool de ressources fournit un graphique avec des mesures pour ce pool de ressources. À l’instar des graphiques du panneau de l’ASE, vous pouvez entrer dans le graphique et configurer les alertes de votre choix. La configuration d’une alerte à partir du panneau de l’ASE pour un pool de ressources spécifique produit le même résultat que d’effectuer l’opération à partir du pool de ressources. Dans le panneau Paramètres du pool de travail, vous avez accès à l’ensemble des applications ou plans App Service qui s’exécutent dans ce pool de travail.
Fonctionnalités de mise à l’échelle du portail
Il existe trois opérations de mise à l’échelle :
- Modifier le nombre d’adresses IP dans l’ASE qui sont disponibles pour l’utilisation IP SSL.
- Modifier la taille de la ressource de calcul utilisée dans un pool de ressources.
- Modifier le nombre de ressources de calcul utilisées dans un pool de ressources manuellement ou via la mise à l’échelle automatique.
Dans le portail, il existe trois façons de contrôler le nombre de serveurs dont vous disposez dans vos pools de ressources :
- Une opération de mise à l’échelle à partir du panneau principal de l’ASE dans la partie supérieure. Vous pouvez modifier la configuration de mise à l’échelle du pool frontal et des pools de travail de plusieurs façons. Elles sont toutes appliquées en tant qu’opération unique.
- Une opération de mise à l’échelle manuelle à partir du panneau Mise à l’échelle du pool de ressources individuel, sous Paramètres.
- Une mise à l’échelle automatique configurée à partir du panneau Mise à l’échelle du pool de ressources individuel.
Pour utiliser l’opération de mise à l’échelle sur le panneau de l’ASE, faites glisser le curseur vers la quantité souhaitée et enregistrez. Cette interface utilisateur prend également en charge la modification de la taille.
Pour utiliser les fonctionnalités de mise à l’échelle automatique ou manuelle dans un pool de ressources spécifique, accédez à Paramètres>Pool frontal / Pools de travail, selon le cas. Ouvrez ensuite le pool que vous souhaitez modifier. Accédez à Paramètres>Scale-out ou Paramètres>Scale-up. Le panneau Scale-out vous permet de contrôler la quantité des instances. Monter en puissance vous permet de contrôler la taille de la ressource.
Éléments à prendre en compte en matière de tolérance de pannes
Vous pouvez configurer un environnement App Service pour utiliser jusqu’à 55 ressources de calcul au total. De ces 55 ressources de calcul, seules 50 peuvent être utilisées pour héberger des charges de travail. Il y a deux raisons à cela. Il existe au moins deux ressources de calcul front-end. ce qui en laisse 53 au maximum pour prendre en charge d’allocation des pools de travail. Pour fournir une tolérance de panne, une ressource de calcul supplémentaire doit être allouée en respectant les règles suivantes :
- Chaque pool de workers a besoin d’au moins une ressource de calcul supplémentaire qui n’est pas disponible pour être affectée à une charge de travail.
- Lorsque la quantité de ressources de calcul dans un pool de travail dépasse une certaine valeur, une autre ressource de calcul est requise pour la tolérance de panne. Ce n’est pas le cas dans le pool front-end.
Dans tout pool de travaux unique, les conditions requises pour la tolérance de pannes sont que pour une valeur donnée de X ressources affectées à un pool de travaux :
- si X est compris entre 2 et 20, la quantité de ressources de calcul utilisables que vous pouvez utiliser pour les charges de travail est X-1 ;
- si X est compris entre 21 et 40, la quantité de ressources de calcul utilisables que vous pouvez utiliser pour les charges de travail est X-2 ;
- si X est compris entre 41 et 53, la quantité de ressources de calcul utilisables que vous pouvez utiliser pour les charges de travail est X-3.
L’empreinte minimale comporte deux serveurs front-end et deux workers. Voici quelques exemples pour clarifier les affirmations ci-dessus :
- Si vous avez 30 Workers dans un pool unique, 28 d’entre eux peuvent servir à héberger les charges de travail.
- Si vous avez deux workers dans un pool unique, 1 peut être utilisé pour héberger des charges de travail.
- Si vous avez 20 Workers dans un pool unique, 19 peuvent servir à héberger les charges de travail.
- Si vous avez 21 Workers dans un pool unique, seuls 19 peuvent servir à héberger les charges de travail.
L’aspect tolérance de panne est important, et vous devez le garder à l’esprit à mesure que votre mise à l’échelle dépasse certains seuils. Si vous souhaitez augmenter la capacité au-delà de 20 instances, alors passez à 22 instances ou plus, car un nombre de 21 instances n’ajoute pas plus de capacité. Cette remarque est également valable au-delà de 40 instances : le nombre suivant qui ajoute de la capacité est 42.
Suppression d'un environnement App Service
Si vous voulez supprimer un environnement App Service, utilisez simplement l’action Supprimer en haut du panneau Environnement App Service. Lorsque vous effectuez cette opération, vous êtes invité à entrer le nom de votre environnement App Service pour confirmer votre action. Lorsque vous supprimez un environnement App Service, vous supprimez également l’ensemble de son contenu.
Prise en main
Pour le démarrage avec les environnements App Service Environment, consultez Comment créer un environnement ASEv1 à partir d’un modèle.
Notes
Si vous voulez vous familiariser avec Azure App Service avant d’ouvrir un compte Azure, accédez à la page Essayer App Service, où vous pourrez créer immédiatement une application web temporaire dans App Service. Aucune carte de crédit n’est requise ; vous ne prenez aucun engagement.