AWS CodeDeploy est un service qui automatise les déploiements d'applications sur toute instance, notamment les instances Amazon EC2 et celles s'exécutant sur site. CodeDeploy automatise entièrement vos déploiements d'applications, éliminant ainsi le recours à des opérations manuelles. CodeDeploy protège votre application des temps d'arrêt pendant les déploiements grâce aux mises à jour continues et au suivi de l'état du déploiement. CodeDeploy vous offre un contrôle centralisé de vos déploiements grâce à AWS Management Console, à l'interface de ligne de commande (CLI), aux kits de développement logiciel (SDK) ou aux API, ce qui vous permet de lancer, contrôler et surveiller vos déploiements. Vous pouvez voir l'évolution du déploiement vers les événements de configuration individuels en train de s'exécuter sur chaque instance. CodeDeploy suit et stocke l'historique récent de vos déploiements, afin que vous puissiez étudier le calendrier et modifier l'historique de vos anciens déploiements.

Démarrez avec AWS avec notre offre gratuite

Créez un compte gratuit

Profitez pendant 12 mois du niveau d'utilisation gratuit d'AWS. Vous bénéficierez également du niveau de base d'AWS Support qui inclut un service client disponible 24h/24, 7j/7 et 365 jours par an, l'accès à des forums d'assistance et bien d'autres avantages.
Voir les détails relatifs au niveau gratuit d'AWS »

AWS CodeDeploy ne dépend pas de la plateforme ni de la langue et fonctionne avec n'importe quelle application, vous pouvez donc réutiliser votre code de configuration existant. Vous pouvez également intégrer facilement vos déploiements d'applications avec votre processus de livraison de logiciels existant ou votre chaîne d'outils de livraison continue à l'aide des API AWS CodeDeploy.

CodeDeploy_Header

Vous pouvez facilement reproduire un déploiement d'application dans les différents groupes des instances avec AWS CodeDeploy. CodeDeploy utilise un fichier et un modèle d'installation basés sur la commande, ce qui lui permet de déployer n'importe quelle application et de réutiliser le code de configuration existant. Le code de configuration utilisé pour déployer une révision vers votre instance de développement à des fins de débogage sert également au déploiement des instances de simulation pour les tests, puis est utilisé pour se déployer vers la production pour la mise à disposition auprès des clients. L'élimination des étapes manuelles des déploiements augmente à la fois la vitesse et la fiabilité de votre processus de livraison de logiciel.

AWS CodeDeploy s'intègre avecAuto Scalingafin de garder le logiciel de votre application à jour dans une infrastructure qui change de façon dynamique. Auto Scaling vous permet d'augmenter ou de réduire la capacité d'Amazon EC2 automatiquement selon les conditions que vous définissez tels que les pics de trafic. CodeDeploy est notifié lorsqu'une nouvelle instance se lance dans un groupe Auto Scaling et effectuera automatiquement un déploiement d'application sur la nouvelle instance avant que celui-ci soit ajouté à Elastic Load Balancer.

Vous pouvez utiliser AWS CodeDeploy pour automatiser les déploiements dans vos environnements de développement, de test et de production sur toute instance, notamment les instances de vos centres de données (vos instances devront être en mesure de se connecter aux points de terminaison publics AWS). Vous pourrez ainsi vous servir d'un seul service pour déployer des applications de façon constante sur des architectures hybrides.

Les applications ne nécessitent pas de temps d'arrêt lorsqu'elles sont en cours de mise à niveau vers une nouvelle révision avec AWS CodeDeploy. CodeDeploy peut effectuer une mise à jour continue dans un groupe d'instances où seulement une partie à la fois des instances est mise hors ligne. CodeDeploy avance progressivement d'une instance à l'autre, ce qui permet aux applications de rester disponibles et de continuer à servir le trafic. CodeDeploy peut également réaliser des déploiements bleus/verts, pour lesquels un nouvel ensemble d'instances est mis en service et installé avec la révision la plus récente. Une fois la nouvelle révision installée sur les nouvelles instances, CodeDeploy redirige le trafic depuis vos instances de production vers les nouvelles instances.

