Sdílet prostřednictvím


Přehled onboardingu prostředků vlastních poskytovatelů prostředků Azure

Onboarding prostředků vlastních poskytovatelů prostředků Azure je model rozšiřitelnosti pro typy prostředků Azure. Umožňuje provádět operace nebo správu napříč stávajícími prostředky Azure ve velkém měřítku. Další informace najdete v tématu Jak můžou vlastní poskytovatelé prostředků Azure rozšířit Azure. Tento článek popisuje:

  • Co může onboarding prostředků dělat?
  • Základy onboardingu prostředků a jeho použití
  • Kde najdete příručky a ukázky kódu, abyste mohli začít.

Důležité

Vlastní poskytovatelé prostředků jsou aktuálně ve verzi Public Preview. Tato verze Preview se poskytuje bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce můžou být nepodporované nebo můžou mít omezené možnosti. Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.

Co může onboarding prostředků udělat?

Podobně jako vlastní prostředky poskytovatelů vlastních prostředků Azure definuje onboarding prostředků kontrakt, který zprostředkuje požadavky na onboarding do koncového bodu. Na rozdíl od vlastních prostředků nevytvoří onboarding prostředků nový typ prostředku. Místo toho umožňuje rozšíření existujících typů prostředků. Onboarding prostředků funguje s Azure Policy, takže správu a konfiguraci prostředků je možné provádět ve velkém měřítku. Několik příkladů pracovních postupů onboardingu prostředků:

  • Nainstalujte a spravujte rozšíření virtuálních počítačů.
  • Nahrání a konfigurace výchozích nastavení v účtech úložiště Azure
  • Povolte nastavení základní diagnostiky ve velkém měřítku.

Základy onboardingu prostředků

Onboarding prostředků můžete nakonfigurovat prostřednictvím vlastních poskytovatelů prostředků Azure pomocí typů prostředků Microsoft.CustomProviders/resourceProviders a Microsoft.CustomProviders/associations. Pokud chcete povolit onboarding prostředků pro vlastního poskytovatele prostředků, vytvořte během procesu konfigurace objekt resourceType s názvem "přidružení" s parametrem routingType , který zahrnuje "Extension". Microsoft.CustomProviders/associations a Microsoft.CustomProviders/resourceProviders nemusí patřit do stejné skupiny prostředků.

Tady je ukázkový vlastní poskytovatel prostředků Azure:

{
  "properties": {
    "resourceTypes": [
      {
        "name": "associations",
        "routingType": "Proxy,Cache,Extension",
        "endpoint": "https://microsoft.com/"
      }
    ]
  },
  "location": "eastus"
}
Vlastnost Povinné? Description
name Yes Název definice koncového bodu. Pro onboarding prostředků musí být název "přidružení".
typ směrování Yes Určuje typ kontraktu s koncovým bodem. Pro onboarding prostředků jsou platnými typy směrování Proxy, Mezipaměť, Rozšíření a Webhook, Mezipaměť, Rozšíření.
endpoint Yes Koncový bod, do který se mají požadavky směrovat. Tím se zpracuje odpověď a všechny vedlejší účinky požadavku.

Po vytvoření vlastního poskytovatele prostředků s typem prostředku přidružení můžete cílit pomocí Microsoft.CustomProviders/associations. Microsoft.CustomProviders/associations je prostředek rozšíření, který může rozšířit jakýkoli jiný prostředek Azure. Při vytvoření instance Microsoft.CustomProviders/associations bude mít vlastnost targetResourceId, což by mělo být platné ID prostředku Microsoft.CustomProviders/resourceProviders nebo Microsoft.Solutions/applications. V těchto případech se požadavek předá typu prostředku přidružení v instanci Microsoft.CustomProviders/resourceProviders, kterou jste vytvořili.

Poznámka

Pokud jako targetResourceId zadáte ID prostředku Microsoft.Solutions/applications, musí být ve spravované skupině prostředků nasazená služba Microsoft.CustomProviders/resourceProviders s názvem public.

Ukázkové přidružení vlastních poskytovatelů prostředků Azure:

{
  "properties": {
    "targetResourceId": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}",
    ...
  }
}
Vlastnost Povinné? Description
targetResourceId Yes ID prostředku Microsoft.CustomProviders/resourceProviders nebo Microsoft.Solutions/applications.

Jak používat onboarding prostředků

Onboarding prostředků funguje rozšířením dalších prostředků s rozšířením Microsoft.CustomProviders/associations. V následující ukázce se požadavek vytvoří pro virtuální počítač, ale můžete rozšířit libovolný prostředek.

Nejprve musíte vytvořit vlastní prostředek poskytovatele prostředků s typem prostředku přidružení. Tím se deklaruje adresa URL zpětného volání, která se použije při vytvoření odpovídajícího prostředku Microsoft.CustomProviders/associations, který cílí na vlastního poskytovatele prostředků.

Ukázkový požadavek na vytvoření Microsoft.CustomProviders/resourceProviders:

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}?api-version=2018-09-01-preview
Authorization: Bearer eyJ0e...
Content-Type: application/json

{
  "properties": {
    "resourceTypes": [
      {
        "name": "associations",
        "routingType": "Proxy,Cache,Extension",
        "endpoint": "https://{myCustomEndpoint}/"
      }
    ]
  },
  "location": "{location}"
}

Po vytvoření vlastního poskytovatele prostředků můžete cílit na jiné prostředky a použít u nich vedlejší účinky vlastního poskytovatele prostředků.

Ukázková žádost o vytvoření Microsoft.CustomProviders/associations:

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.CustomProviders/associations/{associationName}?api-version=2018-09-01-preview
Authorization: Bearer eyJ0e...
Content-Type: application/json

{
  "properties": {
    "targetResourceId": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}",
    "myProperty1": "myPropertyValue1",
    "myProperty2": {
        "myProperty3" : "myPropertyValue3"
    }
  }
}

Tento požadavek se pak předá koncovému bodu zadanému ve vlastním poskytovateli prostředků, kterého jste vytvořili, na který odkazuje targetResourceId v tomto formátu:

PUT https://{endpointURL}/?api-version=2018-09-01-preview
Content-Type: application/json
X-MS-CustomProviders-RequestPath: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/associations/{associationName}
X-MS-CustomProviders-ExtensionPath: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.CustomProviders/associations/{associationName}
X-MS-CustomProviders-ExtendedResource: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}

{
  "properties": {
    "myProperty1": "myPropertyValue1",
    "myProperty2": {
        "myProperty3" : "myPropertyValue3"
    }
  }
}

Koncový bod by měl odpovědět souborem application/json Content-Type a platným textem odpovědi JSON. Pole vrácená pod objektem properties json se přidají do odpovědi na vrácení přidružení.

Získání nápovědy

Pokud máte dotazy týkající se vývoje vlastních poskytovatelů prostředků Azure, zkuste se jich zeptat na Stack Overflow. Je možné, že podobná otázka už byla zodpovězena, proto se před publikováním nejprve podívejte. Přidejte značku azure-custom-providers a získejte rychlou odpověď.

Další kroky

V tomto článku jste se dozvěděli o vlastních poskytovatelích prostředků. Další informace najdete v těchto článcích: