REDPIXEL - stock.adobe.com
DevOps und Entwicklung auf AWS mit CodeStar zentralisieren
Mit AWS CodeStar lässt sich der Entwicklungsprozess zentralisieren. Innerhalb der Services lassen sich Softwareprojekte starten, überwachen und abschließen.
AWS hat CodeStar als eine Art DevOps Hub für seine Plattform entwickelt und stellt damit Integrationen in die meisten Entwicklungsdienste von Amazon zur Verfügung.
AWS CodeStar ist ein Managed-Service für Softwareentwickler, mit dem Teams schnell Softwareentwicklungsprojekte erstellen, verwalten und iterieren können.
CodeStar-Projektvorlagen verknüpfen Versionswaltungs- und Build-Services sowie Infrastrukturbereitstellungs- und Freigabeprozesse. Man kann CodeStar auch verwenden, um granulare Berechtigungen für Teammitglieder festlegen, die am Projekt beteiligt sind.
Die wichtigsten CodeStar-Integrationen
IT-Teams verwenden AWS CodeStar, um die Softwareentwicklung und -bereitstellung über ein zentrales Dashboard zu verwalten. Entwickler können mit einer Vielzahl von Projektvorlagen, die zahlreiche Programmiersprachen und Bereitstellungsmodelle unterstützen, sofort loslegen.
CodeStar lässt sich in CodeDeploy und CloudFormation integrieren, um Implementierungen zu automatisieren, bei denen Amazon EC2-Instanzen oder AWS Lambda-Funktionen als Infrastruktur-Backbone dienen.
Das CodeStar Dashboard enthält eine Ansicht jedes Projekts sowie die einzelnen Services entlang der Continuous Integration sowie Continuous Deployment Pipeline, die Code-Repositorys, Application-Build-Services und Bereitstellungsautomatisierung umfassen können. Entwicklungsteams können den Application Lifecycle über eine einzige Ansicht überwachen und den Status jedes Code Commits, Build-Ergebnisse, Infrastruktur-Rollouts und Anwendungsfreigaben verfolgen.
Wie man mit AWS CodeStar startet
Der beste Weg, mit CodeStar zu beginnen, ist die Erstellung eines realen Projekts. Beginnen Sie mit einer der Projektvorlagen von AWS.
Navigieren Sie in der AWS Management Console zu CodeStar und klicken Sie auf die Schaltfläche Start a project.
Wenn Sie zum ersten Mal in der CodeStar-Konsole sind, wird eine Aufforderung zum Erstellen einer Servicerolle angezeigt. Dadurch erhält CodeStar die Berechtigung – über AWS Identity and Access Management –, Ressourcen und Benutzerrechte in Ihrem Namen zu verwalten. Klicken Sie auf Yes, create role, um fortzufahren.
Wählen Sie anschließend eine CodeStar-Vorlage aus, die eine Laufzeitumgebung enthält, welche die meisten modernen Anwendungen unterstützt. Für diese Demonstration werde ich die serverlose Node.js-Vorlage auswählen, die auf AWS Lambda läuft.
Nach der Auswahl einer Vorlage müssen Sie einen Projektnamen angeben und eine Versionskontrolloption auswählen, um den Quellcode des Projekts zu speichern. Man kann wählen, ob man Code in AWS CodeCommit oder GitHub speichern möchte.
Überprüfen Sie abschließend alle Details und Angaben, bevor Sie das neue Projekt erstellen. Beachten Sie im Beispiel, dass wir den gesamten Lebenszyklus der in diesem Projekt gespeicherten Anwendung sehen können. AWS CodeCommit übernimmt die Versionskontrolle, AWS CodeBuild die automatisierten Builds, sobald Code in das Repository verschoben wird und AWS CloudFormation die Anwendungsinfrastruktur bereitstellt. Wir haben außerdem eine Integration mit Amazon CloudWatch in die CodeStar-Konsole, um den Zustand und die Leistung der Anwendung und Infrastruktur zu überprüfen.
Nachdem Sie auf Create project geklickt haben, gibt es die Möglichkeit, einen Codeeditor anzuschließen. Sie können Eclipse, Visual Studio oder sogar Befehlszeilen-Tools in Ihr CodeStar-Projekt integrieren. Teams können auch die AWS Cloud9-Entwicklungsumgebung verwenden, eine in die Cloud integrierte Entwicklungsumgebung, die es ermöglicht, die native Anwendungsentwicklung mit nur einem Webbrowser und einer Internetverbindung zu betreiben.
Nachdem das Projekt bereitgestellt wurde, sehen Sie ein Dashboard in der CodeStar-Konsole. In der folgenden Abbildung sehen Sie den neuesten Code, der in Ihrem Versionskontrollverzeichnis gespeichert ist, und den Anwendungsendpunkt für die serverlose Webanwendung. Das Dashboard zeigt Ihre kontinuierliche Continuous Deployment Pipeline an, die den Status des Freigabeprozesses darstellt. Entwickler können zu verschiedenen Amazon-Diensten auf der linken Seite des Dashboards navigieren, wie zum Beispiel AWS CodeCommit, CodeBuild, CodeDeploy und CodePipeline, die alle in einem einzigen CodeStar-Projekt verwendet werden können.
Der nächste Schritt besteht darin, Entwickler zum Projekt hinzuzufügen. Navigieren Sie zum Teambereich des CodeStar Dashboards. Fügen Sie Ihre Entwickler dem Projekt hinzu und konfigurieren Sie ihre Rollen mit entsprechenden Zugriffsrechten – als Viewer, Contributor oder Owner.
CodeStar versus Azure DevOps
Es ist klar, dass CodeStar eine spezifische und nützliche Rolle bei der Entwicklung in AWS spielt, aber Softwareentwickler haben auch Alternativen.
Die ähnlichste Alternative ist Microsoft Azure DevOps, eine Service-Suite, die früher als Visual Studio Team Services bekannt war. Wie CodeStar ermöglicht Azure DevOps Teams die Zusammenarbeit an Softwareprojekten über eine Sammlung von individuellen Entwicklerdiensten. Entwickler können Versionskontrollverzeichnisse, automatisierte Builds und Software-Release-Dienste in der Azure DevOps Services-Konsole gemeinsam einsetzen.
Microsoft entwickelt seit langem Software in diesem Bereich als Teil seiner Visual-Studio-Bemühungen. Da die Azure DevOps Services auf einem bisher erfolgreichen Produkt basieren, haben sie bereits eine hohe Reife erreicht.
Microsoft hat außerdem mehr Erfahrung im Aufbau von Entwickler-Tools als AWS, so dass Azure DevOps wahrscheinlich eine umfangreichere und funktionsreichere Entwicklungserfahrung bietet.
CodeStar-Preise
Es entstehen keine zusätzlichen Kosten für CodeStar, doch Entwicklungsteams bezahlen für die von ihnen verwendeten AWS-Ressourcen, zu denen typischerweise EC2-Instanzen, Lambda-Funktionsausführungen und S3 Buckets gehören.
Wie bei den meisten AWS Managed Services gibt es keine Mindestgebühren oder Vorabverpflichtungen. Da CodeStar auf Integrationen mit CodeBuild und CodeCommit sowie auf Speicher- und Rechendienste angewiesen ist, können Benutzer die AWS-Kosten dennoch in die Höhe treiben, wenn sie bei der Ressourcenzuweisung nicht vorsichtig sind.