Considérations clé lors de l'utilisation d'AWS pour l'hébergement web
Il existe certaines différences clé entre le cloud AWS et un modèle d'hébergement d'applications web traditionnel. La section précédente a mis en avant de nombreux domaines clé à considérer lors du déploiement d'une application web sur le cloud. Cette section présente certains changements architecturaux clé que vous devez prendre en compte lorsque vous importez une application dans le cloud.
Plus aucune appliance réseau physique
Vous ne pouvez pas déployer d'appliance réseau physique dans AWS. Par exemple, les pare-feu, les routeurs et les équilibreurs de charge de vos applications AWS ne peuvent plus prendre la forme d'appareils physiques et doivent être remplacés par des solutions logicielles. Il existe une grande variété de solutions logicielles d'entreprise, que ce soit pour la répartition de charge ou l'établissement d'une connexion VPN. Il ne s'agit pas d'une limitation de ce qui peut être exécuté sur le cloud AWS, mais d'une modification architecturale de votre application si vous utilisez ces appareils aujourd'hui.
Pare-feu omniprésents
Là où vous n'aviez précédemment qu'une simple zone démilitarisée
Tenir compte de la disponibilité de plusieurs centres de données
Considérez les zones de disponibilité au sein d'une région AWS comme plusieurs centres de données. Les instances EC2 dans différentes zones de disponibilité sont à la fois logiquement et physiquement séparées et fournissent un modèle facile d'utilisation pour déployer votre application au travers de centres de données pour allier haute disponibilité et grande fiabilité. Amazon VPC en tant que service régional vous permet d'exploiter les zones de disponibilité tout en conservant toutes vos ressources dans le même réseau logique.
Traitement éphémère et dynamique des hôtes
Probablement le changement les plus important dans la façon dont vous allez peut-être concevoir votre architecture d'application AWS, il faut considérer les hôtes Amazon EC2 comme éphémères et dynamiques. Toute application créée pour le cloud AWS ne doit pas présumer qu'un hôte sera toujours disponible et doit être conçue en sachant que toutes les données des magasins instantanés EC2 seront perdues en cas de défaillance d'une instance EC2.
Lorsqu'un nouvel hôte est créé, vous ne devez pas émettre d'hypothèses concernant l'adresse IP ou l'emplacement dans une zone de disponibilité de l'hôte. Votre modèle de configuration doit être flexible et votre approche en matière d'action d'amorçage d'un hôte doit tenir compte de la nature dynamique du cloud. Ces techniques sont essentielles pour créer et exécuter une application hautement évolutive et tolérante aux pannes.
Envisager les conteneurs et un modèle sans serveur
Ce livre blanc se concentre principalement sur une architecture web plus traditionnelle. Cependant, pensez à moderniser vos applications web en passant aux technologies de Conteneurs
Envisager un déploiement automatisé
-
Amazon Lightsail
est un serveur privé virtuel (VPS) facile à utiliser qui vous offre tout ce dont vous avez besoin pour créer une application ou un site web, en plus d'offrir un forfait mensuel rentable. Lightsail est idéal pour les charges de travail plus simples, les déploiements rapides et pour démarrer sur AWS. Il est conçu pour vous aider à débuter modestement, pour ensuite vous mettre à l'échelle au fur et à mesure de votre croissance. -
AWS Elastic Beanstalk
est un service simple à utiliser pour déployer et mettre à l'échelle des applications et des services web développés avec Java, .NET, PHP, Node.js, Python, Ruby, Go et Docker sur des serveurs courants, tels qu'Apache, Nginx, Passenger et IIS. Il vous suffit de télécharger votre code pour qu'Elastic Beanstalk effectue automatiquement le déploiement, l'approvisionnement en capacité, la répartition de charge, la scalabilité automatique et la surveillance de l'état de l'application. Ce faisant, vous conservez la maîtrise totale des ressources AWS alimentant votre application et pouvez accéder aux ressources sous-jacentes à tout moment. -
AWS App Runner
est un service entièrement géré qui permet aux développeurs de déployer facilement et rapidement des applications web et des API conteneurisées, à grande échelle et sans aucune expérience préalable en matière d'infrastructure. Commencez avec votre code source ou une image de conteneur. App Runner crée et déploie automatiquement l'application web et équilibre la charge du trafic avec chiffrement. App Runner se charge également de l'augmentation ou de la réduction automatique du trafic pour répondre à vos besoins. -
AWS Amplify
est un ensemble d'outils et de services qui peuvent être utilisés ensemble ou séparément, pour aider les développeurs front-end web et mobiles à créer des applications complètes et évolutives à technologie AWS. Avec Amplify, vous pouvez configurer les backends d'applications et connecter votre application en quelques minutes, déployer des applications web statiques en quelques clics et gérer facilement le contenu des applications en dehors de la AWS Management Console.