Überspringen zum Hauptinhalt

AWS-CodeDeploy-Features

Warum CodeDeploy?

AWS CodeDeploy ist ein Service, der Anwendungsbereitstellungen in vielerlei Serverservices, wie etwa Amazon Elastic Compute Cloud (Amazon EC2), AWS Fargate, AWS Lambda, sowie auf On-Premises-Instances automatisiert. CodeDeploy führt vollständige Automatisierungen Ihrer Anwendungsbereitstellungen durch. Manuelle Bereitstellungen gehören damit der Vergangenheit an. CodeDeploy schützt Ihre Anwendung während Bereitstellungen durch rollierende Updates und Protokollierung des Bereitstellungszustands vor Ausfallzeiten. CodeDeploy bieten Ihnen zentrale Kontrolle Ihrer Bereitstellungen über die AWS-Managementkonsole, das AWS Command Line Interface (AWS CLI), SDKs oder APIs. Mit diesen können Ihre Bereitstellungen gestartet, kontrolliert und überwacht werden. Sie können den Fortschritt der Bereitstellung in Bezug auf individuelle Einrichtungsereignisse anzeigen. AWS CodeDeploy verfolgt und speichert den neuesten Verlauf Ihrer Bereitstellungen, sodass Sie die Timeline und den Änderungsverlauf vergangener Bereitstellungen untersuchen können.

CodeDeploy ist plattform- und sprachunabhängig und funktioniert mit jeder Anwendung. Sie können also Ihren vorhandenen Einrichtungscode wiederverwenden. Sie können Ihre Anwendungsbereitstellungen problemlos mithilfe der CodeDeploy-APIs in Ihren bestehenden Softwarebereitstellungsprozess oder die Continuous Delivery-Toolkette integrieren.

Automatisierte Bereitstellungen

Alles öffnen

Mit AWS CodeDeploy können Sie eine Anwendungsbereitstellung problemlos für verschiedene Gruppen von Instances wiederholen. CodeDeploy verwendet ein datei- und befehlsbasiertes Installationsmodell. So können Sie jede Anwendung bereitstellen und vorhandenen Einrichtungscode wiederverwenden. Der gleiche Einrichtungscode kann auch genutzt werden, um Updates für Ihre Bereitstellungs-, Test- und Produktionsfreigabestufen für Amazon EC2-Instances konsistent bereitzustellen und zu testen. Das Eliminieren manueller Arbeitsschritte aus der Bereitstellung steigert sowohl die Geschwindigkeit als auch die Zuverlässigkeit Ihres Softwarebereitstellungsprozesses.

CodeDeploy ermöglicht es Ihnen, Softwarebereitstellungs- und Skalierungsaktivitäten zu integrieren, damit Ihre Anwendung in einer dynamischen Produktionsumgebung immer aktuell ist. Für Amazon EC2-Instances ist CodeDeploy in Auto Scaling integriert. Mit Auto Scaling können Sie Amazon-EC2-Kapazitäten entsprechend der von Ihnen festgelegten Bedingungen, wie etwa Spitzen im Datenverkehr, skalieren. CodeDeploy wird benachrichtigt, wenn eine neue Instance in einer Auto Scaling-Gruppe gestartet wird, und führt automatisch eine Anwendungsbereitstellung auf der neuen Instance durch, bevor sie einem Elastic Load Balancing (ELB) -Load Balancer hinzugefügt wird.

Sie können CodeDeploy verwenden, um Softwarebereitstellungen in Ihren Entwicklungs-, Test- und Produktionsumgebungen zu automatisieren, die auf jeder Instance ausgeführt werden, einschließlich Instances in Ihren eigenen Rechenzentren (Ihre Instances müssen in der Lage sein, eine Verbindung zu öffentlichen AWS-Endpunkten herzustellen). Dies erlaubt Ihnen, Ihre Anwendungen in Hybridarchitekturen mit einem einzelnen Service konsistent bereitzustellen.

Ausfallzeit minimieren

Alles öffnen

Anwendungen lassen sich mit CodeDeploy ohne Ausfallzeit auf eine neue Revision aktualisieren. AWS CodeDeploy kann Blau/Grün-Bereitstellungen für Amazon EC2-Instances, einen Amazon Elastic Container Service (Amazon ECS) -Service (sowohl Amazon EC2 - als auch Fargate-Starttypen) oder eine Lambda-Funktion durchführen. Mit einer blauen/grünen Bereitstellung wird die neue Version Ihrer Anwendung neben der alten Version angezeigt. Sobald die neue Version getestet und für betriebsbereit erklärt wurde, kann CodeDeploy den Datenverkehr auf Basis Ihrer Angaben von Ihrer alten Version auf die neue Version verschieben.

