Обзор поставщиков настраиваемых ресурсов Azure

Поставщики настраиваемых ресурсов Azure являются платформой для расширяемости для Azure. Это позволяет определять пользовательские интерфейсы API, которые можно использовать для расширения возможностей Azure по умолчанию. Эта документация описывает следующее.

  • Как создать и развернуть поставщик настраиваемых ресурсов Azure.
  • Как использовать поставщиков настраиваемых ресурсов Azure для расширения существующих рабочих процессов.
  • Где найти руководства и примеры кода, чтобы приступить к работе.

Схема настраиваемых поставщиков ресурсов Azure, отображающая связь между Resource Manager Azure, настраиваемыми поставщиками ресурсов и ресурсами.

Важно!

Поставщики настраиваемых ресурсов в настоящее время находятся в общедоступной предварительной версии. Эта предварительная версия предоставляется без соглашения об уровне обслуживания и не рекомендована для использования рабочей среде. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Дополнительные сведения см. в статье Дополнительные условия использования предварительных выпусков Microsoft Azure.

Что могут делать поставщики настраиваемых ресурсов

Здесь несколько примеров того, что вы можете достичь с помощью поставщиков настраиваемых ресурсов Azure:

  • Расширение Azure Resource Manager REST API для включения внутренних и внешних служб.
  • Добавление пользовательских сценариев на основе существующих рабочих процессов Azure.
  • Настройка управления и влияния шаблонов Azure Resource Manager.

Что собой представляет настраиваемый поставщик ресурсов

Поставщики настраиваемых ресурсов Azure создаются с помощью контракта между Azure и конечной точкой. Этот контракт определяет список новых ресурсов и действий с помощью нового ресурса, Microsoft.CustomProviders/resourceProviders. Затем поставщик настраиваемых ресурсов предоставит эти новые API в Azure. Поставщики настраиваемых ресурсов Azure состоят из трех частей: поставщика настраиваемых ресурсов, конечных точеки настраиваемых ресурсов.

Создание поставщиков настраиваемых ресурсов

Настраиваемые поставщики ресурсов представляют собой список контрактов между Azure и конечными точками. Эти контракты описывают, как Azure должна взаимодействовать с их конечными точками. Поставщики ресурсов действуют как прокси-сервер и перенаправят запросы и ответы в указанную конечную точку и из нее. Поставщик ресурсов может указывать два типа контрактов: resourceTypes и actions. Они включаются с помощью определений конечных точек. Определение конечной точки состоит из трех полей: Name, routingTypeи Endpoint.

Пример конечной точки:

{
  "name": "{endpointDefinitionName}",
  "routingType": "Proxy",
  "endpoint": "https://{endpointURL}/"
}
Свойство Обязательно Описание
name да Имя определения конечной точки. Azure предоставит это имя через свой API-интерфейс в папке "/subscriptions/{ИД_подписки}/resourceGroups/{Имя_группы_ресурсов}/providers/Microsoft.CustomProviders/
resourceProviders/{Имя_поставщика ресурсов}/{Имя_определения_конечной_точки}"
routingType нет Определяет тип контракта с конечной точкой. Если не указан, по умолчанию будет «Прокси».
endpoint да Конечная точка для направления запросов. Ответ будет обработан так же, как и любые побочные эффекты запроса.

Создание настраиваемых ресурсов

ResourceTypes описывают новые настраиваемые ресурсы, которые добавляются в Azure. Они представляют базовые методы RESTful CRUD. См. Дополнительные сведения о создании настраиваемых ресурсов.

Пример поставщика настраиваемых ресурсов с resourceTypes:

{
  "properties": {
    "resourceTypes": [
      {
        "name": "myCustomResources",
        "routingType": "Proxy",
        "endpoint": "https://{endpointURL}/"
      }
    ]
  },
  "location": "eastus"
}

API, добавленные в Azure для приведенного выше примера

HttpMethod Образец URI Описание
PUT /subscriptions/{subscriptionId}/resourceGroups/{имя_группы_ресурсов}/
providers/Microsoft.CustomProviders/resourceProviders/{имя поставщика ресурсов}/
myCustomResources/{customResourceName}?api-version=2018-09-01-preview
Вызов REST API Azure для создания нового ресурса.
DELETE /subscriptions/{subscriptionId}/resourceGroups/{имя_группы_ресурсов}/
providers/Microsoft.CustomProviders/resourceProviders/{имя поставщика ресурсов}/
myCustomResources/{customResourceName}?api-version=2018-09-01-preview
Вызов REST API Azure для удаления существующего ресурса.
GET /subscriptions/{subscriptionId}/resourceGroups/{имя_группы_ресурсов}/
providers/Microsoft.CustomProviders/resourceProviders/{имя поставщика ресурсов}/
myCustomResources/{customResourceName}?api-version=2018-09-01-preview
Вызов REST API Azure для извлечения существующего ресурса.
GET /subscriptions/{subscriptionId}/resourceGroups/{имя_группы_ресурсов}/
providers/Microsoft.CustomProviders/resourceProviders/{имя поставщика ресурсов}/
myCustomResources?api-version=2018-09-01-preview
Вызов REST API Azure для извлечения списка существующих ресурсов.

Создание настраиваемых действий

Действия описывают новые действия, добавленные в Azure. Они могут быть представлены поверх поставщика ресурсов или вложены в ResourceType. См. Дополнительные сведения о создании настраиваемых ресурсов.

Пример поставщика настраиваемых ресурсов с действиями:

{
  "properties": {
    "actions": [
      {
        "name": "myCustomAction",
        "routingType": "Proxy",
        "endpoint": "https://{endpointURL}/"
      }
    ]
  },
  "location": "eastus"
}

API, добавленные в Azure для приведенного выше примера

HttpMethod Образец URI Описание
POST /subscriptions/{subscriptionId}/resourceGroups/{имя_группы_ресурсов}/
providers/Microsoft.CustomProviders/resourceProviders/{имя поставщика ресурсов}/
myCustomAction?api-version=2018-09-01-preview
Вызов REST API Azure для активации действия.

Требуется помощь?

Если у вас возникли вопросы о разработке Поставщиков настраиваемых ресурсов Azure, попробуйте задать их в Stack Overflow. Подобный вопрос, возможно, уже был задан, поэтому перед его публикацией сначала проверьте наличие ответа. Чтобы быстрее получить ответ, добавьте к вопросу тег azure-custom-providers!

Дальнейшие действия

Из этой статьи вы узнали о настраиваемых поставщиках ресурсов. Перейдите к следующей статье, чтобы создать настраиваемый поставщик ресурсов.