Udostępnij za pośrednictwem


Samouczek: używanie wyeksportowanego szablonu z Azure Portal

W tej serii samouczków utworzysz szablon do wdrożenia konta usługi Azure Storage. W dwóch następnych samouczkach dodasz plan App Service i witrynę internetową. Zamiast tworzyć szablony od podstaw, dowiesz się, jak eksportować szablony z Azure Portal i jak używać przykładowych szablonów z szablonów Szybkiego startu platformy Azure. Możesz dostosować te szablony do użycia. Ten samouczek koncentruje się na eksportowaniu szablonów i dostosowywaniu wyniku szablonu. Ukończenie tej instrukcji trwa 14 minut .

Wymagania wstępne

Zalecamy ukończenie samouczka dotyczącego danych wyjściowych, ale nie jest to wymagane.

Musisz mieć Visual Studio Code z rozszerzeniem Resource Manager Tools i interfejsem Azure PowerShell lub interfejsem platformy Azure Command-Line (CLI). Aby uzyskać więcej informacji, zobacz narzędzia szablonów.

Przeglądanie szablonu

Na końcu poprzedniego samouczka szablon miał następujący plik JSON:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storagePrefix": {
      "type": "string",
      "minLength": 3,
      "maxLength": 11
    },
    "storageSKU": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_RAGRS",
        "Standard_ZRS",
        "Premium_LRS",
        "Premium_ZRS",
        "Standard_GZRS",
        "Standard_RAGZRS"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    }
  },
  "variables": {
    "uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2021-09-01",
      "name": "[variables('uniqueStorageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    }
  ],
  "outputs": {
    "storageEndpoint": {
      "type": "object",
      "value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
    }
  }
}

Ten szablon dobrze sprawdza się w przypadku wdrażania kont magazynu, ale warto dodać do niego więcej zasobów. Szablon można wyeksportować z istniejącego zasobu, aby szybko uzyskać kod JSON dla tego zasobu.

Tworzenie planu usługi App Service

  1. Zaloguj się w witrynie Azure Portal.

  2. Wybierz pozycję Utwórz zasób.

  3. W obszarze Usługi wyszukiwania i Witryna Marketplace wprowadź App Service Plan, a następnie wybierz pozycję plan App Service.

  4. Wybierz przycisk Utwórz.

  5. Na stronie Tworzenie planu App Service wprowadź następujące elementy:

    • Subskrypcja: wybierz swoją subskrypcję platformy Azure z menu rozwijanego.
    • Grupa zasobów: wybierz pozycję Utwórz nową , a następnie określ nazwę. Podaj inną nazwę grupy zasobów niż używana w tej serii samouczków.
    • Nazwa: wprowadź nazwę planu App Service.
    • System operacyjny: wybierz pozycję Linux.
    • Region: wybierz lokalizację platformy Azure z menu rozwijanego, takiego jak Środkowe stany USA.
    • Warstwa cenowa: aby zaoszczędzić koszty, wybierz pozycję Zmień rozmiar , aby zmienić jednostkę SKU i rozmiar na pierwszą podstawową (B1), w obszarze Tworzenie i testowanie dla mniej wymagających obciążeń.

    Zrzut ekranu przedstawiający stronę Tworzenie planu App Service w Azure Portal.

  6. Wybierz pozycję Przejrzyj i utwórz.

  7. Wybierz przycisk Utwórz. Utworzenie zasobu zajmuje kilka minut.

Eksportowanie szablonu

  1. Wybierz pozycję Przejdź do zasobu.

    Zrzut ekranu przedstawiający przycisk Przejdź do zasobu w Azure Portal.

  2. W menu po lewej stronie w obszarze Automatyzacja wybierz pozycję Eksportuj szablon.

    Zrzut ekranu przedstawiający opcję Eksportuj szablon w Azure Portal.

    Funkcja szablonu eksportu pobiera bieżący stan zasobu i generuje szablon do jego wdrożenia. Eksportowanie szablonu może być przydatnym sposobem szybkiego uzyskiwania kodu JSON potrzebnego do wdrożenia zasobu.

  3. Przyjrzyj Microsoft.Web/serverfarms się definicji i definicji parametrów w wyeksportowanym szablonie. Nie musisz kopiować tych sekcji. Możesz po prostu użyć tego wyeksportowanego szablonu jako przykładu sposobu dodawania tego zasobu do szablonu.

    Zrzut ekranu przedstawiający wyeksportowany kod JSON szablonu w Azure Portal.

Ważne

