Partager via


Choisir un service de calcul Azure

Azure fournit de nombreuses façons d’héberger votre code d’application. Le terme calcul fait référence au modèle d’hébergement pour les ressources sur lesquelles votre application s’exécute. Cet article vous aide à choisir un service de calcul pour votre application.

Architecture

Utilisez l’organigramme suivant pour sélectionner un service de calcul candidat.

Diagramme montrant un arbre de décision pour les services de calcul Azure.

L’image montre un organigramme permettant de sélectionner un service Azure approprié en fonction de la migration d’une charge de travail existante ou de la création d’une nouvelle charge de travail. L’organigramme commence par un nœud Démarrer et se divise en deux branches principales intitulées Migrate et Build new. La branche Migrate inclut des points de décision qui évaluent si l’application est optimisée pour le cloud et si elle peut être levée et décalée. Selon les réponses, le flux conduit à des services tels qu’Azure App Service, Azure VMware Solution ou des machines virtuelles. La nouvelle branche Build inclut des points de décision qui évaluent la nécessité d’un contrôle total, d’un calcul hautes performances, de charges de travail pilotées par les événements, d’hébergement web managé et d’exigences d’orchestration. Ces décisions guident l’utilisateur vers des services tels que machines virtuelles, Azure Batch, Azure Functions, App Service, Azure Container Instances, Azure Service Fabric, Azure Red Hat OpenShift, Azure Kubernetes Service ou Azure Container Apps. Une section de branchement pour votre propre implémentation d’orchestration sur les machines virtuelles inclut VMware Tanzu sur les machines virtuelles, Kubernetes sur les machines virtuelles et OpenShift sur les machines virtuelles. En bas de l’image, deux sections boxed répertorient les services exclusifs aux conteneurs et les services compatibles avec conteneur. La section exclusive du conteneur comprend Azure Container Instances, Azure Red Hat OpenShift, Kubernetes sur les machines virtuelles, OpenShift sur les machines virtuelles et VMware Tanzu sur les machines virtuelles. La section compatible conteneur comprend Azure Batch, Azure Functions, Service Fabric et App Service.

Téléchargez un fichier Visio de cette architecture.

Le diagramme précédent fait référence à deux stratégies de migration :

  • Lift-and-shift : Stratégie de migration d’une charge de travail vers le cloud sans reconcevoir l’application ou apporter des modifications de code. Il est également appelé réhébergement. Pour plus d’informations, consultez le Centre de migration et de modernisation du cloud Azure.

  • Optimisé pour le cloud : Stratégie de migration vers le cloud en refactorisant une application pour tirer parti des fonctionnalités et fonctionnalités natives du cloud.

La sortie de cet organigramme est votre point de départ. Ensuite, évaluez le service pour voir s’il répond à vos besoins.

Cet article comprend plusieurs tables qui peuvent vous aider à choisir un service. Le candidat initial de l’organigramme peut ne pas convenir à votre application ou à votre charge de travail. Dans ce cas, développez votre analyse pour inclure d’autres services de calcul.

Si votre application se compose de plusieurs charges de travail, évaluez chaque charge de travail séparément. Une solution complète peut incorporer deux services de calcul ou plus.

Comprendre les fonctionnalités de base

Si vous n’êtes pas familiarisé avec le service Azure que vous sélectionnez dans la section précédente, consultez la documentation de présentation suivante :

  • Azure App Service est un service managé pour l’hébergement d’applications web, de back-ends d’applications mobiles, d’API RESTful ou de processus métier automatisés.

  • Azure Batch est un service managé permettant d’exécuter des applications de calcul haute performance et parallèles à grande échelle.

  • Azure Container Apps est un service managé basé sur Kubernetes, qui simplifie le déploiement d’applications conteneurisées dans un environnement serverless.

  • Azure Container Instances est un service permettant d’exécuter un seul conteneur ou un groupe de conteneurs dans Azure. Container Instances ne fournit pas d’orchestration de conteneur complète, mais vous pouvez implémenter des conteneurs sans avoir à provisionner des machines virtuelles ou à adopter un service de niveau supérieur.

  • Azure Functions est un service qui fournit des fonctions managées qui s’exécutent en fonction de divers types de déclencheurs pour les applications pilotées par les événements.

  • Azure Kubernetes Service (AKS) est un service Kubernetes managé pour l’exécution d’applications conteneurisées.

  • Azure Red Hat OpenShift est un cluster OpenShift complètement managé pour l’exécution de conteneurs en production avec Kubernetes.

  • Azure Service Fabric est une plateforme de systèmes distribués qui peut s’exécuter dans de nombreux environnements, notamment Azure ou en local.

  • Azure VMware Solution est un service managé pour exécuter des charges de travail VMware en mode natif sur Azure.

  • Les machines virtuelles Azure sont un service où vous déployez et gérez des machines virtuelles à l’intérieur d’un réseau virtuel Azure.

Comprendre les modèles d’hébergement

