Översikt över anpassade Azure-resursproviders
Azure Custom Resource Providers är en utökningsplattform till Azure. Det gör att du kan definiera anpassade API:er som kan användas för att utöka standardupplevelsen i Azure. Den här dokumentationen beskriver:
- Så här skapar och distribuerar du en anpassad Azure-resursprovider.
- Så här använder du anpassade Azure-resursprovidrar för att utöka befintliga arbetsflöden.
- Här hittar du guider och kodexempel för att komma igång.
Viktigt
Anpassade resursprovidrar är för närvarande i offentlig förhandsversion. Den här förhandsversionen tillhandahålls utan serviceavtal och rekommenderas inte för produktionsarbetsbelastningar. Vissa funktioner kanske inte stöds eller kan vara begränsade. Mer information finns i Kompletterande villkor för användning av Microsoft Azure-förhandsversioner.
Vad kan anpassade resursprovidrar göra
Här följer några exempel på vad du kan uppnå med anpassade Azure-resursprovidrar:
- Utöka Azure Resource Manager REST API till att omfatta interna och externa tjänster.
- Aktivera anpassade scenarier ovanpå befintliga Azure-arbetsflöden.
- Anpassa kontroll och effekt för Azure Resource Manager-mallar.
Vad är en anpassad resursprovider
Azure Custom Resource Providers skapas genom att skapa ett kontrakt mellan Azure och en slutpunkt. Det här kontraktet definierar en lista över nya resurser och åtgärder via en ny resurs, Microsoft.CustomProviders/resourceProviders. Den anpassade resursprovidern exponerar sedan dessa nya API:er i Azure. Azure Custom Resource Providers består av tre delar: anpassad resursprovider, slutpunkter och anpassade resurser.
Så här skapar du anpassade resursprovidrar
Anpassade resursprovidrar är en lista över kontrakt mellan Azure och slutpunkter. De här kontrakten beskriver hur Azure ska interagera med deras slutpunkter. Resursprovidrar fungerar som en proxy och vidarebefordrar begäranden och svar till och från sin angivna slutpunkt. En resursprovider kan ange två typer av kontrakt: resourceTypes och åtgärder. Dessa aktiveras via slutpunktsdefinitioner. En slutpunktsdefinition består av tre fält: namn, routingType och slutpunkt.
Exempelslutpunkt:
{
"name": "{endpointDefinitionName}",
"routingType": "Proxy",
"endpoint": "https://{endpointURL}/"
}
Egenskap | Krävs | Beskrivning |
---|---|---|
name | Ja | Namnet på slutpunktsdefinitionen. Azure exponerar det här namnet via api:et under "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/ resourceProviders/{resourceProviderName}/{endpointDefinitionName}' |
routingType | Nej | Avgör kontraktstypen med slutpunkten. Om det inte anges är standardinställningen "Proxy". |
slutpunkt | Ja | Slutpunkten som begäranden ska dirigeras till. Detta kommer att hantera svaret samt eventuella biverkningar av begäran. |
Skapa anpassade resurser
ResourceTypes beskriver nya anpassade resurser som läggs till i Azure. Dessa exponerar grundläggande RESTful CRUD-metoder. Läs mer om att skapa anpassade resurser
Exempel på anpassad resursprovider med resourceTypes:
{
"properties": {
"resourceTypes": [
{
"name": "myCustomResources",
"routingType": "Proxy",
"endpoint": "https://{endpointURL}/"
}
]
},
"location": "eastus"
}
API:er som lagts till i Azure för exemplet ovan:
HttpMethod | Exempel-URI | Description |
---|---|---|
PUT | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/ providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/ myCustomResources/{customResourceName}?api-version=2018-09-01-preview |
Azure REST API-anropet för att skapa en ny resurs. |
DELETE | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/ providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/ myCustomResources/{customResourceName}?api-version=2018-09-01-preview |
Azure REST API-anropet för att ta bort en befintlig resurs. |
GET | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/ providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/ myCustomResources/{customResourceName}?api-version=2018-09-01-preview |
Azure REST API-anropet för att hämta en befintlig resurs. |
GET | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/ providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/ myCustomResources?api-version=2018-09-01-preview |
Azure REST API-anropet för att hämta listan över befintliga resurser. |
Skapa anpassade åtgärder
Åtgärder beskriver nya åtgärder som läggs till i Azure. Dessa kan exponeras ovanpå resursprovidern eller kapslas under en resourceType. Läs mer om att skapa anpassade åtgärder
Exempel på anpassad resursprovider med åtgärder:
{
"properties": {
"actions": [
{
"name": "myCustomAction",
"routingType": "Proxy",
"endpoint": "https://{endpointURL}/"
}
]
},
"location": "eastus"
}
API:er som lagts till i Azure för exemplet ovan:
HttpMethod | Exempel-URI | Description |
---|---|---|
POST | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/ providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/ myCustomAction?api-version=2018-09-01-preview |
Azure REST API-anropet för att aktivera åtgärden. |
Söker hjälp
Om du har frågor om utveckling av anpassad Azure-resursprovider kan du prova att fråga på Stack Overflow. En liknande fråga kan redan ha ställts och besvarats, så kontrollera först innan du publicerar. Lägg till taggen azure-custom-providers
för att få ett snabbt svar!
Nästa steg
I den här artikeln har du lärt dig om anpassade resursprovidrar. Gå till nästa artikel för att skapa en anpassad resursprovider.