CodeDeploy kann außerdem eine rollierende Aktualisierung in einer Gruppe von Amazon EC2-Instances durchführen, bei der zu jedem Zeitpunkt nur ein Bruchteil der Instances vom Netz genommen wird. CodeDeploy arbeitet alle Instances der Reihe nach durch, sodass die Anwendungen verfügbar bleiben und weiterhin Anforderungserfassungen erfüllen können. Für AWS-Lambda-Funktionen wird eingehender Datenverkehr nach und nach von der alten zur neuen Version umgeleitet.

Die Protokollierung des Bereitstellungszustands hält in Kombination mit rollierenden Updates Anwendungen während der Bereitstellung hoch verfügbar. Zu unerwarteter Ausfallzeit kann es kommen, wenn fehlerhafte Updates bereitgestellt werden. CodeDeploy überwacht Ihre Bereitstellung und hält eine Bereitstellung an, wenn zu viele fehlgeschlagene Updates vorhanden sind.

Sie können eine stattfindende Anwendungsbereitstellung jederzeit mit der Konsole, der AWS-Befehlszeile und jedem beliebigen AWS SDK stoppen. Wenn Sie die gestoppte Bereitstellung zu einem späteren Zeitpunkt fortsetzen möchten, können Sie diese Revision einfach erneut bereitstellen. Sie können auch ein sofortiges Rollback durchführen, indem Sie die vorhergegangene Revision wieder bereitstellen.

Zentrale Kontrolle

Alles öffnen

Sie können die Bereitstellungen Ihrer Software direkt auf der Konsole oder mithilfe der AWS-Befehlszeilenschnittstelle, SDKs oder APIs starten, steuern und überwachen. Im Falle eines Fehlers können Sie das Skript, bei dem ein Fehler aufgetreten ist, genau bestimmen. Sie können auch Push-Benachrichtigungen einrichten, mit denen Sie den Status Ihrer Bereitstellungen per SMS oder E-Mail über Amazon Simple Notification Service (Amazon SNS) überwachen können.

Eine Anwendung kann für mehrere Bereitstellungsgruppen bereitgestellt werden. Bereitstellungsgruppen dienen dazu, Konfigurationen mit bestimmten Umgebungen, wie etwa Staging- oder Produktionsumgebungen, abzugleichen. Sie können eine Revision beim Staging testen und dann denselben Code mit den gleichen Bereitstellungsanweisungen für die Produktion bereitstellen, wenn Sie zufrieden sind.

CodeDeploy verfolgt und speichert den neuesten Verlauf Ihrer Bereitstellungen. Sie können prüfen, welche Anwendungsversionen derzeit für jede Ihrer Ziel-Bereitstellungsgruppen bereitgestellt sind. Sie können Einsicht in den Änderungsverlauf und die Erfolgsrate früherer Bereitstellungen für bestimmte Bereitstellungsgruppen nehmen. Außerdem ist es möglich, die Timeline früherer Bereitstellungen zu untersuchen und einen detaillierten Überblick über Ihre Bereitstellungserfolge und -fehler zu gewinnen.

Einfache Einführung

Alles öffnen

CodeDeploy verwendet ein datei- und befehlsbasiertes Installationsmodell. So können Sie jede Anwendung bereitstellen und vorhandenen Einrichtungscode wiederverwenden. CodeDeploy verwendet eine einzige AppSpec-Konfigurationsdatei, mit der Sie bei jedem Lebenszyklusereignis (Bereitstellungsphase) Aktionen, Tests oder Überprüfungen ausführen können. Bei den Befehlen kann es sich um jede Art von Code handeln, etwa ein Shell-Script, ein benutzerdefiniertes Programm oder sogar ein Konfigurationsmanagement-Tool.

Es ist einfach, Anwendungsbereitstellungen mittels der CodeDeploy-APIs in Ihre bestehende Softwarebereitstellungs-Toolkette zu integrieren.  AWS CodePipeline und einige AWS-Partner bieten vorgefertigte CodeDeploy-Integrationen für Continuous Integration und Continuous Delivery (CI/CD) -Services an und vereinfachen so die automatische Bereitstellung Ihrer aktualisierten Anwendung.

Benachrichtigungen erhalten

Alles öffnen

Sie können Benachrichtigungen für Ereignisse erstellen, die sich auf Ihre Bereitstellungen auswirken. Benachrichtigungen erfolgen in Form von Amazon SNS-Benachrichtigungen. Jede Benachrichtigung enthält eine Statusmeldung und einen Link zu den Ressourcen, deren Ereignis diese Benachrichtigung ausgelöst hat.