Pour les modèles d’hébergement, les services cloud se répartissent en trois catégories :

  • L’infrastructure en tant que service (IaaS) vous permet de provisionner des machines virtuelles, ainsi que les composants réseau et de stockage associés. Vous pouvez ensuite déployer tous les logiciels et applications sur ces machines virtuelles. Ce modèle est le plus proche d’un environnement local traditionnel. Microsoft gère l’infrastructure et vous gérez les machines virtuelles.

  • Platform as a service (PaaS) fournit un environnement d’hébergement managé dans lequel vous pouvez déployer votre application sans avoir à gérer les machines virtuelles ou les ressources réseau. App Service et Container Apps sont des services PaaS.

  • Functions as a service (FaaS) vous permet de déployer votre code sur le service, qui l’exécute automatiquement. Azure Functions est un service FaaS.

    Note

    Azure Functions est une offre de calcul serverless Azure . Pour voir comment ce service se compare à d’autres offres serverless Azure, telles qu’Azure Logic Apps pour les flux de travail serverless, consultez Choisir les services d’intégration et d’automatisation appropriés dans Azure.

Il existe un spectre entre IaaS et PaaS complètement managé. Par exemple, les machines virtuelles Azure peuvent automatiquement être mises à l’échelle à l’aide de groupes de machines virtuelles identiques. Cette fonctionnalité n’est pas strictement PaaS, mais elle ressemble aux fonctionnalités de gestion dans PaaS.

Il y a un compromis entre le contrôle et la facilité de gestion. IaaS offre le plus de contrôle, de flexibilité et de portabilité. Toutefois, vous devez provisionner, configurer et gérer les machines virtuelles et les composants réseau que vous créez. Les services FaaS gèrent automatiquement presque tous les aspects de l’exécution d’une application. PaaS fournit une gestion partielle tout en nécessitant une configuration utilisateur.

Service Composition de l’application Densité Nombre minimal de nœuds Gestion de l'état Hébergement web
Virtual Machines Agnostique Agnostique 1 2 Sans état ou avec état Agnostique
App Service Applications, conteneurs Plusieurs applications pour chaque instance à l’aide du plan App Service 1 Sans état Intégré
Azure Functions Fonctions, conteneurs Serverless 1 Serverless 1 Sans état ou avec état 6 Sans objet
AKS Containers Plusieurs conteneurs pour chaque nœud 3 3 Sans état ou avec état Agnostique
Container Apps Containers Serverless Serverless Sans état ou avec état Agnostique
Container Instances Containers Aucune instance dédiée Aucun nœud dédié Sans état Agnostique
Azure Red Hat OpenShift Containers Plusieurs conteneurs pour chaque nœud 6 5 Sans état ou avec état Agnostique
Service Fabric Services, exécutables invités, conteneurs Plusieurs services pour chaque machine virtuelle 5 3 Sans état ou avec état Agnostique
Batch Travaux planifiés Plusieurs applications pour chaque machine virtuelle 1 4 Sans état Non
Azure VMware Solution Agnostique Agnostique 3 7 Sans état ou avec état Agnostique

Remarques :

1Pour Azure Functions, le plan Consommation est serverless. Pour un plan App Service, les fonctions s’exécutent sur les machines virtuelles allouées pour ce plan. Choisissez le plan de service approprié pour Azure Functions.

2 Contratde niveau de service supérieur (SLA) qui a deux instances ou plus.

3Recommandé pour les environnements de production.

4Peut être réduit à zéro une fois le travail terminé.

5Trois nœuds principaux et trois nœuds Worker.

6Lorsque vous utilisez des fonctions durables.

7Voir Hôtes.

Networking

Service Intégration du réseau virtuel Connectivité hybride
Virtual Machines Soutenu Soutenu
App Service Prise en charge de 1 Pris en charge 2
Azure Functions Prise en charge de 1 Pris en charge 3
AKS Supported Soutenu
Container Apps Soutenu Soutenu
Container Instances Supported Supported
Azure Red Hat OpenShift Supported Soutenu
Service Fabric Soutenu Soutenu
Batch Soutenu Soutenu
Azure VMware Solution Supported Supported

Remarques :

1Nécessite App Service Environment ou un niveau tarifaire de calcul dédié.

2Utiliser des connexions hybrides App Service.

3Nécessite un plan App Service ou un plan Azure Functions Premium.

DevOps

Service Débogage local Modèle de programmation Mise à jour de l’application
Virtual Machines Agnostique Agnostique Aucune prise en charge intégrée
App Service IIS Express, autres 1 Applications web et API, WebJobs pour les tâches en arrière-plan Emplacements de déploiement
Azure Functions Visual Studio ou Azure Functions CLI Serverless, piloté par les événements Emplacements de déploiement
AKS Minikube, Docker, autres Agnostique Mise à jour propagée
Container Apps Runtime de conteneur local Agnostique Gestion des révisions
Container Instances Runtime de conteneur local Agnostique Sans objet
Azure Red Hat OpenShift Minikube, Docker, autres Agnostique Mise à jour propagée
Service Fabric Cluster de nœuds locaux Exécutable invité, modèle de service, modèle d’acteur, conteneurs Mise à niveau propagée pour chaque service
Batch Non prise en charge Application en ligne de commande Sans objet
Azure VMware Solution Agnostique Agnostique Aucune prise en charge intégrée

