Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Remarque
Les abonnements Basic, Standard et Enterprise sont entrés dans une période de retraite le 17 mars 2025. Pour plus d’informations, consultez l’annonce de mise hors service d’Azure Spring Apps.
Cet article s’applique à :✅ Essentiel/Standard ✅ Entreprise
Azure Spring Apps et Azure Container Apps sont des plateformes managées sur Azure conçues pour simplifier l’exécution d’applications sans gérer l’infrastructure complexe. Les deux services permettent aux développeurs de se concentrer sur leurs applications plutôt que de se soucier de la configuration et de la maintenance des systèmes sous-jacents. Ils s’intègrent en mode natif à l’écosystème Azure, ce qui facilite la connexion avec des services tels qu’Azure Monitor, Key Vault et Azure DevOps pour la surveillance, la sécurité et le déploiement.
En raison de la mise hors service d’Azure Spring Apps, nous vous recommandons d’utiliser Azure Container Apps comme service principal pour votre migration des charges de travail exécutées sur Azure Spring Apps. Azure Container Apps fournit une base moderne, flexible et évolutive pour les applications conteneurisées, ce qui garantit que vos charges de travail sont prêtes pour l’avenir et intégrées en toute transparence à l’écosystème Azure.
Cet article fournit un guide détaillé pour vous aider à migrer vos charges de travail d’Azure Spring Apps vers Azure Container Apps, en réduisant les interruptions et en vous aidant à optimiser les avantages de la nouvelle plateforme.
Mappage de concepts
Le tableau de mappage de concept suivant met en évidence les parallèles entre Azure Spring Apps et Azure Container Apps. Il vous aide à comprendre comment les concepts familiers dans Azure Spring Apps se traduisent en fonctionnalités équivalentes dans Azure Container Apps.
| Service d'Azure Spring Apps | Service Azure Container Apps |
|---|---|
| Une instance de service héberge et sécurise une limite pour les applications et d’autres ressources, et prend en charge un réseau virtuel personnalisé. | Un environnement établit une limite sécurisée pour les applications conteneur et prend en charge les réseaux virtuels personnalisés. |
| Une application est une application métier qui sert de ressource enfant dans une instance de service. | Une application conteneur est une application métier, définie comme une ressource Azure indépendante qui se connecte à un environnement managé. |
| Un déploiement est la version d’une application. Une application peut avoir un déploiement de production et un déploiement intermédiaire. | Une révision est un instantané immuable de chaque version d’une application conteneur. Une application conteneur peut avoir une ou plusieurs révisions. |
| Une instance d’application est l’unité d’exécution minimale gérée par le service. | Les conteneurs (Réplica) représentent un ensemble de conteneurs constituant l’unité d’exécution minimale. Vous pouvez configurer plusieurs conteneurs ensemble, y compris des conteneurs sidecar et init, pour servir une application conteneur. |
Paramètres du contrôle d’accès en fonction du rôle Azure
Azure Spring Apps et Azure Container Apps prennent tous deux en charge les paramètres de contrôle d’accès en fonction du rôle (RBAC) Azure. Toutefois, leurs expériences diffèrent en raison de leurs hiérarchies de ressources distinctes.
Dans Azure Spring Apps, la hiérarchie de ressources est centrée autour de l’instance de service. Les attributions de rôles s’appliquent à l’instance et se propagent automatiquement aux ressources enfants, telles que les applications et les déploiements. Cette conception fournit une gestion centralisée. Toutefois, si un utilisateur a besoin d’accéder à une application ou à un déploiement spécifique plutôt qu’à l’instance de service, vous devez accorder des autorisations spécifiques pour ces ressources.
Du point de vue de l’API, Azure Container Apps conçoit les types de ressources pour les environnements et les applications conteneur en tant qu’entités indépendantes distinctes au même niveau hiérarchique. Vous pouvez attribuer des rôles au niveau de l’environnement managé ou des applications conteneur individuelles. Cette structure permet un contrôle précis sur des applications spécifiques. Par exemple, vous pouvez accorder l’accès à différentes applications conteneur pour différentes équipes ou personnes. Cette flexibilité facilite la gestion des ressources indépendamment dans un environnement partagé. Il s’aligne également bien sur l’expérience familière de gestion d’autres ressources Azure.
Approche de migration
L’approche de migration d’Azure Spring Apps vers Azure Container Apps implique les étapes clés suivantes :
Évaluer et planifier : évaluez vos charges de travail actuelles sur Azure Spring Apps, notamment les dépendances, les configurations et les paramètres réseau.
Conteneuriser des applications : bien qu’Azure Container Apps prenne en charge le déploiement à partir du code JAR ou source, nous vous recommandons de conteneuriser des applications dans des conteneurs Docker, ce qui offre une meilleure portabilité et efficacité. Vous pouvez conteneuriser des applications en créant des fichiers Dockerfiles et en créant des images conteneur à l’aide d’outils tels qu’Azure Container Registry ou Docker Hub. Vous pouvez également générer des images conteneur en buildpacks localement. Pour savoir comment conteneuriser votre application et générer une image conteneur similaire à celle exécutée dans Azure Spring Apps, consultez Vue d’ensemble de la conteneurisation.
Configurez l’environnement Azure Container Apps : approvisionnez un environnement managé dans Azure Container Apps, notamment la configuration de réseaux virtuels, de sous-réseaux et les paramètres de sécurité nécessaires pour correspondre à vos configurations réseau précédentes dans Azure Spring Apps. Pour plus d’informations, consultez Approvisionner Azure Container Apps ou Migrer un réseau virtuel personnalisé.
Créez et configurez des composants Java dans Azure Container Apps : activez et configurez Eureka Server, le serveur de configuration, la passerelle et l’administrateur managé. Ces composants sont essentiels pour l’orchestration et la gestion des microservices dans les applications Spring. Vérifiez qu’ils sont configurés correctement pour une transition transparente.
Si vous utilisez le plan Entreprise, consultez les articles suivants :
- Tanzu Service Registry
- Service de configuration d’application pour Tanzu ou Serveur de configuration
- Spring Cloud Gateway pour Tanzu
- Application Live View
- Portail des API pour Tanzu
Si vous utilisez le plan Standard, consultez les articles suivants :
Déployer des conteneurs : déployez les applications conteneurisées dans l’environnement Azure Container Apps. Configurez les révisions d’application, les stratégies de mise à l’échelle et les configurations réseau en fonction de vos besoins. Pour plus d’informations, consultez Vue d’ensemble de la migration d’applications.
Surveiller : pendant la migration, surveillez en permanence les performances des applications à l’aide d’Azure Monitor et ajustez les configurations en fonction des besoins pour l’optimisation, telles que l’ajustement des paramètres de mise à l’échelle ou des allocations de ressources. Pour plus d’informations, consultez Journal et Métriques dans Azure Container Apps.
Testez et validez : exécutez des tests approfondis pour vous assurer que les applications conteneurisées fonctionnent comme prévu dans le nouvel environnement. Vérifiez la connectivité réseau, la mise à l’échelle et l’intégration à d’autres services.
Outils clients et d’automatisation : pour simplifier le développement quotidien et les tâches opérationnelles, tirez parti des outils clients et des solutions d’automatisation. Ces outils incluent Azure CLI, Azure DevOps, GitHub Actions et des extensions dans les outils clients ou les IDE. Ces outils peuvent aider à automatiser les déploiements, à surveiller les performances et à gérer efficacement les ressources, à réduire les efforts manuels et à améliorer l’agilité opérationnelle. Pour en savoir plus sur les outils populaires, consultez Clients ou outils d’automatisation pour Azure Container Apps.
Outil Assistant Migration
Pour accélérer votre migration et vous aider à évaluer les fonctionnalités sur Azure Container Apps, nous fournissons une nouvelle commande dans Azure CLI. Cette commande récupère les configurations des ressources Azure Spring Apps existantes en fonction de l’ID de ressource de l’instance de service. Il convertit ensuite ces configurations en fichiers Bicep pour les ressources Azure Container App. Cette méthode vous permet de configurer rapidement un environnement managé Azure Container Apps et des ressources d’application tout en appliquant des paramètres de base similaires à ces paramètres dans vos ressources Azure Spring Apps existantes.
Pour créer des ressources Azure Container Apps qui correspondent aux configurations de vos ressources Azure Spring Apps existantes, procédez comme suit :
Installez Azure CLI version 2.45.0 ou ultérieure et la dernière version de l’extension Azure Spring Apps à l’aide de la
az extension add --name springcommande.Générez des fichiers Bicep pour créer les ressources Azure Container Apps correspondantes à l’aide de la commande suivante :
az spring export \ --resource-group <resource-group-name> \ --target aca \ --subscription <subscription-id> \ --service <service-name> \ --output-folder <output-folder-name>La commande précédente génère un fichier README.md avec des instructions détaillées. Suivez ces instructions pour mettre à jour les paramètres requis dans les fichiers Bicep.
Remarque
Azure Container Apps nécessite des URL d’image conteneurisées. Si vous n’avez pas encore d’URL d’image conteneurisée pour votre application, vous pouvez laisser l’URL de l’image de démarrage rapide dans les paramètres inchangés et déployer votre propre application ultérieurement. Pour plus d’informations sur l’obtention d’images conteneur, consultez Vue d’ensemble de la conteneurisation
Si un groupe de ressources n’existe pas, créez-le à l’aide de la commande suivante :
az group create \ --name <resource-group-name> \ --subscription <subscription-id> \ --location <location>Déployez des ressources Azure Container Apps sur le groupe de ressources à l’aide de la commande suivante :
Remarque
Vous devrez peut-être exécuter la commande plusieurs fois et ajuster la configuration en fonction du message de réponse.
az deployment group create \ --resource-group <resource-group-name> \ --template-file main.bicep \ --parameters param.bicepparam \ --subscription <subscription-id>Suivez les instructions du fichier README.md pour mettre à jour les ressources pour les fonctionnalités avancées. Ces fonctionnalités incluent le chargement de certificats, l’activation d’un domaine personnalisé, l’ajout d’attributions de rôles à l’identité managée affectée par le système, etc.
Si vous avez besoin de la configuration Terraform de ces ressources, exportez-les à l’aide du flux de travail d’exportation du fournisseur de ressources Azure Terraform. Pour plus d’informations, consultez Vue d’ensemble du fournisseur de ressources Azure Terraform.
Tutoriel
Nous fournissons un didacticiel pour illustrer l’expérience de bout en bout de l’exécution de l’application ACME Fitness Store sur Azure Container Apps. Pour plus d’informations, consultez acme-fitness-store/azure-container-apps. Ce didacticiel fournit des conseils pratiques, vous aidant ainsi à obtenir rapidement des insights pratiques et à obtenir une confiance en matière de déploiement et de gestion d’applications conteneurisées sur la plateforme.