Как развернуть несколько ресурсов Azure из локальной среды? (VS Code)

#azure #visual-studio-code #azure-functions #azure-web-app-service #azure-resource-manager

#azure #visual-studio-code #azure-функции #azure-web-app-service #azure-resource-manager

Вопрос:

У меня есть веб-приложение, для запуска которого требуется служба приложений Azure, функция Azure и база данных Cosmos DB. Я подумываю о том, чтобы настроить для себя и других разработчиков способ запуска развертывания полного приложения в группе ресурсов разработки, специфичной для разработчика, которая будет содержать полную версию приложения. Например, группа ресурсов dev-John, которая будет содержать dev-John-AppService, dev-John-Function и dev-John-CosmosDB. Есть ли простой способ сделать это в VSCode с использованием шаблонов ARM?

Ответ №1:

Средства диспетчера ресурсов Azure для Visual Studio Code обеспечивают языковую поддержку, фрагменты ресурсов и автозаполнение ресурсов. Эти инструменты помогают создавать и проверять шаблоны диспетчера ресурсов Azure (шаблоны ARM).

Создайте и откройте с помощью Visual Studio Code новый файл, например deploy.json. Просто войдите arm! в редактор кода, который инициирует фрагменты Azure Resource Manager. Вы можете использовать этот фрагмент для создания своего шаблона ARM по своему усмотрению.

введите описание изображения здесь

Вы можете достичь своей цели, используя элемент Параметров и функций вашего шаблона ARM.

В parameters разделе шаблона вы указываете значения, которые предоставляются при выполнении развертывания, чтобы настроить развертывание ресурсов. Аналогичным образом вы также можете использовать functions функции шаблона ARM, которые повышают гибкость вашего шаблона ARM за счет динамического получения значений во время развертывания.

Приведенный ниже шаблон ARM можно использовать для развертывания одного и того же ресурса с настройкой с помощью параметров и функций.

 {
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
       "storageName": {
           "type": "string",
           "minLength": 3,
           "maxLength": 24
       }
   },
   
    "functions": [],
    "variables": {},
    "resources": [{
        "name": "[parameters('storageName')]",
        "type": "Microsoft.Storage/storageAccounts",
        "apiVersion": "2019-06-01",
        "tags": {
            "displayName": "[parameters('storageName')]"
        },
        "location": "[resourceGroup().location]",
        "kind": "StorageV2",
    }],
     "outputs": {}
}
 

Здесь, когда мы добавили "[parameters('storageName')]" , мы использовали функцию параметров. Наконец, вы даже можете создавать сценарии PowerShell для вызова шаблонов ARM.

Я бы посоветовал прочитать это Развертывание в нескольких средах Azure, используя документ JSON ARM template features и изучая ARM Templates: Azure Resource Manager Tutorial для получения дополнительной информации.