Dodawanie i konfigurowanie definicji środowiska

W tym artykule wyjaśniono, jak dodawać, aktualizować lub usuwać definicję środowiska w katalogu środowisk wdrażania platformy Azure. Wyjaśniono również, jak odwoływać się do obrazu kontenera w celu wdrożenia środowiska.

W środowiskach wdrażania platformy Azure używasz katalogu do udostępniania zespołom deweloperów wyselekcjonowanego zestawu wstępnie zdefiniowanych szablonów infrastruktury jako kodu (IaC) nazywanych definicjami środowiska.

Definicja środowiska składa się z co najmniej dwóch plików:

  • Szablon ze struktury IaC. Na przykład: .
    • Szablon usługi Azure Resource Manager (ARM) może używać pliku o nazwie azuredeploy.json.
    • Szablon Bicep może używać pliku o nazwie main.bicep.
    • Szablon narzędzia Terraform może używać pliku o nazwie azuredeploy.tf.
  • Plik konfiguracji zawierający metadane dotyczące szablonu. Ten plik powinien mieć nazwę environment.yaml.

Zespoły programistyczne używają definicji środowiska, które podajesz w wykazie, aby wdrażać środowiska na platformie Azure.

Firma Microsoft oferuje przykładowy wykaz , którego można użyć jako repozytorium. Możesz również użyć własnego repozytorium prywatnego lub rozwidlić i dostosować definicje środowiska w przykładowym wykazie.

Po dodaniu wykazu do centrum deweloperów usługa skanuje określoną ścieżkę folderu, aby zidentyfikować foldery zawierające szablon i skojarzony plik środowiska. Określona ścieżka folderu powinna być folderem zawierającym podfoldery zawierające pliki definicji środowiska.

Dodawanie definicji środowiska

Aby dodać definicję środowiska do katalogu w środowiskach wdrażania platformy Azure (ADE), najpierw dodaj pliki do repozytorium. Następnie zsynchronizuj katalog centrum deweloperów ze zaktualizowanym repozytorium.

Aby dodać definicję środowiska:

  1. W repozytorium GitHub lub Azure DevOps utwórz podfolder w ścieżce folderu repozytorium.

  2. Dodaj dwa pliki do nowego podfolderu repozytorium:

    • Plik szablonu IaC.

    • Środowisko jako plik YAML.

      Plik environment.yaml zawiera metadane związane z szablonem IaC.

      Poniższy skrypt to przykład zawartości pliku environment.yaml szablonu usługi ARM:

          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
      

      Poniższa tabela zawiera informacje o polach w pliku environment.yaml :

      Pole Opis
      name Nazwa definicji środowiska.
      version Wersja definicji środowiska. To pole jest opcjonalne.
      Podsumowanie Krótki opis definicji środowiska.
      opis Szczegółowy opis definicji środowiska.
      Runner Struktura IaC używana przez szablon. Wartość może mieć wartość ARM lub Bicep. Można również określić ścieżkę do szablonu przechowywanego w rejestrze kontenerów.
      templatePath Ścieżka do pliku szablonu IaC.

      Aby dowiedzieć się więcej o opcjach i typach danych, których można użyć w pliku environment.yaml, zobacz Parametry i typy danych w pliku environment.yaml.

  3. W centrum deweloperów przejdź do pozycji Wykazy, wybierz repozytorium, a następnie wybierz pozycję Synchronizuj.

    Zrzut ekranu przedstawiający sposób synchronizowania wykazu.

Usługa skanuje repozytorium, aby znaleźć nowe definicje środowiska. Po zsynchronizowaniu repozytorium nowe definicje środowiska są dostępne dla wszystkich projektów w centrum deweloperów.

Wdrażanie środowisk przy użyciu obrazów kontenerów

Usługa ADE używa obrazów kontenerów do definiowania sposobu wdrażania szablonów dla środowisk wdrażania. Usługa ADE obsługuje natywnie usługi ARM i Bicep, dzięki czemu można skonfigurować definicję środowiska, która wdraża zasoby platformy Azure dla środowiska wdrażania, dodając pliki szablonów (azuredeploy.json i environment.yaml) do katalogu. Usługa ADE używa następnie standardowego obrazu kontenera ARM lub Bicep do utworzenia środowiska wdrażania.

