Opportunités de déploiement sur Azure

Effectué

Azure propose différentes solutions de déploiement pour les applications Java. Dans cette unité, nous allons en présenter quelques uns.

Diagramme montrant les opportunités de déploiement sur Azure pour différents types d’applications Java.

Machines virtuelles

Les machines virtuelles Azure sont disponibles pour Linux et Windows. Les machines virtuelles Linux vous permettent de choisir entre différentes distributions comme Ubuntu, Red Hat ou SUSE.

Les machines virtuelles constituent généralement le point de départ du lift-and-shift, qui correspond au processus de migration des machines existantes vers Azure. Vous devez prendre en charge les mises à jour du système d’exploitation, le runtime Java, les paramètres réseau, le réacheminement de port et la sécurité.

Containers

  • Azure Kubernetes Service (AKS) est un service Kubernetes géré. Kubernetes constitue le standard de facto pour l’orchestration des applications conteneurisées. Il est parfait pour les microservices et les applications de taille moyenne. AKS est fourni avec la découverte, la mise à l’échelle automatique et l’analyse des services. Microsoft collabore à des projets Kubernetes comme Virtual Kubelet, Dapr et Open Application Model.

  • Azure Red Hat OpenShift correspond à la version gérée par Red Hat de Kubernetes.

  • Azure Container Instances convient bien aux tests et preuves de concepts rapides, ainsi qu’aux conteneurs sidecar.

Azure App Service

Azure App Service constitue l’une des opportunités de déploiement les plus simples pour les applications Java sur Azure. Elle est fournie avec la mise à l’échelle automatique, l’analyse intégrée et la sécurité.

Azure Container Apps

Azure Container Apps vous permet de vous concentrer sur la génération d’applications Java conteneurisées, qu’elles soient monolithiques ou de microservices, sans devoir gérer une infrastructure. Vous pouvez déployer des fichiers JAR, WAR et même du code source. La plateforme optimise automatiquement la mémoire et met à l’échelle vos applications en fonction de la demande. Elle intègre également des fonctionnalités de diagnostic avancées pour résoudre des problèmes Machine virtuelle Java (JVM), ce qui garantit un niveau de performance optimal de vos applications Java.

En outre, Azure Container Apps prend en charge les composants Spring managés tels que Eureka Server et Config Server et offre ainsi une intégration fluide de Spring. Dans le cadre de l’écosystème Azure, la plateforme est conçue pour gérer des charges de travail d’entreprise avec une mise à l’échelle économique et une gestion sophistiquée de la mémoire, ce qui la rend idéale pour les architectures d’application traditionnelles et modernes.

Functions

Vous pouvez déployer votre code Java sous la forme de fonctions Azure. Vous bénéficiez ainsi d’outils exceptionnels, ainsi que de l’intégration aux autres services Azure.

Voici des exemples de scénarios pour les fonctions :

  • Back-ends avec connexion web, mobile et Internet des objets (IoT)
  • Traitement de bots, de fichiers en temps réel et de flux
  • Automatisation des tâches planifiées