Remarque :

1Les options incluent IIS Express pour ASP.NET ou node.js (iisnode), le serveur web PHP, le kit de ressources Azure pour IntelliJ et le kit de ressources Azure pour Eclipse. App Service prend également en charge le débogage à distance des applications web déployées.

Extensibilité

Service Autoscaling Équilibreur de charge Limited’échelle 3
Virtual Machines Groupes identiques de machines virtuelles Azure Load Balancer (répartiteur de charge Azure) Image de plateforme : 1 000 nœuds pour chaque groupe identique. Image personnalisée : 600 nœuds pour chaque groupe identique.
App Service Service intégré Intégré 30 instances, 100 avec App Service Environment
Azure Functions Service intégré Intégré 200 instances pour chaque application de fonction
AKS Mise à l’échelle automatique des pods1, mise à l’échelle automatique du cluster2 Load Balancer ou Azure Application Gateway 5 000 nœuds lorsque vous utilisez le contrat SLA de temps d’activité
Container Apps Règles de mise àl’échelle 4 Intégré 15 environnements pour chaque région (limite par défaut), applications conteneur illimitées pour chaque environnement et réplicas pour chaque application conteneur (en fonction des cœurs disponibles)
Container Instances Non prise en charge Aucune prise en charge intégrée 100 groupes de conteneurs pour chaque abonnement (limite par défaut)
Azure Red Hat OpenShift Mise à l’échelle automatique des pods, mise à l’échelle automatique du cluster Load Balancer ou Application Gateway 250 nœuds pour chaque cluster (limite par défaut)
Service Fabric Groupes identiques de machines virtuelles Équilibreur de charge 100 nœuds pour chaque groupe de machines virtuelles identiques
Batch Sans objet Équilibreur de charge Limite de cœur de 900 dédiés et de 100 basse priorité (limite par défaut)
Azure VMware Solution Service intégré5 Intégré6 3 à 16 hôtes VMware ESXi par VMware vCenter

Remarques :

1Consultez les pods de mise à l’échelle automatique.

2 VoirMettre automatiquement à l’échelle un cluster pour répondre aux demandes d’application sur AKS.

3Consultez les limites, quotas et contraintes d’abonnement Azure et de service

4Voir Définir des règles de mise à l’échelle dans Container Apps

5Voir Mettre à l’échelle Azure VMware Solution

6Voir VMware NSX

Availability

Service Option de basculement multirégion
Virtual Machines Azure Traffic Manager, Azure Front Door et Load Balancer inter-régions
App Service Traffic Manager et Azure Front Door
Azure Functions Traffic Manager et Azure Front Door
AKS Traffic Manager, Azure Front Door et cluster multirégion
Container Apps Traffic Manager et Azure Front Door
Container Instances Traffic Manager et Azure Front Door
Azure Red Hat OpenShift Traffic Manager et Azure Front Door
Service Fabric Traffic Manager, Azure Front Door et Load Balancer inter-régions
Batch Sans objet
Azure VMware Solution Sans objet

Pour une formation guidée sur les garanties de service, consultez les garanties d’architecture et de service Azure.

Security

Passez en revue et comprenez les contrôles de sécurité et la visibilité disponibles pour chacun des services suivants :

Autres critères

Service TLS Coûts Styles d’architecture appropriés
Virtual Machines Configuré dans la machine virtuelle Windows, Linux N-tier, big compute (HPC)
App Service Soutenu Tarification d’App Service Web-queue-worker
Azure Functions Soutenu Tarification d’Azure Functions Microservices, architecture pilotée par les événements
AKS Contrôleur d’entrée Tarification AKS Microservices, architecture pilotée par les événements
Container Apps Contrôleur d’entrée Tarification de Container Apps Microservices, architecture pilotée par les événements
Container Instances Utiliser un conteneur sidecar Tarification de Container Instances Microservices, automatisation des tâches, travaux par lots
Azure Red Hat OpenShift Soutenu Tarification d’Azure Red Hat OpenShift Microservices, architecture pilotée par les événements
Service Fabric Soutenu Tarification de Service Fabric Microservices, architecture pilotée par les événements
Batch Soutenu Tarification batch Big Compute (HPC)
Azure VMware Solution Configuré dans la machine virtuelle Tarification d’Azure VMware Solution Charge de travail de machine virtuelle basée sur le format VMware

Prendre en compte les limites et les coûts

En plus des tableaux de comparaison précédents, effectuez une évaluation plus détaillée des aspects suivants du service candidat :

Contributeurs

Microsoft gère cet article. Les contributeurs suivants ont écrit cet article.

Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.

Étape suivante