Определение шагов для перемещения ресурсов между группами ресурсов Azure

Завершено

В этом уроке вы узнаете, какие действия может потребоваться выполнить и какие средства можно использовать для перемещения ресурсов между группами ресурсов.

Общие сведения о перемещении ресурсов

При запуске операции перемещения группа ресурсов, содержащая ваши ресурсы, и новая целевая группа ресурсов будут заблокированы. Вы не сможете выполнять операции записи или удаления для этих групп ресурсов, пока операция перемещения не будет завершена. Ваши ресурсы не будут затронуты, но вы не можете добавлять, удалять или обновлять ресурсы в этих группах ресурсов.

Перемещенные ресурсы не меняют расположение. Например, если у вас есть учетная запись хранения в регионе "Восточная часть США" и вы перемещаете ее в другую группу ресурсов, она сохраняет свое расположение в регионе "Восточная часть США".

Перемещение ресурсов между подписками

В зависимости от типа ресурса можно перемещать ресурсы между подписками или между группами ресурсов в рамках одной подписки.

В данном сценарии нам нужно просто переместить пару учетных записей хранения в другую группу ресурсов в той же подписке. Если по причинам выставления счетов необходимо переместить веб-приложение Azure и все зависимые ресурсы в другую подписку, это может включать дополнительные шаги. Как упоминалось в уроке 2, все зависимые ресурсы необходимо переместить в одну группу ресурсов. Затем эти ресурсы можно переместить в новую группу ресурсов в другой подписке. На следующей схеме показаны шаги, которые может потребоваться выполнить. Этот пример включает в себя ресурс с одним зависимым ресурсом в отдельной группе ресурсов.

Diagram that shows three steps to take when moving resources in multiple resource groups to a resource group in another subscription.

  1. Переместите зависимые ресурсы в одну группу ресурсов с требуемым ресурсом.
  2. Совместно переместите ресурс и зависимые ресурсы из исходной подписки в целевую.
  3. При необходимости перераспределите зависимые ресурсы по разным группам ресурсов в целевой подписке.

Процедура перемещения ресурсов

После идентификации ресурсов, которые вы хотите переместить, и убедитесь, что они могут быть перемещены. Вы можете создать группу ресурсов и переместить ресурсы в эту группу ресурсов.

Для перемещения ресурсов можно использовать портал Azure, Azure CLI, PowerShell или REST API Azure. В следующем уроке вы используете портал Azure для перемещения учетных записей хранения в новую группу ресурсов. Таким образом, в этом уроке давайте рассмотрим команды, которые вы используете для перемещения ресурсов с помощью Azure CLI или PowerShell.

Перемещение ресурсов с помощью Azure CLI

Приведенные ниже команды показывают, как переместить ресурс с помощью Azure CLI.

  1. Создать группу ресурсов.

    az group create --name <destination resource group name> --location <location name>
    
  2. Получите ресурс.

     yourResource=$(az resource show --resource-group <resource group name> --name <resource name> --resource-type <resource type> --query id --output tsv)
    
  3. Переместите ресурс в другую группу ресурсов с помощью идентификатора ресурса.

    az resource move --destination-group <destination resource group name> --ids $yourResource
    
  4. Возвратите все ресурсы в группе ресурсов, чтобы убедиться, что ресурс перемещен.

    az resource list --resource-group <destination resource group name> --query [].type --output tsv | uniq
    
  5. Обновите идентификаторы ресурсов во всех инструментах и сценариях, ссылающихся на ваши ресурсы.

Перемещение ресурсов с помощью Azure PowerShell

Приведенные ниже команды показывают, как переместить ресурс с помощью Azure PowerShell.

  1. Создать группу ресурсов.

    New-AzResourceGroup -Name <destination resource group name> -Location <location name>
    
  2. Получите ресурс.

    $yourResource = Get-AzResource -ResourceGroupName <resource group name> -ResourceName <resource name>
    
  3. Переместите ресурс в другую группу ресурсов с помощью идентификатора ресурса.

    Move-AzResource -DestinationResourceGroupName <destination resource group name> -ResourceId $yourResource.ResourceId
    
  4. Возвратите все ресурсы в группе ресурсов, чтобы убедиться, что ресурс перемещен.

    Get-AzResource -ResourceGroupName <destination resource group name> | ft
    
  5. Обновите идентификаторы ресурсов во всех инструментах и сценариях, ссылающихся на ваши ресурсы.