0

Je tente de déplacer un groupe de ressources (contenant une machine virtuelle avec ses ressources dépendantes, par exemple une interface réseau, etc.) vers un nouveau groupe d'abonnement et de ressources. (Le mouvement fonctionne très bien si fait via l'interface graphique)Déplacement des ressources Azure vers un autre abonnement à l'aide de Powershell

Mon script:

foreach ($resource in $resources) {Move-AzureRmResource 
-DestinationResourceGroupName "newresourcegroup" -ResourceId $resource.resourceID -DestinationSubscriptionId 123456} 

Son échec avec

Move-AzureRmResource: { "erreur": { "code": » ResourceMoveProviderValidationFailed " "message":".. validation de déplacement des ressources failed S'il vous plaît voir les détails informations de diagnostic: horodatage

etc ...

« Les ressources de déplacer la demande ne contient pas toutes les dépendantes des ressources. Veuillez vérifier les détails de l'erreur pour la ressource manquante ids. \ "}], \" Code \ ": \" MissingMoveDependentResources \ ", \" message \ ": \" La demande de ressources ne contient pas toutes les ressources dépendantes. Veuillez vérifier les détails de l'erreur pour la ressource manquante ids. \ "}}"}, {"Target": "Microsoft.Network/networkInterfaces", "message": "{\" erreur \ ": {\" code \ ": \ "MissingMoveDependentResources \", \ "message \": \ "La requête de déplacement ne contient pas toutes les ressources dépendantes. S'il vous plaît vérifier les détails manquants ressource Ids

Il est clair que je besoin de préciser les ressources qui dépendent en quelque sorte, mais il ne semble pas être un paramètre pour « ressources à charge » pour le module Move-AzureRmResource.

a. Comment puis-je déterminer quelles sont les ressources dépendantes?

b. Comment les spécifier dans la cmdlet move?

Répondre

0

La demande des ressources de déménagement ne contient pas toutes les ressources dépendantes

Selon vos scripts, il semble que vous traversez simplement au moyen de ressources et de les déplacer l'un par un à l'autre groupe de ressources dans un nouvel abonnement. Mais comme nous le savons, certaines ressources peuvent avoir des ressources dépendantes, pour déplacer ce type de ressource (comme une machine virtuelle, etc.), nous devons nous assurer de déplacer toutes les ressources dépendantes, sinon l'opération de déplacement échouera.

Avant de déplacer des services, nous devons connaître what services that enable move and limitations. En outre, s'il vous plaît se référer à Use Powershell to move a VM pour savoir comment déplacer la ressource qui nécessite les ressources dépendantes.

+0

Merci pour le linksFred, le script est la suivante: Move-AzureRmResource -DestinationResourceGroupName $ destinationRG -ResourceId $ vm.ResourceId, $ storageAccount.ResourceId, $ diagStorageAccount.ResourceId, $ vNet.ResourceId, $ nic.ResourceId, $ ip. ResourceId, $ nsg.ResourceId –

+0

Si vous déplacez simplement des ressources d'infrastructure telles que VM, VNet, NIC, etc., il peut être plus facile de copier des disques durs virtuels attachés à VM sur un compte de stockage dans un nouvel abonnement et d'utiliser le déploiement de modèle. Le modèle contiendra déjà toutes les configurations actuelles et, avec les disques durs virtuels existants, vous pouvez recréer tout le groupe de ressources tel quel. Pour obtenir votre modèle actuel, accédez à la lame de votre groupe de ressources dans Azure Portal, puis accédez au script Automation. –

+0

Merci Tomasz, dans ce cas, il est bien plus rapide d'utiliser la commande powershell move comme mentionné ci-dessus .. –