无法将 Webapp 移动到新资源组
Can't move Webapp to new resource group
我通过 REST API 成功地将多个资源移动到其他资源组(使用 this howto) but it failed when I tried to move a WebApp and its service plan. I know there are limitations:我必须移动整个资源组,目标资源组不能包含 WebApp。所以我的目标资源组是空的,我的源资源组只包含 WebApp 和服务计划。
按照 howto 中的建议,我写了这个 JSON:
{
"targetResourceGroup": "/subscriptions/Subscription-B/resourceGroups/newRG",
"resources": [
"/subscriptions/Subscription-A/resourceGroups/oldRG/providers/Microsoft.Web/serverFarms/test",
"/subscriptions/Subscription-A/resourceGroups/oldRG/providers/Microsoft.Web/sites/test"
]
}
和 运行 通过命令:
armclient post https://management.azure.com/subscriptions/Subscription-A/resourceGroups/oldRG/moveResources?api-version=2015-01-01 @path/to/my/json -verbose
我在命令 window 中得到“202:已接受”,在门户中我在两个资源组(oldRG 和 newRG)中看到信息文本 "resources being moved" 但一分钟后,什么都没有改变了。
编辑:
当我在 oldRG 中单击 "delete" 时,我看到了所有包含的资源:有 4 个警报规则、1 个自动缩放设置和 1 个证书。
如限制中所述,我必须移动其中的 all。但是我怎样才能访问这三种类型的资源呢?我没有他们的资源 ID,因为我在搜索时没有找到他们。
证书资源 ID 如下所示:
/subscriptions/Subscription-A/resourceGroups/oldRG/providers/Microsoft.Web/certificates/<certificateThumbprint>
您不必传递自动缩放设置或警报规则。
解决方案结合了 Zain Rizvi 的回答和以下内容:
我认为这无关紧要,这就是为什么我告诉你这两个资源组的名称是 oldRG
和 newRG
- 但实际上 它们具有相同的名称 。这就是问题所在。即使它们在不同的订阅中,我也无法将我的资源移动到与当前资源同名的资源组中。所以我在 subscriptionB 中创建了一个新的空资源组 (tmpRG) 并将我的资源从 subscriptionA\myRG 移动到 subscriptionB\tmpRG 然后从 subscriptionB\tmpRG 到 subscriptionB\myRG.
我通过 REST API 成功地将多个资源移动到其他资源组(使用 this howto) but it failed when I tried to move a WebApp and its service plan. I know there are limitations:我必须移动整个资源组,目标资源组不能包含 WebApp。所以我的目标资源组是空的,我的源资源组只包含 WebApp 和服务计划。 按照 howto 中的建议,我写了这个 JSON:
{
"targetResourceGroup": "/subscriptions/Subscription-B/resourceGroups/newRG",
"resources": [
"/subscriptions/Subscription-A/resourceGroups/oldRG/providers/Microsoft.Web/serverFarms/test",
"/subscriptions/Subscription-A/resourceGroups/oldRG/providers/Microsoft.Web/sites/test"
]
}
和 运行 通过命令:
armclient post https://management.azure.com/subscriptions/Subscription-A/resourceGroups/oldRG/moveResources?api-version=2015-01-01 @path/to/my/json -verbose
我在命令 window 中得到“202:已接受”,在门户中我在两个资源组(oldRG 和 newRG)中看到信息文本 "resources being moved" 但一分钟后,什么都没有改变了。
编辑: 当我在 oldRG 中单击 "delete" 时,我看到了所有包含的资源:有 4 个警报规则、1 个自动缩放设置和 1 个证书。 如限制中所述,我必须移动其中的 all。但是我怎样才能访问这三种类型的资源呢?我没有他们的资源 ID,因为我在搜索时没有找到他们。
证书资源 ID 如下所示:
/subscriptions/Subscription-A/resourceGroups/oldRG/providers/Microsoft.Web/certificates/<certificateThumbprint>
您不必传递自动缩放设置或警报规则。
解决方案结合了 Zain Rizvi 的回答和以下内容:
我认为这无关紧要,这就是为什么我告诉你这两个资源组的名称是 oldRG
和 newRG
- 但实际上 它们具有相同的名称 。这就是问题所在。即使它们在不同的订阅中,我也无法将我的资源移动到与当前资源同名的资源组中。所以我在 subscriptionB 中创建了一个新的空资源组 (tmpRG) 并将我的资源从 subscriptionA\myRG 移动到 subscriptionB\tmpRG 然后从 subscriptionB\tmpRG 到 subscriptionB\myRG.