Megosztás a következőn keresztül:


Egyéni erőforrások hozzáadása az Azure REST API-hoz

Ez a cikk az egyéni erőforrásokat megvalósító Azure-beli egyéni erőforrás-szolgáltatói végpontok létrehozásához szükséges követelményeket és ajánlott eljárásokat ismerteti. Ha nem ismeri az Azure-beli egyéni erőforrás-szolgáltatókat, tekintse meg az egyéni erőforrás-szolgáltatók áttekintését.

Erőforrásvégpont definiálása

A végpont egy olyan URL-cím, amely egy szolgáltatásra mutat, amely megvalósítja a mögöttes szerződést az Azure-sal. A végpont az egyéni erőforrás-szolgáltatóban van definiálva, és bármely nyilvánosan elérhető URL-cím lehet. Az alábbi minta egy resourceType nevű myCustomResourceerőforrástípussal rendelkezik, amelyet a következő implementált: endpointURL.

Minta ResourceProvider:

{
  "properties": {
    "resourceTypes": [
      {
        "name": "myCustomResource",
        "routingType": "Proxy, Cache",
        "endpoint": "https://{endpointURL}/"
      }
    ]
  },
  "location": "eastus",
  "type": "Microsoft.CustomProviders/resourceProviders",
  "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}",
  "name": "{resourceProviderName}"
}

Erőforrásvégpont létrehozása

Egy resourceType-et implementáló végpontnak kezelnie kell az azure-beli új API kérését és válaszát. Amikor létrehoz egy resourceType típusú egyéni erőforrás-szolgáltatót, az új API-kat hoz létre az Azure-ban. Ebben az esetben a resourceType létrehoz egy új Azure-erőforrás API-t a PUT, GETDELETE és a CRUD egyetlen erőforráson való végrehajtásához, valamint GET az összes meglévő erőforrás lekéréséhez:

Egyetlen erőforrás (PUT, és GETDELETE) kezelése:

/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/myCustomResource/{myCustomResourceName}

Minden erőforrás lekérése (GET):

/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/myCustomResource

Egyéni erőforrások esetében az egyéni erőforrás-szolgáltatók kétféle útválasztási típust kínálnak: "Proxy" és "Proxy, Cache".

proxy útválasztási típusa

A "Proxy" routingType az egyéni erőforrás-szolgáltatóban megadott végpontra irányítja az összes kérelemmetaképpeni metódust. Mikor érdemes használni a "Proxy":

  • A válasz teljes körű vezérlésére van szükség.
  • Rendszerek integrálása meglévő erőforrásokkal.

Az "Proxy" erőforrásokról az egyéni erőforrásproxy referenciájában talál további információt.

proxygyorsítótár útválasztási típusa

A "Proxy, Cache" routingType proxyk és PUTDELETE a metódusok kérése az egyéni erőforrás-szolgáltatóban megadott végpontra . Az egyéni erőforrás-szolgáltató automatikusan kéréseket ad vissza GET a gyorsítótárában tárolt adatok alapján. Ha egy egyéni erőforrás gyorsítótárral van megjelölve, az egyéni erőforrás-szolgáltató a válaszban mezőket is hozzáad/felülír, hogy az API-k azure-kompatibilisek legyenek. Mikor érdemes használni a "Proxy, Cache":

  • Új rendszer létrehozása, amely nem rendelkezik meglévő erőforrásokkal.
  • Meglévő Azure-ökoszisztémával való együttműködés.

Az "Proxy, Cache" erőforrásokról további információt az egyéni erőforrás-gyorsítótár referenciájában talál.

Egyéni erőforrás létrehozása

Az egyéni erőforrások egyéni erőforrás-szolgáltatóból történő létrehozásának két fő módja van:

  • Azure CLI
  • Azure Resource Manager-sablonok

Azure CLI

Egyéni erőforrás létrehozása:

az resource create --is-full-object \
                   --id /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/{resourceTypeName}/{customResourceName} \
                   --properties \
                    '{
                        "location": "eastus",
                        "properties": {
                            "myProperty1": "myPropertyValue1",
                            "myProperty2": {
                                "myProperty3": "myPropertyValue3"
                            }
                        }
                    }'
Paraméter Kötelező Leírás
is-full-object igen Azt jelzi, hogy a tulajdonságok objektuma más beállításokat is tartalmaz, például a helyet, a címkéket, a termékváltozatot és/vagy a csomagot.
id igen Az egyéni erőforrás erőforrás-azonosítója. Ennek a ResourceProviderből kell léteznie
properties igen A végpontnak küldött kérelemtörzs.

Egyéni Azure-erőforrás törlése:

az resource delete --id /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/{resourceTypeName}/{customResourceName}
Paraméter Kötelező Leírás
id igen Az egyéni erőforrás erőforrás-azonosítója. Ennek a ResourceProviderből kell léteznie.

Egyéni Azure-erőforrás lekérése:

az resource show --id /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/{resourceTypeName}/{customResourceName}
Paraméter Kötelező Leírás
id igen Az egyéni erőforrás erőforrás-azonosítója. Ennek a ResourceProviderből kell léteznie

Azure Resource Manager-sablon

Megjegyzés

Az erőforrások megkövetelik, hogy a válasz megfelelő id, , nameés typevégpontot tartalmazzon.

Az Azure Resource Manager-sablonok megkövetelik, hogy ida , nameés type helyesen legyenek visszaadva az alsóbb rétegbeli végpontról. A visszaadott erőforrás-válasznak a következő formában kell lennie:

Végponti válaszminta:

{
  "properties": {
    "myProperty1": "myPropertyValue1",
    "myProperty2": {
        "myProperty3": "myPropertyValue3"
    }
  },
  "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{customResourceName}",
  "name": "{customResourceName}",
  "type": "Microsoft.CustomProviders/resourceProviders/{resourceTypeName}"
}

Minta Azure Resource Manager-sablon:

{
    "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "resources": [
        {
            "type": "Microsoft.CustomProviders/resourceProviders/{resourceTypeName}",
            "name": "{resourceProviderName}/{customResourceName}",
            "apiVersion": "2018-09-01-preview",
            "location": "eastus",
            "properties": {
                "myProperty1": "myPropertyValue1",
                "myProperty2": {
                    "myProperty3": "myPropertyValue3"
                }
            }
        }
    ]
}
Paraméter Kötelező Leírás
resourceTypeName igen Az egyéni erőforrás-szolgáltatóban definiált resourceTypenév.
resourceProviderName igen Az egyéni erőforrás-szolgáltató példányának neve.
customResourceName igen Az egyéni erőforrás neve.

Következő lépések