Schlüsselkonzepte für Azure Deployment Environments
In diesem Artikel erfahren Sie mehr über die wichtigsten Konzepte und Komponenten von Azure Deployment Environments. Dieses Wissen hilft Ihnen, Umgebungen für Ihre Szenarien effektiver bereitzustellen.
Wenn Sie sich mit Deployment Environments beschäftigen, werden Ihnen vielleicht auch Komponenten von Microsoft Dev Box begegnen, einem ergänzenden Dienst, der zum Teil die gleichen Architekturkomponenten nutzt. Dev Box bietet Entwickler*innen eine cloudbasierte Entwicklungsarbeitsstation, die als Dev Box bezeichnet wird und mit den Tools konfiguriert ist, die sie für ihre Arbeit benötigen.
Dieses Diagramm zeigt die wichtigsten Komponenten von Deployment Environments und ihre Beziehung zueinander. Weitere Informationen zu den einzelnen Komponenten finden Sie in den folgenden Abschnitten.
Dev Center
Ein Dev Center ist eine Sammlung vonProjekten, die ähnliche Einstellungen erfordern. Dev Center ermöglichen Plattformentwicklern folgendes:
- Verwenden von Katalogen, um IaC-Vorlagen (Infrastructure-as-Code) zu verwalten, die für die Projekte verfügbar sind
- Verwenden von Umgebungstypen, um die Typen von Umgebungen zu konfigurieren, die Entwicklungsteams erstellen können
Microsoft Dev Box verwendet ebenfalls Dev Center zum Organisieren von Ressourcen. Eine Organisation kann dasselbe Dev Center für beide Dienste verwenden.
Projekte
In Deployment Environments stellt ein Projekt ein Team oder eine Geschäftsfunktion innerhalb der Organisation dar. Wenn Sie ein Projekt einem Dev Center zuordnen, gelten alle Einstellungen für das Dev Center automatisch für das Projekt.
Jedes Projekt kann nur einem Dev Center zugeordnet werden. Plattformtechniker können Umgebungen für ein Projekt konfigurieren, indem sie angeben, welche Umgebungstypen für das Entwicklungsteam geeignet sind. Um Umgebungsdefinitionen für ein bestimmtes Entwicklungsteam verfügbar zu machen, können Project-Administratoren einen Katalog an ein Projekt anfügen.
Sie müssen Entwicklern Zugriff auf Projekte gewähren, indem Sie die Rolle „Deployment Environments-Benutzer“ zuweisen, damit sie eigene Bereitstellungsumgebungen erstellen können.
Sie können Projekte für Deployment Environments und Projekte für Microsoft Dev Box-Ressourcen im selben Dev Center konfigurieren.
Umgebungen
Eine Umgebung ist eine Sammlung von Azure-Ressourcen, mit denen Ihre Anwendung bereitgestellt wird. Um z. B. eine Webanwendung bereitzustellen, können Sie eine Umgebung erstellen, die aus einer Azure App Service-, Azure Key Vault- und Azure Cosmos DB-Instanz sowie einem Speicherkonto besteht. Eine Umgebung kann sowohl aus Azure Platform-as-a-Service- (PaaS) als auch aus Infrastructure-as-a-Service-Ressourcen (IaaS) wie z. B. einem Azure Kubernetes Service-Cluster (AKS), virtuellen Computern und Datenbanken bestehen.
Identities
Verwaltete Identitäten werden in Azure Deployment Environments verwendet, um Möglichkeiten für Rechteerweiterungen bereitzustellen. Mithilfe von Identitäten können Sie Ihren Entwicklungsteams Self-Service-Funktionen zur Verfügung stellen, ohne ihnen Zugriff auf die Zielabonnements zu geben, in denen die Azure-Ressourcen erstellt werden.
Die verwaltete Identität, die an das Dev Center oder Projekt angefügt ist, muss ein entsprechender Zugriff für das Herstellen einer Verbindung mit den Katalogen gewährt werden. Sie sollten die Zugriffsrechte „Mitwirkender“ und „Benutzerzugriffsadministrator“ für die Zielbereitstellungsabonnements gewähren, die auf Projektebene konfiguriert sind. Der Dienst Azure Deployment Environments verwendet die spezifische verwaltete Identität, um die Bereitstellung im Auftrag des Entwicklers auszuführen.
Dev Center-Umgebungstypen
Sie können die Umgebungstypen festlegen, die Entwicklungsteams erstellen können, z. B. Entwicklung, Tests, Sandbox, Vorproduktion oder Produktion. Azure Deployment Environments bietet die Flexibilität, die Umgebungstypen gemäß der Benennungskonvention Ihres Unternehmen zu benennen. Sie können Einstellungen für verschiedene Umgebungstypen konfigurieren, die auf die spezifischen Anforderungen der Entwicklungsteams abgestimmt sind.
Projektumgebungstypen
Projektumgebungstypen sind eine Teilmenge der Umgebungstypen, die Sie für das Dev Center konfigurieren. Sie helfen, die Umgebungstypen vorzukonfigurieren, die bestimmte Entwicklungsteams erstellen können. Sie können pro Projekt und Umgebungstyp das Zielabonnement konfigurieren, in dem Azure-Ressourcen erstellt werden.
Projektumgebungstypen ermöglichen Ihnen, automatisch die richtigen Richtliniensammlungen auf verschiedene Umgebungen anzuwenden und die auf Azure-Governance bezogenen Konzepte von Ihren Entwicklungsteams zu abstrahieren. Mithilfe des Dienst kann Folgendes flexibel vorkonfiguriert werden:
- Die verwaltete Identität zum Ausführen der Bereitstellung.
- Die Zugriffsebenen, die den Entwicklungsteams gewährt werden, nachdem eine bestimmte Umgebung erstellt wurde.
Kataloge
Kataloge helfen Ihnen bei der Bereitstellung einer Zusammenstellung von IaC-Vorlagen zum Erstellen von Umgebungen für Ihre Entwicklungsteams. Sie können einen Katalog an ein Dev Center anfügen, um diese Umgebungsdefinitionen für alle Projekte verfügbar zu machen, die dem Dev Center zugeordnet sind. Sie können einem Projekt auch einen Katalog anfügen, um diesem bestimmten Projekt Umgebungsdefinitionen bereitzustellen.
Microsoft stellt einen Schnellstart-Katalog bereit, der eine Reihe von Beispielumgebungsdefinitionen enthält. Sie können den Schnellstartkatalog an ein Dev Center oder Projekt anfügen, um diese Umgebungsdefinitionen Entwicklern zur Verfügung zu stellen. Sie können die Beispielumgebungsdefinitionen entsprechend Ihren Anforderungen ändern.
Alternativ können Sie einen eigenen Katalog anfügen. Sie können entweder ein GitHub-Repository oder Azure DevOps Services-Repository als Katalog anfügen.
Bereitstellungsumgebungen durchsuchen den angegebenen Ordner des Repositorys nach Umgebungsdefinitionen. Diese Umgebungsdefinitionen sind für alle Projekte verfügbar, die dem Dev Center zugeordnet sind.
Umgebungsdefinitionen
Eine Umgebungsdefinition besteht aus einer IaC-Vorlage und einer Umgebungsdatei, die als Manifest fungiert. Die Vorlage definiert die Umgebung, und die Umgebungsdatei stellt Metadaten zur Vorlage bereit. Ihre Entwicklungsteams verwenden die Elemente, die Sie im Katalog bereitstellen, zum Erstellen von Umgebungen in Azure.
Integrierte Rollen
Azure Deployment Environments unterstützt drei integrierte Rollen:
- Dev Center-Projektadministrator: Erstellt Umgebungen und verwaltet die Umgebungstypen für ein Projekt.
- Benutzer für Bereitstellungsumgebungen: Erstellt Umgebungen basierend auf geeignetem Zugriff.
- Deployment Environments Reader: Liest Umgebungen, die andere Benutzer erstellt haben.
Mit Microsoft Dev Box gemeinsam genutzte Ressourcen
Azure Deployment Environments und Microsoft Dev Box sind Dienste, die sich gegenseitig ergänzen und bestimmte Architekturkomponenten gemeinsam nutzen. Dev Center und Projekte sind in beiden Diensten enthalten und unterstützen die Organisation von Ressourcen in einem Unternehmen. Sie können Projekte für Bereitstellungsumgebungen und Projekte für Dev Box-Ressourcen im selben Dev Center konfigurieren.
Weitere Informationen zu den gemeinsamen Komponenten von Deployment Environments und Dev Box finden Sie unter Gemeinsam genutzte Komponenten von Microsoft Dev Box und Azure Deployment Environments.