Można tworzyć niestandardowe obrazy kontenerów na potrzeby bardziej zaawansowanych wdrożeń środowiska. Można na przykład uruchamiać skrypty przed wdrożeniem lub po nim. Usługa ADE obsługuje niestandardowe obrazy kontenerów dla wdrożeń środowiska, które mogą pomóc w wdrażaniu struktur IaC, takich jak Pulumi i Terraform.

Zespół usługi ADE udostępnia przykładowe obrazy kontenerów arm i Bicep dostępne za pośrednictwem Rejestr Artefaktów Microsoft (znanej również jako Rejestr kontenerów firmy Microsoft), aby ułatwić rozpoczęcie pracy.

Aby uzyskać więcej informacji na temat tworzenia niestandardowego obrazu kontenera, zobacz:

Określanie przykładowego obrazu kontenera arm lub Bicep

W pliku environment.yaml właściwość modułu uruchamiającego określa lokalizację obrazu, którego chcesz użyć. Aby użyć przykładowego obrazu opublikowanego na Rejestr Artefaktów Microsoft, użyj odpowiedniego modułu uruchamiającego identyfikatory, jak pokazano w poniższej tabeli.

Struktura IaC Wartość modułu uruchamiającego
ARM ARM
Bicep Bicep
Terraform Brak przykładowego obrazu. Zamiast tego użyj niestandardowego obrazu kontenera.

W poniższym przykładzie pokazano moduł uruchamiający, który odwołuje się do przykładowego obrazu kontenera Bicep:

    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

Określanie niestandardowego obrazu kontenera

Aby użyć niestandardowego obrazu kontenera przechowywanego w repozytorium, użyj następującego formatu modułu uruchamiającego w pliku environment.yaml:

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

Edytuj wartość modułu uruchamiającego, aby odwołać się do repozytorium i obrazu niestandardowego, jak pokazano w poniższym przykładzie:

    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
Właściwości opis
YOUR_REGISTRY Rejestr, który przechowuje obraz niestandardowy.
YOUR_REPOSITORY Repozytorium w tym rejestrze.
YOUR_TAG Tag, taki jak numer wersji.

Określanie parametrów definicji środowiska

Możesz określić parametry definicji środowiska, aby umożliwić deweloperom dostosowywanie ich środowisk.

Parametry są definiowane w pliku environment.yaml .

Poniższy skrypt jest przykładem pliku environment.yaml dla szablonu usługi ARM zawierającego dwa parametry: location i 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

Aby dowiedzieć się więcej na temat parametrów i ich typów danych, których można użyć w pliku environment.yaml, zobacz Parametry i typy danych w pliku environment.yaml.

Deweloperzy mogą podać wartości dla określonych parametrów dla swoich środowisk za pośrednictwem portalu dla deweloperów.

Zrzut ekranu przedstawiający portal deweloperów portalu dla deweloperów przedstawiający okienko parametrów.

Deweloperzy mogą również podać wartości dla określonych parametrów dla swoich środowisk za pośrednictwem interfejsu wiersza polecenia.

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]

Aby dowiedzieć się więcej o poleceniu, zobacz rozszerzenie devcenter interfejsu az devcenter dev environment create wiersza polecenia platformy Azure.

Aktualizowanie definicji środowiska

Aby zmodyfikować konfigurację zasobów platformy Azure w istniejącej definicji środowiska w środowiskach wdrażania platformy Azure, zaktualizuj skojarzony plik szablonu w repozytorium. Zmiana zostanie natychmiast odzwierciedlona podczas tworzenia nowego środowiska przy użyciu określonej definicji środowiska. Aktualizacja jest również stosowana podczas ponownego wdrażania środowiska skojarzonego z tą definicją środowiska.

Aby zaktualizować wszystkie metadane powiązane z szablonem, zmodyfikuj plik environment.yaml, a następnie zaktualizuj katalog.

Usuwanie definicji środowiska

Aby usunąć istniejącą definicję środowiska, w repozytorium usuń podfolder zawierający plik szablonu i skojarzony plik YAML środowiska. Następnie zaktualizuj katalog.

Po usunięciu definicji środowiska zespoły programistyczne nie mogą już używać określonej definicji środowiska do wdrożenia nowego środowiska. Zaktualizuj odwołanie do definicji środowiska dla wszystkich istniejących środowisk, które używają usuniętej definicji środowiska. Jeśli odwołanie nie zostanie zaktualizowane i środowisko zostanie ponownie wdrożone, wdrożenie zakończy się niepowodzeniem.