Share via


Een omgevingsdefinitie toevoegen en configureren

In dit artikel wordt uitgelegd hoe u een omgevingsdefinitie toevoegt, bijwerkt of verwijdert in een catalogus met Azure Deployment Environments. Ook wordt uitgelegd hoe u naar een containerinstallatiekopieën verwijst om uw omgeving te implementeren.

In Azure Deployment Environments gebruikt u een catalogus om uw ontwikkelteams een gecureerde set vooraf gedefinieerde infrastructuur als codesjablonen (IaC) te bieden die omgevingsdefinities worden genoemd.

Een omgevingsdefinitie bestaat uit ten minste twee bestanden:

  • Een sjabloon van een IaC-framework. Bijvoorbeeld:
    • Een ARM-sjabloon (Azure Resource Manager) kan een bestand met de naam azuredeploy.json gebruiken.
    • Een Bicep-sjabloon kan een bestand met de naam main.bicep gebruiken.
    • Een Terraform-sjabloon kan een bestand met de naam azuredeploy.tf gebruiken.
  • Een configuratiebestand met metagegevens over de sjabloon. Dit bestand moet de naam environment.yaml hebben.

Uw ontwikkelteams gebruiken de omgevingsdefinities die u in de catalogus opgeeft om omgevingen in Azure te implementeren.

Microsoft biedt een voorbeeldcatalogus die u als opslagplaats kunt gebruiken. U kunt ook uw eigen privéopslagplaats gebruiken of u kunt de omgevingsdefinities in de voorbeeldcatalogus splitsen en aanpassen.

Nadat u een catalogus aan uw ontwikkelaarscentrum hebt toegevoegd, scant de service het opgegeven mappad om mappen te identificeren die een sjabloon en een gekoppeld omgevingsbestand bevatten. Het opgegeven mappad moet een map zijn die submappen bevat die de omgevingsdefinitiebestanden bevatten.

Een omgevingsdefinitie toevoegen

Als u een omgevingsdefinitie wilt toevoegen aan een catalogus in Azure Deployment Environments (ADE), voegt u eerst de bestanden toe aan de opslagplaats. Vervolgens synchroniseert u de ontwikkelaarscentrumcatalogus met de bijgewerkte opslagplaats.

Een omgevingsdefinitie toevoegen:

  1. Maak in uw GitHub - of Azure DevOps-opslagplaats een submap in het pad van de opslagplaatsmap.

  2. Voeg twee bestanden toe aan de nieuwe submap van de opslagplaats:

    • Een IaC-sjabloonbestand.

    • Een omgeving als YAML-bestand.

      Het bestand environment.yaml bevat metagegevens met betrekking tot de IaC-sjabloon.

      Het volgende script is een voorbeeld van de inhoud van een environment.yaml-bestand voor een ARM-sjabloon:

          name: WebApp
          version: 1.0.0
          summary: Azure Web App Environment
          description: Deploys a web app in Azure without a datastore
          runner: ARM
          templatePath: azuredeploy.json
      

      Gebruik de volgende tabel om inzicht te hebben in de velden in het bestand environment.yaml :

      Veld Beschrijving
      naam De naam van de omgevingsdefinitie.
      version De versie van de omgevingsdefinitie. Dit veld is optioneel.
      samenvatting Een korte beschrijving van de omgevingsdefinitie.
      beschrijving Een gedetailleerde beschrijving van de omgevingsdefinitie.
      Runner Het IaC-framework dat door de sjabloon wordt gebruikt. De waarde kan ARM of Bicep. U kunt ook een pad opgeven naar een sjabloon die is opgeslagen in een containerregister.
      templatePath Het pad naar het IaC-sjabloonbestand.

      Zie Parameters en gegevenstypen in environment.yaml voor meer informatie over de opties en gegevenstypen die u kunt gebruiken in environment.yaml.

  3. Ga in uw ontwikkelaarscentrum naar Catalogi, selecteer de opslagplaats en selecteer vervolgens Synchroniseren.

    Schermopname van het synchroniseren van de catalogus.

De service scant de opslagplaats om nieuwe omgevingsdefinities te vinden. Nadat u de opslagplaats hebt gesynchroniseerd, zijn nieuwe omgevingsdefinities beschikbaar voor alle projecten in het ontwikkelaarscentrum.

Containerinstallatiekopieën gebruiken om omgevingen te implementeren

ADE maakt gebruik van containerinstallatiekopieën om te definiëren hoe sjablonen voor implementatieomgevingen worden geïmplementeerd. ADE ondersteunt systeemeigen ARM en Bicep, zodat u een omgevingsdefinitie kunt configureren waarmee Azure-resources voor een implementatieomgeving worden geïmplementeerd door de sjabloonbestanden (azuredeploy.json en environment.yaml) toe te voegen aan uw catalogus. ADE gebruikt vervolgens een standaard-ARM- of Bicep-containerinstallatiekopieën om de implementatieomgeving te maken.

U kunt aangepaste containerinstallatiekopieën maken voor geavanceerdere omgevingsimplementaties. U kunt bijvoorbeeld scripts uitvoeren vóór of na de implementatie. ADE ondersteunt aangepaste containerinstallatiekopieën voor omgevingsimplementaties, waarmee u IaC-frameworks zoals Pulumi en Terraform kunt implementeren.

Het ADE-team biedt voorbeelden van ARM- en Bicep-containerinstallatiekopieën die toegankelijk zijn via de Microsoft-artefactregister (ook wel bekend als Het Microsoft Container Registry) om u op weg te helpen.