Le suivi de l'état du déploiement fonctionne avec les mises à jour continues afin que les applications restent hautement disponibles pendant les déploiements. Des temps d'arrêt inattendus peuvent se produire si de mauvaises mises à jour sont déployées. AWS CodeDeploy surveille la réussite de la mise à jour de chaque instance dans un déploiement à plusieurs instances. Vous pouvez spécifier le nombre minimum d'instances dont vous avez besoin pour garder un état normal et CodeDeploy arrête un déploiement si trop de mises à jour d'instances échouent.

Vous pouvez arrêter le déploiement d'une application qui est en cours à tout moment à l'aide de AWS Management Console, l'interface de ligne de commande AWS ou tout kit de développement logiciel AWS. Il vous suffit de déployer à nouveau cette révision si vous souhaitez poursuivre le déploiement arrêté à un moment ultérieur. Vous pouvez également annuler immédiatement en redéployant la précédente révision.

Vous pouvez lancer, contrôler et suivre les déploiements de toutes vos applications pour cibler les instances directement depuis AWS Management Console ou à l'aide de l'interface de ligne de commande, les kits de développement logiciel ou les API AWS. Vous pouvez voir l'évolution du déploiement vers les événements de configuration individuels en train de s'exécuter sur chaque instance. En cas d'échec, vous pouvez localiser l'instance exacte et le script qui rencontrent un échec sans avoir à vous connecter à une instance individuelle. Vous pouvez aussi définir des notifications Push vous permettant de suivre le statut de vos déploiements par e-mail ou par SMS avec Amazon Simple Notification Service.

Les applications peuvent être déployées vers plusieurs groupes de déploiement. Un groupe de déploiement est un ensemble d'instances, comme un environnement de production ou de simulation. Vous pouvez tester une révision en simulation, puis déployer cette même révision vers la production une fois que vous êtes satisfait. AWS CodeDeploy utilise les balises ou les noms de groupe Auto Scaling pour définir les groupes de déploiement. Il vous suffit d'ajouter une balise à une instance pour l'ajouter à un groupe de déploiement et AWS CodeDeploy déploiera automatiquement la dernière révision de votre application vers celle-ci lors de votre prochain déploiement.

AWS CodeDeploy suit et stocke l'historique récent de vos déploiements. Vous pouvez consulter quelles versions de l'application sont actuellement déployées vers chacun de vos groupes de déploiement cibles. Vous pouvez inspecter l'historique des modifications ainsi que les taux de réussite des précédents déploiements vers les groupes de déploiement spécifiques. Vous pouvez également étudier les événements au niveau des instances ainsi que le calendrier de vos anciens déploiements pour une vue détaillée des réussites et des erreurs de vos déploiements.

AWS CodeDeploy utilise un fichier et un modèle d'installation basé sur la commande, ce qui le permet de déployer n'importe quelle application et de réutiliser le code de configuration existant. CodeDeploy utilise un seul fichier de configurationAppSpecafin de mapper les fichiers dans votre application vers la destination d'hôte et de spécifier les commandes qui doivent s'exécuter à chaque événement du cycle de vie (phase de déploiement), comme « installer les dépendances » ou « arrêter le serveur ». Les commandes peuvent être un code, tel que le script d'une enveloppe, un programme personnalisé ou même un outil de gestion de configuration.

Il est facile d'intégrer les déploiements d'applications avec votre chaîne d'outils de livraison de logiciels existante à l'aide des API AWS CodeDeploy. Certains partenaires AWS fournissent des intégrations CodeDeploy préconçues avec leur intégration continue et leurs services de livraison continue, ce qui simplifie le déploiement automatique de votre plus récente application vers vos instances.