订阅未注册以使用命名空间“Microsoft.DataFactory”错误。

79

查看此教程 "使用Visual Studio创建带有复制活动的管道",在发布时出现以下错误:

创建数据工厂名称:VSTutorialFactory,标记:,订阅:按使用付费,资源组:MyAppGroup,位置:北欧,

24/03/2016 11:30:34- 创建数据工厂出错:
Microsoft.WindowsAzure.CloudException: MissingSubscriptionRegistration:
The subscription is not registered to use namespace 'Microsoft.DataFactory'。

该错误没有在任何地方提到。

9个回答

117

您还可以在门户中注册资源提供程序,将其添加到您的订阅中。

在此输入图片描述


https://portal.azure.com/#blade/Microsoft_Azure_Billing/SubscriptionsBlade - dreamflasher

66

在Azure中,每个功能都有一个资源提供程序(例如Microsoft.DataFactory)。

默认情况下,您的Azure订阅未注册所有资源提供程序,因此您的订阅未注册到Microsoft.DataFactory资源提供程序,因此出现了这个错误。

您需要手动向资源提供程序注册您的订阅。如果您使用Azure PowerShell,可以使用Register-AzureRmResourceProvider Cmdlet来实现相同的功能。您需要使用以下语法:

Register-AzureRmResourceProvider -ProviderNamespace Microsoft.DataFactory

一旦您的订阅已经注册到此资源提供商,此错误将消失。


7
@Schneider相信是这样。如果我的记忆无误,您需要点击“订阅”然后再点击“资源提供者”。 - Gaurav Mantri
@Schneider 是的,除了标题栏上的搜索文本框之外,这可以通过“云 shell”完成。 - doganak
1
很有趣。我在想为什么我们需要手动注册它。是否有任何原因,并且这样做是否会产生任何副作用? - ginomessmer
如果其他人在使用不同的资源时遇到了此错误,则您可以在https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/azure-services-resource-providers找到需要使用的资源,而不是“Microsoft.DataFactory”。 - Toby Artisan
3
如果客户尝试创建一个默认未注册的资源,让Azure自动化这一过程是有意义的。如果在门户中向用户展示一个可用的按钮或链接,然后立即遇到错误并且没有解释如何修复,那么这将是一个糟糕的体验。自动注册或禁用该链接,并提供启用说明。 - Fütemire
现代版本显然是:Register-AzResourceProvider -ProviderNamespace - Jari Turkia

50

12

使用 Azure CLI 实现相同的操作,只需要设置

azure provider register Microsoft.DataFactory

为了使这个工作起来,你需要在 arm 配置模式下执行

azure config mode arm

你需要确保选择了适当的账户/订阅才能执行此操作

azure account list
azure account set <SubscriptionNameOrId>

6
在Mac上使用CLI 2.0:az provider register -n Microsoft.DataFactory - Bart Verkoeijen
你的指示是相反的。你告诉人们先注册,然后再检查它是否有正确的账户。 - rollsch

10
你也可以使用 az 命令行工具
  • 进行注册
az provider register --namespace Microsoft.DataFactory
  • 注意事项

在登录并切换到所需订阅之前,请执行这两个命令。

az login
az account set --subscription <name or id>

显然注册需要一些时间。您可以使用az provider show -n Microsoft.DataFactory来跟踪状态。 - user3613932

8

我的目标:

我想在我的Azure门户中为我的虚拟机创建一个自动关机计划。然后我收到了以下错误消息:Schedule failed to update {"error":{"code":"MissingSubscriptionRegistration","message":"The subscription is not registered to use namespace 'Microsoft.DevTestLab'. See https://aka.ms/rps-not-found for how to register subscriptions.","details":[{"code":"MissingSubscriptionRegistration","target":"Microsoft.DevTestLab","message":"The subscription is not registered to use namespace 'Microsoft.DevTestLab'. See https://aka.ms/rps-not-found for how to register subscriptions."}]}}

这个错误信息是什么意思?

它的意思是该订阅未注册使用名称空间 '**Microsoft.DevTestLab**'

如何注册该名称空间?

  1. 在Azure门户上单击“订阅”选项卡
  2. 选择“资源提供程序”
  3. 在搜索框中输入要注册的名称空间
  4. 单击“注册”按钮
  5. 等待约5分钟以完成注册,即可开始使用。

enter image description here


2

步骤1。

az account list

第二步。
az account set --subscription "Pago por uso"

步骤三。

az provider register --namespace Microsoft.DataFactory

注册仍在进行中。您可以使用 az provider show -n Microsoft.DataFactory 进行监控。


0

我遇到了同样的异常问题:

Hyak.Common.CloudExceptionMissingSubscriptionRegistration: The subscription is not registered to use namespace 'Microsoft.DataFactory'.

我认为这是注册订阅的数据工厂提供程序时出现了小错误。

我通过首先手动创建数据工厂,然后使用以下方法自动创建下一个来解决这个问题:

DataFactoryManagementClient

希望这对于其他使用Azure数据工厂的人有所帮助。


0

对我而言,使用 PowerShell Core 和 AZ 3.3.0 可行:

Register-AzResourceProvider -ProviderNamespace Microsoft.Network


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接