Создание и использование настраиваемого поставщика ресурсов
Настраиваемый поставщик ресурсов — это контракт между Azure и конечной точкой. С помощью настраиваемых поставщиков ресурсов можно изменять рабочие процессы в Azure. В этом руководстве показан процесс создания настраиваемого поставщика ресурсов. Если вы не знакомы с настраиваемыми поставщиками ресурсов Azure, см. обзор настраиваемых поставщиков ресурсов Azure.
Создание настраиваемого поставщика ресурсов
Примечание
Это руководство не затрагивает процесс создания конечной точки. Если у вас нет конечной точки RESTful, выполните задачи из руководства по созданию конечных точек RESTful. На этом руководстве основан текущий документ.
После создания конечной точки можно создать настраиваемый поставщик ресурсов для создания контракта между поставщиком и конечной точкой. С помощью настраиваемого поставщика ресурсов можно указать список определений конечных точек:
{
"name": "myEndpointDefinition",
"routingType": "Proxy",
"endpoint": "https://<yourapp>.azurewebsites.net/api/<funcname>?code=<functionkey>"
}
Свойство | Обязательно | Описание |
---|---|---|
name | Да | Имя определения конечной точки. Azure предоставляет это имя через свой API-интерфейс в разделе "/subscriptions/{ИД_подписки}/resourceGroups/{Имя_группы_ресурсов}/providers/Microsoft.CustomProviders/ /resourceProviders/{имя_поставщика_ресурсов}/{имя_определения_конечной_точки} |
routingType | Нет | Тип контракта конечной точки. Если это значение не указано, по умолчанию используется тип Proxy (Прокси-сервер). |
endpoint | Да | Конечная точка для направления запросов. Эта конечная точка обрабатывает ответ и все аспекты, на которые влияет запрос. |
Параметр endpoint (конечная точка) содержит URL-адрес триггера для приложения-функции Azure. Замените заполнители <yourapp>
, <funcname>
и <functionkey>
реальными значениями для созданного приложения-функции.
Определение настраиваемых действий и ресурсов
Настраиваемый поставщик ресурсов содержит список определений конечных точек, смоделированных в свойствах actions и resourceTypes . Свойство actions сопоставляется с настраиваемыми действиями, предоставляемыми настраиваемым поставщиком ресурсов, а свойство resourceTypes — пользовательскими ресурсами. В этом руководстве настраиваемый поставщик ресурсов имеет свойство actions с именем myCustomAction
и свойство resourceTypes с именем myCustomResources
.
{
"properties": {
"actions": [
{
"name": "myCustomAction",
"routingType": "Proxy",
"endpoint": "https://<yourapp>.azurewebsites.net/api/<funcname>?code=<functionkey>"
}
],
"resourceTypes": [
{
"name": "myCustomResources",
"routingType": "Proxy",
"endpoint": "https://<yourapp>.azurewebsites.net/api/<funcname>?code=<functionkey>"
}
]
},
"location": "eastus"
}
Развертывание настраиваемого поставщика ресурсов
Примечание
Замените значения endpoint URL-адресом триггера из приложения-функции, созданной в предыдущем руководстве.
Вы можете развернуть предыдущий пользовательский поставщик ресурсов с помощью шаблона Azure Resource Manager:
{
"$schema": "http://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.CustomProviders/resourceProviders",
"name": "myCustomProvider",
"apiVersion": "2018-09-01-preview",
"location": "eastus",
"properties": {
"actions": [
{
"name": "myCustomAction",
"routingType": "Proxy",
"endpoint": "https://<yourapp>.azurewebsites.net/api/<funcname>?code=<functionkey>"
}
],
"resourceTypes": [
{
"name": "myCustomResources",
"routingType": "Proxy",
"endpoint": "https://<yourapp>.azurewebsites.net/api/<funcname>?code=<functionkey>"
}
]
}
}
]
}
Использование настраиваемых действий и ресурсов
После создания настраиваемого поставщика ресурсов можно использовать новые API Azure. В следующих разделах объясняется, как вызывать и использовать настраиваемый поставщик ресурсов.
Настраиваемые действия
Azure CLI
Примечание
Заполнители и {resourceGroupName}
необходимо заменить {subscriptionId}
подпиской и группой ресурсов, в которой развернут пользовательский поставщик ресурсов.
az resource invoke-action --action myCustomAction \
--ids /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/myCustomProvider \
--request-body
'{
"hello": "world"
}'
Параметр | Обязательно | Описание |
---|---|---|
action | Да | Имя действия, определенного в настраиваемом поставщике ресурсов. |
ids | Да | Идентификатор ресурса настраиваемого поставщика ресурсов. |
request-body | Нет | Текст запроса, который будет отправляться в конечную точку. |
Настраиваемые ресурсы
Примечание
Заполнители и {resourceGroupName}
необходимо заменить {subscriptionId}
подпиской и группой ресурсов, в которой развернут пользовательский поставщик ресурсов.
Создание настраиваемого ресурса
az resource create --is-full-object \
--id /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/myCustomProvider/myCustomResources/myTestResourceName1 \
--properties
'{
"location": "eastus",
"properties": {
"hello" : "world"
}
}'
Параметр | Обязательно | Описание |
---|---|---|
full-object | Да | Указывает, включает ли объект свойств другие параметры, такие как расположение, теги, номер SKU и (или) план. |
id | Да | Идентификатор ресурса настраиваемого ресурса. Этот идентификатор является расширением идентификатора ресурса настраиваемого поставщика ресурсов. |
properties | Да | Текст запроса, который будет отправляться в конечную точку. |
Удаление настраиваемого ресурса
az resource delete --id /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/myCustomProvider/myCustomResources/myTestResourceName1
Параметр | Обязательно | Описание |
---|---|---|
идентификатор | Да | Идентификатор ресурса настраиваемого ресурса. Этот идентификатор является расширением идентификатора ресурса настраиваемого поставщика ресурсов. |
Извлечение настраиваемого ресурса
az resource show --id /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/myCustomProvider/myCustomResources/myTestResourceName1
Параметр | Обязательно | Описание |
---|---|---|
идентификатор | Да | Идентификатор ресурса настраиваемого ресурса. Этот идентификатор является расширением идентификатора ресурса настраиваемого поставщика ресурсов. |
Примечание
Завершив развертывание и использование пользовательского поставщика ресурсов, не забудьте очистить все созданные ресурсы, включая приложение-функцию Azure.
Дальнейшие действия
Из этой статьи вы узнали о настраиваемых поставщиках ресурсов. Дополнительные сведения см. в разделе: