Erőforrás-szolgáltató regisztrációjával kapcsolatos hibák elhárítása

Ez a cikk olyan erőforrás-szolgáltató regisztrációs hibáit ismerteti, amelyek akkor fordulnak elő, ha olyan erőforrás-szolgáltatót használ, amelyet még nem használt az Azure-előfizetésében. A hibák akkor jelennek meg, ha bicep-fájllal vagy Azure Resource Manager-sablonnal (ARM-sablonnal) helyez üzembe erőforrásokat. Ha az Azure nem regisztrál automatikusan egy erőforrás-szolgáltatót, manuálisan is regisztrálhat.

Hibajelenség

Az erőforrás üzembe helyezésekor a következő hibakód és üzenet jelenhet meg:

Code: NoRegisteredProviderFound
Message: No registered resource provider found for location {location}
and API version {api-version} for type {resource-type}.

Vagy a következőhöz hasonló üzenetet kaphat:

Code: MissingSubscriptionRegistration
Message: The subscription is not registered to use namespace {resource-provider-namespace}

A hibaüzenetnek javaslatokat kell adnia a támogatott helyekre és API-verziókra vonatkozóan. Módosíthatja a sablont, hogy egy javasolt értéket használjon. A legtöbb szolgáltatót automatikusan regisztrálja a Microsoft Azure Portal vagy a parancssori felület, de nem mindegyik. Ha még nem használt egy adott erőforrás-szolgáltatót, előfordulhat, hogy regisztrálnia kell ezt a szolgáltatót.

Ha a virtuális gép (VM) automatikus leállítása le van tiltva, a következőhöz hasonló hibaüzenet jelenhet meg:

Code: AuthorizationFailed
Message: The client '<identifier>' with object id '<identifier>' does not have authorization to perform
action 'Microsoft.Compute/virtualMachines/read' over scope ...

Váratlan hiba történhet olyan erőforrás-szolgáltatónál, amely nem szerepel az ARM-sablonban vagy a Bicep-fájlban. Ez a hiba akkor fordulhat elő, ha olyan erőforrás van üzembe helyezve, amely más támogató erőforrásokat hoz létre. A sablonban található erőforrás például figyelési vagy biztonsági erőforrásokat ad hozzá. A hibaüzenet azt jelzi, hogy a regisztrálandó erőforrás-szolgáltatói névtér a támogató erőforráshoz tartozik.

Ok

Ezeket a hibákat az alábbi okok valamelyike miatt kapja meg:

  • A szükséges erőforrás-szolgáltató nincs regisztrálva az előfizetéshez.
  • Az API-verzió nem támogatott az erőforrástípushoz.
  • Az erőforrás típusa nem támogatja a helyet.
  • A virtuális gép automatikus leállításához az Microsoft.DevTestLab erőforrás-szolgáltatót regisztrálni kell.

Megoldás

Az Azure CLI használatával információkat kérhet le egy erőforrás-szolgáltató regisztrációs állapotáról, és regisztrálhat egy erőforrás-szolgáltatót.

Az az provider list használatával megjelenítheti az előfizetés erőforrás-szolgáltatóinak regisztrációs állapotát. A példák a paraméter használatával --output table szűrik a kimenetet az olvashatóság érdekében. Az összes tulajdonság megtekintéséhez kihagyhatja a paramétert.

Az alábbi parancs felsorolja az előfizetés összes erőforrás-szolgáltatóját, és azt is, hogy azok Registered vagy NotRegistered.

az provider list --output table

A kimenetet a regisztrációs állapot alapján szűrheti. Cserélje le a lekérdezés értékét a vagy NotRegisteredértékreRegistered.

az provider list --query "[?registrationState=='Registered']" --output table

Egy adott erőforrás-szolgáltató regisztrációs állapotának lekérése:

az provider list --query "[?namespace=='Microsoft.Compute']" --output table

Erőforrás-szolgáltató regisztrálásához használja az az provider register parancsot, és adja meg a regisztrálandó névteret .

az provider register --namespace Microsoft.Cdn

Egy erőforrástípus támogatott helyeinek lekéréséhez használja az az provider show (az provider show) lehetőséget:

az provider show --namespace Microsoft.Web --query "resourceTypes[?resourceType=='sites'].locations"

Erőforrástípus támogatott API-verzióinak lekérése:

az provider show --namespace Microsoft.Web --query "resourceTypes[?resourceType=='sites'].apiVersions"