Zazwyczaj wyeksportowany szablon jest bardziej szczegółowy niż w przypadku tworzenia szablonu. Obiekt jednostki SKU, na przykład w wyeksportowanym szablonie, ma pięć właściwości. Ten szablon działa, ale można po prostu użyć name właściwości . Możesz zacząć od wyeksportowanego szablonu, a następnie zmodyfikować go tak, jak chcesz spełnić wymagania.

Poprawianie istniejącego szablonu

Wyeksportowany szablon zapewnia większość potrzebnych danych JSON, ale musisz dostosować go dla szablonu. Zwróć szczególną uwagę na różnice w parametrach i zmiennych między szablonem a wyeksportowanym szablonem. Oczywiście proces eksportowania nie zna parametrów i zmiennych, które zostały już zdefiniowane w szablonie.

W poniższym przykładzie wyróżniono dodatki do szablonu. Zawiera wyeksportowany kod oraz pewne zmiany. Najpierw zmienia nazwę parametru tak, aby była zgodna z konwencją nazewnictwa. Po drugie używa parametru lokalizacji dla lokalizacji planu usługi App Service. Po trzecie, usuwa niektóre właściwości, w których wartość domyślna jest dobra.

Skopiuj cały plik i zastąp szablon jego zawartością.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storagePrefix": {
      "type": "string",
      "minLength": 3,
      "maxLength": 11
    },
    "storageSKU": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_RAGRS",
        "Standard_ZRS",
        "Premium_LRS",
        "Premium_ZRS",
        "Standard_GZRS",
        "Standard_RAGZRS"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    },
    "appServicePlanName": {
      "type": "string",
      "defaultValue": "exampleplan"
    }
  },
  "variables": {
    "uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2021-09-01",
      "name": "[variables('uniqueStorageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    },
    {
      "type": "Microsoft.Web/serverfarms",
      "apiVersion": "2021-03-01",
      "name": "[parameters('appServicePlanName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "B1",
        "tier": "Basic",
        "size": "B1",
        "family": "B",
        "capacity": 1
      },
      "kind": "linux",
      "properties": {
        "perSiteScaling": false,
        "reserved": true,
        "targetWorkerCount": 0,
        "targetWorkerSizeId": 0
      }
    }
  ],
  "outputs": {
    "storageEndpoint": {
      "type": "object",
      "value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
    }
  }
}

Wdrażanie szablonu

Użyj interfejsu wiersza polecenia platformy Azure lub Azure PowerShell, aby wdrożyć szablon.

Jeśli grupa zasobów nie została utworzona, zobacz Tworzenie grupy zasobów. W przykładzie przyjęto założenie, że zmienna templateFile została ustawiona na ścieżkę do pliku szablonu, jak pokazano w pierwszym samouczku.

New-AzResourceGroupDeployment `
  -Name addappserviceplan `
  -ResourceGroupName myResourceGroup `
  -TemplateFile $templateFile `
  -storagePrefix "store" `
  -storageSKU Standard_LRS

Uwaga

Jeśli wdrożenie zakończy się niepowodzeniem, użyj przełącznika verbose , aby uzyskać informacje o tworzonych zasobach. Użyj przełącznika, debug aby uzyskać więcej informacji na temat debugowania.

Weryfikowanie wdrożenia

Wdrożenie można zweryfikować, eksplorując grupę zasobów z Azure Portal.

  1. Zaloguj się w witrynie Azure Portal.
  2. W menu po lewej stronie wybierz pozycję Grupy zasobów.
  3. Wybierz wdrożona grupę zasobów.
  4. Grupa zasobów zawiera konto magazynu i plan App Service.

Czyszczenie zasobów

Jeśli przejdziesz do następnego samouczka, nie musisz usuwać grupy zasobów.

Jeśli zatrzymasz się teraz, możesz usunąć grupę zasobów.

  1. W Azure Portal wybierz pozycję Grupy zasobów z menu po lewej stronie.
  2. Wpisz nazwę grupy zasobów w polu tekstowym Filtruj dla dowolnego pola...
  3. Zaznacz pole wyboru obok pozycji myResourceGroup i wybierz pozycję myResourceGroup lub nazwę grupy zasobów.
  4. Wybierz pozycję Usuń grupę zasobów z górnego menu.

Następne kroki

Wiesz już, jak wyeksportować szablon z Azure Portal i jak używać wyeksportowanego szablonu do programowania szablonu. Możesz również użyć szablonów Szybkiego startu platformy Azure, aby uprościć tworzenie szablonów.