Tutorial: Bereitstellen von Umgebungen in CI/CD mithilfe von Azure Pipelines
In diesem Tutorial erfahren Sie, wie Sie Azure Deployment Environments (ADE) in Ihre Azure Pipelines CI/CD-Pipeline integrieren.
Continuous Integration und Continuous Delivery (CI/CD) ist ein Softwareentwicklungsansatz, mit dem Teams den Prozess des Erstellens, Testens und Bereitstellens von Softwareänderungen automatisieren können. CI/CD ermöglicht es Ihnen, Softwareänderungen häufiger und mit größerer Sicherheit zu veröffentlichen.
Bevor Sie mit diesem Tutorial beginnen, machen Sie sich anhand des Artikels Schlüsselkonzepte für Azure Deployment Environments mit den Ressourcen und Konzepten von Bereitstellungsumgebungen vertraut.
In diesem Tutorial lernen Sie Folgendes:
- Erstellen und Konfigurieren eines Azure Repos-Repositorys
- Verbinden des Katalogs mit Ihrem Dev Center
- Konfigurieren der Dienstverbindung
- Erstellen einer Pipeline
- Eine Umgebung erstellen
- Testen der CI/CD-Pipeline
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement.
- Sie können kostenlos ein Konto erstellen.
- Besitzerberechtigungen für das Azure-Abonnement
- Ein Azure DevOps-Abonnement.
- Sie können kostenlos ein Konto erstellen.
- Eine Azure DevOps-Organisation und ein entsprechendes Projekt.
- Azure Deployment Environments.
- Dev Center und Projekt.
- Beispielkatalog, der an das Dev Center angefügt ist.
Erstellen und Konfigurieren eines Azure Repos-Repositorys
- Melden Sie sich bei Ihrer Azure DevOps-Organisation (
https://dev.azure.com/<your-organization>
) an und wählen Sie Ihr Projekt. Ersetzen Sie den Textplatzhalter<your-organization>
durch Ihren Projektbezeichner. - Wählen Sie Repos>Dateien aus.
- Wählen Sie in Repository importieren den Befehl Importieren aus.
- Wählen Sie in Git-Repository importierenFolgendes aus, oder geben Sie Folgendes ein:
- Repositorytyp: Git
- Klon-URL: https://github.com/Azure/deployment-environments
Konfigurieren von Umgebungstypen
Umgebungstypen definieren die verschiedenen Typen von Umgebungen, die Ihre Entwicklungsteams bereitstellen können. Sie können auf jeden Umgebungstyp unterschiedliche Einstellungen anwenden. Sie erstellen Umgebungstypen auf Dev Center-Ebene und referenzieren sie auf der Projektebene.
Erstellen von Dev Center-Umgebungstypen:
Melden Sie sich beim Azure-Portal an.
Wählen Sie unter Dev Centers Ihr Dev Center aus.
Wählen Sie im linken Menü unter Umgebungskonfiguration die Option Umgebungstypen und dann Erstellen aus.
Führen Sie die folgenden Schritte aus, um drei Umgebungstypen zu erstellen: Sandbox, FunctionApp, WebApp. Geben Sie unter Umgebungstyp erstellen die folgenden Informationen ein, und wählen Sie dann Hinzufügen aus.
name Wert Name Geben Sie einen Namen für den Umgebungstyp ein. Tags Geben Sie einen Tagnamen und -wert ein. Vergewissern Sie sich in den Azure-Portalbenachrichtigungen, dass der Umgebungstyp hinzugefügt wurde.
Erstellen von Projektumgebungstypen:
Wählen Sie im linken Menü unter Verwalten Projekte aus, und wählen Sie dann das Projekt aus, das Sie verwenden möchten.
Wählen Sie im linken Menü unter Umgebungskonfiguration die Option Umgebungstypen und dann Hinzufügen aus.
Führen Sie die folgenden Schritte aus, um drei Umgebungstypen hinzuzufügen: Sandbox, FunctionApp, WebApp. Geben Sie in Umgebungstyp hinzufügen zu <Projektname> die folgenden Informationen ein, oder wählen Sie sie aus:
name Wert Typ Wählen Sie einen Umgebungstyp auf Dev Center-Ebene aus, der für das bestimmte Projekt aktiviert werden soll. Bereitstellungsabonnement Wählen Sie das Abonnement aus, in dem die Umgebung erstellt werden soll. Bereitstellungsidentität Wählen Sie eine systemseitig zugewiesene Identität oder benutzerseitig zugewiesene verwaltete Identität aus, die verwendet wird, um Bereitstellungen im Auftrag des Benutzers auszuführen. Berechtigungen für Umgebungsressourcen>Rollen für die Umgebungserstellung Wählen Sie die Rollen aus, die Zugriff auf die Umgebungsressourcen erhalten. Berechtigungen für Umgebungsressourcen>Zusätzlicher Zugriff Wählen Sie die Benutzer*innen oder die Microsoft Entra-Gruppen aus, denen bestimmte Rollen für die Umgebungsressourcen zugewiesen werden. Tags Geben Sie einen Tagnamen und -wert ein. Diese Tags gelten für alle Ressourcen, die als Teil der Umgebungen erstellt werden. Vergewissern Sie sich in den Azure-Portalbenachrichtigungen, dass der Umgebungstyp hinzugefügt wurde.
Konfigurieren einer Dienstverbindung
In Azure Pipelines erstellen Sie eine Dienstverbindung in Ihrem Azure DevOps-Projekt, um auf Ressourcen in Ihrem Azure-Abonnement zuzugreifen. Wenn Sie die Dienstverbindung erstellen, erstellt Azure DevOps ein Microsoft Entra-Dienstprinzipalobjekt.
Melden Sie sich bei Ihrer Azure DevOps-Organisation (
https://dev.azure.com/<your-organization>
) an und wählen Sie Ihr Projekt. Ersetzen Sie den Textplatzhalter<your-organization>
durch Ihren Projektbezeichner.Wählen Sie Projekteinstellungen>Dienstverbindungen>+ Neue Dienstverbindung aus.
Wählen Sie im Bereich Neue Dienstverbindung die Option Azure Resource Manager aus, und klicken Sie dann auf Weiter.
Wählen Sie die Authentifizierungsmethode Dienstprinzipal (automatisch) und anschließend Weiter aus.
Geben Sie die Details zur Dienstverbindung ein, und wählen Sie dann Speichern aus, um die Dienstverbindung zu erstellen.
Feld Wert Bereichsebene Abonnement. Abonnement Wählen Sie das Azure-Abonnement aus, das Ihre Dev Center-Ressource hostet. Ressourcengruppe Wählen Sie die Ressourcengruppe aus, die die Ressource für Ihr Dev Center enthält. Name der Dienstverbindung Geben Sie für die Dienstverbindung einen eindeutigen Namen ein. Gewähren der Zugriffsberechtigung für alle Pipelines Aktiviert Wählen Sie in der Liste der Dienstverbindungen die zuvor erstellte Dienstverbindung aus, und wählen Sie dann Dienstprinzipal verwalten aus. Das Azure-Portal wird auf einer separaten Browserregisterkarte geöffnet und zeigt die Dienstprinzipaldetails an.
Kopieren Sie im Azure-Portal den Wert Anzeigename. Sie verwenden diesen Wert im nächsten Schritt, um dem Dienstprinzipal Berechtigungen zum Ausführen von Auslastungstests zu erteilen.
Gewähren des Dienstverbindungszugriffs auf das ADE-Projekt
Azure Deployment Environments verwenden die rollenbasierte Zugriffssteuerung, um Berechtigungen zum Ausführen bestimmter Aktivitäten für Ihre ADE-Ressource zu erteilen. Um Änderungen an einer CI/CD-Pipeline vorzunehmen, gewähren Sie der Benutzerrolle Deployment Environments-Benutzer den Dienstprinzipal.
- Navigieren Sie im Azure-Portal zu Ihrem ADE-Projekt.
- Klicken Sie auf Zugriffssteuerung (IAM)>Hinzufügen>Rollenzuweisung hinzufügen.
- Wählen Sie auf der Registerkarte Rolle in der Liste der Auftragsfunktionsrollen die Option Deployment Environments-Benutzer aus.
- Wählen Sie auf der Registerkarte Mitglieder die Option Mitglieder auswählen aus, und verwenden Sie dann den Anzeigenamen, den Sie zuvor kopiert haben, um den Dienstprinzipal zu suchen.
- Wählen Sie den Dienstprinzipal und dann Auswählen aus.
- Wählen Sie auf der Registerkarte Überprüfen + zuweisen die Option Überprüfen + zuweisen aus, um die Rollenzuweisung hinzuzufügen.
Sie können jetzt die Dienstverbindung in Ihrer Azure Pipelines-Workflowdefinition verwenden, um auf Ihre ADE-Umgebungen zuzugreifen.
Gewähren des Kontozugriffs auf das ADE-Projekt
Um Umgebungen anzuzeigen, die von anderen Benutzern erstellt wurden, einschließlich der Dienstverbindung, müssen Sie Ihrem Konto Lesezugriff auf das ADE-Projekt gewähren.
- Navigieren Sie im Azure-Portal zu Ihrem ADE-Projekt.
- Klicken Sie auf Zugriffssteuerung (IAM)>Hinzufügen>Rollenzuweisung hinzufügen.
- Wählen Sie auf der Registerkarte Rolle in der Liste der Auftragsfunktionsrollen die Option Deployment Environments-Leser aus.
- Wählen Sie auf der Registerkarte Mitglieder Mitglieder auswählen aus, und suchen Sie dann nach Ihrem eigenen Konto.
- Wählen Sie Ihr Konto aus der Liste, und wählen Sie dann Auswählen aus.
- Wählen Sie auf der Registerkarte Überprüfen + zuweisen die Option Überprüfen + zuweisen aus, um die Rollenzuweisung hinzuzufügen.
Sie können jetzt die Umgebungen anzeigen, die von Ihrem Azure Pipelines-Workflow erstellt wurden.
Konfigurieren einer Pipeline
Bearbeiten Sie die azure-pipelines.yml
-Datei in Ihrem Azure Repos-Repository, um Ihre Pipeline anzupassen.
In der Pipeline definieren Sie die Schritte zum Erstellen der Umgebung. In dieser Pipeline definieren Sie die Schritte zur Erstellung der Umgebung als Auftrag, d. h. eine Reihe von Schritten, die nacheinander als Einheit ablaufen.
So passen Sie die Pipeline an:
- Geben Sie die zu verwendende Dienstverbindung an, und die Pipeline verwendet die Azure CLI, um die Umgebung zu erstellen.
- Verwenden Sie ein Inlineskript, um einen Azure CLI-Befehl auszuführen, der die Umgebung erstellt.
Die Azure CLI ist ein Befehlszeilentool, das eine Reihe von Befehlen für die Arbeit mit Azure-Ressourcen bereitstellt. Weitere Azure CLI-Befehle finden Sie unter az devcenter.
Wählen Sie in Ihrem Azure DevOps-Projekt Repos>Files aus.
Wählen Sie im Bereich Dateien aus dem
.ado
-Ordner dieazure-pipelines.yml
-Datei aus.Bearbeiten Sie in der
azure-pipelines.yml
-Datei den vorhandenen Inhalt mit dem folgenden Code:Ersetzen Sie
<AzureServiceConnectionName>
durch den Namen der Dienstverbindung, die Sie zuvor erstellt haben.Ersetzen Sie in
Inline script
jeden der folgenden Platzhalter durch Werte, die für Ihre Azure-Umgebung geeignet sind:Platzhalter Wert <dev-center-name>
Der Name Ihres Dev Centers. <project-name>
Der Name des Projekts. <catalog-name>
Der Name Ihres Katalogs. <environment-definition-name>
Nicht ändern. Definiert die verwendete Umgebungsdefinition. <environment-type>
Der Umgebungstyp. <environment-name>
Geben Sie einen Namen für Ihre neue Umgebung an. <parameters>
Nicht ändern. Verweist auf die JSON-Datei, die Parameter für die Umgebung definiert.
Wählen Sie Committen, um Ihre Änderungen zu speichern.
Fügen Sie im Commit-Bereich Änderungen übernehmen eine Commit-Nachricht hinzu und wählen Sie dann Commit aus.
Erstellen einer Umgebung mithilfe einer Pipeline
Als Nächstes führen Sie die Pipeline aus, um die ADE-Umgebung zu erstellen.
- Wählen Sie in Ihrem Azure DevOps-Projekt Pipelines aus.
- Wählen Sie die zuvor erstellte Pipeline und dann Pipeline ausführen aus.
- Sie können den Fortschritt der Pipelineausführung überprüfen, indem Sie den Pipelinenamen und dann Ausführungen auswählen. Wählen Sie die Ausführung aus, um die Details der Pipelineausführung anzuzeigen.
- Sie können auch den Fortschritt der Umgebungserstellung im Azure-Portal überprüfen, indem Sie Ihr Dev Center auswählen, Ihr Projekt auswählen und dann Umgebungen auswählen.
Sie können diesen Auftrag an beliebiger Stelle in einer Continuous Integration (CI)- und/oder einer Continuous Delivery (CD)-Pipeline einfügen. Erste Schritte mit der Dokumentation zu Azure Pipelines, um mehr über das Erstellen und Verwalten von Pipelines zu erfahren.
Bereinigen von Ressourcen
Wenn Sie mit den Ressourcen, die Sie in diesem Tutorial erstellt haben, fertig sind, können Sie sie löschen, um Kosten zu vermeiden.
Verwenden Sie den folgenden Befehl, um die Umgebung zu löschen, die Sie in diesem Lernprogramm erstellt haben:
az devcenter dev environment delete --dev-center <DevCenterName> --project-name <DevCenterProjectName> --name <DeploymentEnvironmentInstanceToCreateName> --yes