Zie voor meer informatie over het bouwen van een aangepaste containerinstallatiekopieën:

De arm- of Bicep-voorbeeldcontainerinstallatiekopieën opgeven

In het bestand environment.yaml geeft de eigenschap runner de locatie op van de afbeelding die u wilt gebruiken. Als u de voorbeeldafbeelding wilt gebruiken die is gepubliceerd op de Microsoft-artefactregister, gebruikt u de respectieve id'srunner, zoals vermeld in de volgende tabel.

IaC-framework Runner-waarde
ARM ARM
Bicep Bicep
Terraform Geen voorbeeldafbeelding. Gebruik in plaats daarvan een aangepaste containerinstallatiekopieën.

In het volgende voorbeeld ziet u een runner die verwijst naar de bicep-voorbeeldcontainerinstallatiekopieën:

    name: WebApp
    version: 1.0.0
    summary: Azure Web App Environment
    description: Deploys a web app in Azure without a datastore
    runner: Bicep
    templatePath: azuredeploy.json

Een aangepaste containerinstallatiekopieën opgeven

Als u een aangepaste containerinstallatiekopieën wilt gebruiken die zijn opgeslagen in een opslagplaats, gebruikt u de volgende runner-indeling in het bestand environment.yaml:

runner: "{YOUR_REGISTRY}.azurecr.io/{YOUR_REPOSITORY}:{YOUR_TAG}”`

Bewerk de waarde van de runner om te verwijzen naar uw opslagplaats en aangepaste installatiekopieën, zoals wordt weergegeven in het volgende voorbeeld:

    name: WebApp
    version: 1.0.0
    summary: Azure Web App Environment
    description: Deploys a web app in Azure without a datastore
    runner: "{YOUR_REGISTRY}.azurecr.io/{YOUR_REPOSITORY}:{YOUR_TAG}"
    templatePath: azuredeploy.json
Eigenschappen Beschrijving
YOUR_REGISTRY Het register waarin de aangepaste installatiekopieën worden opgeslagen.
YOUR_REPOSITORY Uw opslagplaats in dat register.
YOUR_TAG Een tag zoals een versienummer.

Parameters opgeven voor een omgevingsdefinitie

U kunt parameters opgeven voor uw omgevingsdefinities, zodat ontwikkelaars hun omgevingen kunnen aanpassen.

Parameters worden gedefinieerd in het bestand environment.yaml .

Het volgende script is een voorbeeld van een environment.yaml-bestand voor een ARM-sjabloon die twee parameters bevat; location en name:

name: WebApp
summary: Azure Web App Environment
description: Deploys a web app in Azure without a datastore
runner: ARM
templatePath: azuredeploy.json
parameters:
- id: "location"
  name: "location"
  description: "Location to deploy the environment resources"
  default: "[resourceGroup().location]"
  type: "string"
  required: false
- id: "name"
  name: "name"
  description: "Name of the Web App "
  default: ""
  type: "string"
  required: false

Zie Parameters en gegevenstypen in environment.yaml voor meer informatie over de parameters en de bijbehorende gegevenstypen die u kunt gebruiken in environment.yaml.

Ontwikkelaars kunnen waarden opgeven voor specifieke parameters voor hun omgevingen via de ontwikkelaarsportal.

Schermopname van de ontwikkelaarsportal van de ontwikkelaarsportal met het deelvenster Parameters.

Ontwikkelaars kunnen ook waarden opgeven voor specifieke parameters voor hun omgevingen via de CLI.

az devcenter dev environment create --environment-definition-name
                                    --catalog-name
                                    --dev-center
                                    --environment-name
                                    --environment-type
                                    --project
                                    [--description]
                                    [--no-wait]
                                    [--parameters]
                                    [--tags]
                                    [--user]
                                    [--user-id]

Zie de Azure CLI-devcenter-extensie voor meer informatie over de az devcenter dev environment create opdracht.

Een omgevingsdefinitie bijwerken

Als u de configuratie van Azure-resources in een bestaande omgevingsdefinitie in Azure Deployment Environments wilt wijzigen, werkt u het bijbehorende sjabloonbestand bij in de opslagplaats. De wijziging wordt onmiddellijk weerspiegeld wanneer u een nieuwe omgeving maakt met behulp van de specifieke omgevingsdefinitie. De update wordt ook toegepast wanneer u een omgeving die is gekoppeld aan die omgevingsdefinitie opnieuw implementeert.

Als u metagegevens met betrekking tot de sjabloon wilt bijwerken, wijzigt u environment.yaml en werkt u de catalogus vervolgens bij.

Een omgevingsdefinitie verwijderen

Als u een bestaande omgevingsdefinitie wilt verwijderen, verwijdert u in de opslagplaats de submap die het sjabloonbestand en het bijbehorende YAML-bestand voor de omgeving bevat. Werk vervolgens de catalogus bij.

Nadat u een omgevingsdefinitie hebt verwijderd, kunnen ontwikkelteams de specifieke omgevingsdefinitie niet meer gebruiken om een nieuwe omgeving te implementeren. Werk de referentie voor de omgevingsdefinitie bij voor bestaande omgevingen die gebruikmaken van de definitie van de verwijderde omgeving. Als de verwijzing niet wordt bijgewerkt en de omgeving opnieuw wordt geïmplementeerd, mislukt de implementatie.