Azure Networkingリソースを新しいサブスクリプション・リソースグループへ移動する際の変更点と確認ポイント

Azure Networkingリソースを新しいリソースグループやサブスクリプションへ移動する場合、結論から言うと「移動できるリソース」と「事前に外す・一緒に動かす必要がある依存関係」を確認してから実行することが最重要です。特に、仮想ネットワーク、NIC、パブリックIP、ロードバランサー、プライベートエンドポイント、VNetピアリング、AKS、Azure Databricksなどが絡む環境では、単純なリソース移動として扱うと検証エラーや移行後の通信不具合につながります。

Microsoft Learnの「Move Azure Networking resources to new subscription or resource group – Azure Resource Manager」は、Azure Resource Managerを使って仮想ネットワークなどのAzure Networkingリソースを別のリソースグループまたはサブスクリプションへ移動する際の制約を整理した公式情報です。対象ページはMicrosoft Learn上で最終更新が2026-05-07と表示されており、日本時間で2026-05-08時点の確認情報として、管理者・開発者が見直すべきポイントを整理します。(Microsoft Learn)

目次

Azure Networkingリソース移動でまず理解すべきこと

Azure Networkingのリソース移動は、リージョン移行ではありません。Azure Resource Managerでリソースグループやサブスクリプションを変更する操作であり、リソースの物理的なリージョンを変える操作とは別です。Microsoft Learnでも、ネットワークリソースを新しいリージョンへ移動したい場合は別の手順を参照するよう案内されています。(Microsoft Learn)

実務上は、次のように切り分けて考えると判断しやすくなります。

やりたいこと該当する操作主な確認ポイント
同じリージョン内で管理単位を変えるリソースグループ移動リソースID、RBAC、依存関係、移動可否
別サブスクリプションへ移すサブスクリプション移動同一Microsoft Entraテナント、移動対象の同一リソースグループ集約、クォータ、プロバイダー登録
別リージョンへ移すリージョン移行Azure Resource Mover、再作成、DNS・IP・通信経路の再設計
ネットワーク構成を作り直す再デプロイARM/Bicep/Terraform、名前解決、IP設計、接続先設定

Azure Resource Managerの移動では、リソースIDが変わります。リソースIDはサブスクリプションID、リソースグループ名、プロバイダー、リソース種別、リソース名を含むため、別リソースグループや別サブスクリプションへ移すとパスの一部が変わります。ポータルのカスタムダッシュボード、スクリプト、IaCテンプレート、監視設定、社内台帳などでリソースIDを直接参照している場合は、移動後に更新が必要です。(Microsoft Learn)

何が変わるのか:今回の確認ポイント

今回の公式情報で管理者が注目すべき点は、単に「Azure Networkingリソースは移動できる」という話ではありません。依存関係、Standard SKUのパブリックIP、VNetピアリング、サブネットリンク、プライベートエンドポイントの扱いが明確に示されている点が重要です。

GitHub上のMicrosoftDocsリポジトリでは、2026年4月20日のコミットで、サブネットのresource navigation linksに関する例がAzure Managed RedisからAzure Databricksへ変更されています。ルール自体は「resource navigation linksを含むサブネットがある仮想ネットワークは別サブスクリプションへ移動できない」というものです。つまり、例示サービス名だけで判断せず、サブネットにリンクを作るPaaS統合全般を棚卸しする必要があります。(GitHub)

また、プライベートエンドポイントで移動をサポートするprivate-linkリソースの一覧には、Microsoft.DBforMySQL/flexibleServersが追加されています。MicrosoftDocsの履歴では、2025年10月10日のコミットでこの項目が追加されたことが確認できます。(GitHub)

ただし、これは「すべてのプライベートエンドポイントが移動できる」という意味ではありません。公式情報では、一覧にあるprivate-linkリソースは移動をサポートし、それ以外のprivate-linkリソースは移動をサポートしないとされています。移動前には、プライベートエンドポイントの接続先リソース種別を必ず確認してください。(Microsoft Learn)

影響範囲:管理者と開発者が困りやすい箇所

Azure Networkingリソースの移動では、通信そのものよりも「周辺設定の整合性」でつまずくことが多くあります。Microsoft Learnでは、移動中もネットワークリソースは中断なく動作すると説明されていますが、依存リソースやロック、リソースID変更の影響を無視してよいわけではありません。(Microsoft Learn)

特に確認すべき影響範囲は次の通りです。

影響箇所起こりやすい問題確認すべき内容
リソースIDスクリプト、監視、ダッシュボードが古いIDを参照するAzure CLI、PowerShell、IaC、Runbook、監視ルールを確認
依存リソースMissingMoveDependentResourcesで失敗するNIC、VNet、NSG、ルートテーブル、パブリックIPなどを同時移動
RBAC移動後に権限が想定通り引き継がれないロール割り当ての再作成計画を用意
ポリシーRequestDisallowedByPolicyで失敗する移動先サブスクリプション・リソースグループのAzure Policyを確認
クォータ移動先で上限超過するサブスクリプションのネットワーク系クォータを事前確認
VNetピアリング移動できない、移動後に接続が戻らないピアリングを無効化し、移動後に再有効化
PaaS統合サブネットVNetのサブスクリプション移動ができないresource navigation linksの有無を確認
AKSAKSクラスターが動作しなくなるAKSで使うVNetの移動は原則として慎重に判断

Azure Resource Managerの一般的な移動操作では、移動中に移動元・移動先のリソースグループがロックされ、作成・削除・更新ができません。既存リソースは動作し続けますが、ロックは最大4時間続く可能性があります。運用中の環境では、変更作業やデプロイが重ならない時間帯を選ぶ必要があります。(Microsoft Learn)

移動前に必ず確認すべき前提条件

Azure Networkingリソースを別サブスクリプションへ移動する場合、移動元と移動先のサブスクリプションは同じMicrosoft Entra IDテナントに属している必要があります。また、移動対象のリソースと依存リソースは、同じリソースグループに配置してまとめて移動することが求められます。(Microsoft Learn)

実務では、以下の順でチェックすると抜け漏れを減らせます。

確認項目確認する理由実務での見方
サブスクリプションの状態無効なサブスクリプションには移動できない移動元・移動先がActiveか確認
Microsoft Entraテナント別テナント間の移動は前提外tenantIdが一致するか確認
リソースプロバイダー登録移動先で未登録だと失敗するMicrosoft.Networkなどを登録済みにする
クォータ移動先の上限超過で失敗するPublic IP、NIC、VNet、Load Balancerなどの上限を確認
権限移動操作に必要なRBACがないと実行できない移動元・移動先リソースグループの権限を確認
依存リソース個別移動できない構成があるNIC、VNet、NSG、PIP、LB、ルートテーブルを棚卸し
Azure Policy移動先で作成・配置が拒否される場合があるDenyポリシー、必須タグ、許可リージョンを確認
リソース状態Succeeded以外だと移動できないことがあるエラー状態、更新中、削除中のリソースを解消

テナントIDはAzure CLIで次のように確認できます。

az account show --subscription <移動元サブスクリプション名またはID> --query tenantId
az account show --subscription <移動先サブスクリプション名またはID> --query tenantId

移動先サブスクリプションでMicrosoft.Networkが登録済みか確認する例は次の通りです。

az account set -s <移動先サブスクリプション名またはID>
az provider list --query "[?namespace=='Microsoft.Network'].{Provider:namespace, Status:registrationState}" --out table

未登録であれば、移動前に登録します。

az provider register --namespace Microsoft.Network

Microsoft Learnでは、移動に必要な権限として、移動元リソースグループでMicrosoft.Resources/subscriptions/resourceGroups/moveResources/action、移動先リソースグループでMicrosoft.Resources/subscriptions/resourceGroups/writeが必要とされています。移行作業者にContributor権限を付与している場合でも、カスタムロールを使っている環境ではこの権限が含まれているか確認してください。(Microsoft Learn)

Azure Networkingで特に注意すべきリソース

Microsoft.Networkのリソース種別は、すべて同じように移動できるわけではありません。たとえば、application security groups、DNS zones、route tables、virtual networksなどはリソースグループ移動・サブスクリプション移動をサポートしますが、application gateways、azure firewalls、expressroutecircuits、virtual network gateways、nat gatewaysなどは移動をサポートしないものがあります。Microsoft Learnの「Azure resource types for move operations」では、Microsoft.Network配下の各リソースについて、リソースグループ移動、サブスクリプション移動、リージョン移動の可否が一覧化されています。(Microsoft Learn)

代表的なリソースを整理すると、次のようになります。

リソースリソースグループ移動サブスクリプション移動注意点
virtualNetworksピアリング、サブネットリンク、依存リソースを確認
networkInterfacesVMやVNetとの依存関係を確認
networkSecurityGroups関連付け先のNIC・サブネットを確認
routeTablesサブネット関連付けを確認
publicIPAddresses条件付きで可Standard SKU関連リソースは制約に注意
loadBalancersBasicはサブスクリプション移動可、Standardは不可SKUにより異なるStandard SKUは特に要確認
bastionHosts不可サブスクリプション移動は不可
applicationGateways不可不可再作成や別方式を検討
azureFirewalls不可不可再作成計画が必要
virtualNetworkGateways不可不可VPN/ExpressRoute接続の再設計が必要
privateEndpoints接続先により可接続先により可対応private-linkリソースのみ
privatelinkservices不可不可移動前提にしない

ここで重要なのは、一覧で「可」とされていても、実際の構成によって移動に失敗する場合があることです。たとえば、VNet自体は移動可能でも、サブネットにAzure Databricksのようなリソース連携がありresource navigation linksが存在すると、別サブスクリプションへ移動できません。(Microsoft Learn)

Standard SKUパブリックIPは移動計画の落とし穴

公式情報では、Standard SKUのパブリックIPアドレスに関連付けられているリソースは、サブスクリプションをまたいで移動できないとされています。VMがStandard SKUのパブリックIPに関連付いている場合は、別サブスクリプションへ移動する前にパブリックIPを切り離す必要があります。(Microsoft Learn)

この制約は、次のような構成で見落とされがちです。

構成例見落としやすい点対応
VMにStandard Public IPを直接関連付けVM、NIC、VNetだけを選択して移動しようとする移動前にPublic IPを切り離す
Standard Load Balancer配下の構成ロードバランサーSKUの制約を見落とすSKU別の移動可否を確認
TerraformでPublic IPを参照移動後に古いIDや状態ファイルが残るstate、変数、出力値を更新
監視やFWルールでIPを固定参照IPが変わると接続先が遮断される影響を受ける接続元・接続先を洗い出す

「Azure上では動いているから大丈夫」と考えるのではなく、Public IPをどこで参照しているかを確認してください。DNS、社内ファイアウォール、外部SaaSの許可リスト、パートナー接続、監視ツールなど、Azure外の設定に影響することがあります。

VNetピアリングは無効化してから移動する

ピアリング済みの仮想ネットワークを移動する場合は、先に仮想ネットワークピアリングを無効化し、移動後に再度有効化する必要があります。Microsoft Learnでも、ピアリング済みVNetを移動するには、まずピアリングを無効化し、移動後に再有効化すると説明されています。(Microsoft Learn)

運用では、単に「ピアリングを外して戻す」だけでは不十分です。次の項目もあわせて確認してください。

確認項目理由
ピアリングの両方向設定VNetピアリングは片方向ずつ設定を持つため
Allow forwarded trafficNVAsやハブスポーク構成で通信断の原因になる
Gateway transit / Use remote gatewaysVPN GatewayやExpressRoute Gatewayの利用に影響する
DNS解決Private DNS ZoneやカスタムDNSの参照経路に影響する
NSG・UDRピアリング復旧後もルートや許可ルールが一致しているか確認が必要

特にハブスポーク構成では、ハブVNetの移動は影響範囲が大きくなります。スポーク側の業務システム、VPN、ExpressRoute、Azure Firewall、Private DNS Zone、管理用踏み台などを含め、通信経路図を更新してから作業してください。

サブネットリンクがあるVNetはサブスクリプション移動に注意

仮想ネットワーク内のサブネットにresource navigation linksがある場合、そのVNetを別サブスクリプションへ移動できません。公式ページでは、Azure Databricksリソースがサブネットにデプロイされている場合を例に挙げています。(Microsoft Learn)

この点は、PaaSサービスをVNet統合している環境で特に重要です。管理者がAzure PortalでVNetだけを見ていると、サブネットに作成されたリンクの存在を見落とすことがあります。

確認の考え方は次の通りです。

確認対象見るべきポイント
サブネットdelegated subnet、service association links、resource navigation linksの有無
PaaSサービスDatabricks、Redis、App Service統合、Private Endpointなどの接続状態
IaC定義サブネットに紐づく外部リソースの定義が分離していないか
移動後の構成PaaS側で再接続や再作成が必要か

移動作業の前に、サブネット単位で「どのサービスがこのサブネットを使っているか」を一覧化してください。VNet単位の棚卸しだけでは不足します。

AKSで使うVNetは移動前に慎重に判断する

公式情報では、AKSクラスターの仮想ネットワークを移動すると、AKSクラスターが動作しなくなると明記されています。(Microsoft Learn)

そのため、AKSで利用しているVNetを新しいリソースグループやサブスクリプションへ移動する場合は、通常のネットワークリソース移動よりも慎重な計画が必要です。特に次の構成は影響が大きくなります。

AKS関連の確認項目影響
ノードプールのサブネットノード通信、Pod通信、スケールアウトに影響
Azure CNI構成IPアドレス管理とサブネット設計に影響
Private ClusterAPI Server到達性、DNS解決に影響
Ingress ControllerLoad Balancer、Public IP、DNSに影響
Network PolicyPod間通信や外部通信の許可制御に影響
Private Endpoint接続先の移動可否と再承認に影響

AKSの稼働環境では、VNetを移動するよりも、新しいサブスクリプション側にAKSとネットワークを再構築し、ワークロードを段階的に移行するほうが安全な場合があります。特に本番環境では、Azure Resource Managerの移動機能だけで完結させようとせず、Kubernetes側の再デプロイ、DNS切り替え、Ingress切り替え、監視再設定まで含めて計画してください。

プライベートエンドポイントは接続先リソース種別で判断する

プライベートエンドポイントは、Azure Networkingリソースの中でも移動可否の判断が難しい領域です。公式情報では、移動をサポートするprivate-linkリソースとして、Microsoft.Sql/servers、Microsoft.DocumentDB/databaseAccounts、Microsoft.Kusto/clusters、Microsoft.Synapse/workspaces、Microsoft.DBforMySQL/flexibleServersなどが列挙されています。一方で、その他のprivate-linkリソースは移動をサポートしないとされています。(Microsoft Learn)

また、プライベートエンドポイントは移動前にSucceeded状態であるべきとされています。承認待ち、失敗、更新中の状態で移動しようとすると、移動検証で失敗したり、移動後の接続復旧に時間がかかったりします。(Microsoft Learn)

確認時は、次の観点で棚卸ししてください。

確認項目具体的に見る内容
接続先リソース種別移動サポート対象のprivate-linkリソースか
接続状態Approved、Succeededになっているか
Private DNS Zone移動後も名前解決が正しく向くか
DNS Zone Groupプライベートエンドポイントとの関連付けが維持されるか
接続先サブスクリプション接続承認やRBACが移動後も成立するか
利用アプリ接続文字列やFQDNを固定していないか

プライベートエンドポイントを使う環境では、移動そのものよりもDNSの確認が重要です。IPアドレス、Aレコード、Private DNS Zone Link、アプリケーション側の接続先が整合しているかを、移動前後で比較できるようにしておきましょう。

移動作業の実務手順

Azure Networkingリソースの移動は、作業前の検証で成否の大半が決まります。いきなりAzure PortalでMoveを押すのではなく、依存関係を固め、検証し、影響を受ける設定を更新する流れで進めてください。

フェーズ作業内容失敗を防ぐポイント
棚卸しVNet、NIC、NSG、Public IP、LB、Private Endpoint、DNS、UDRを一覧化Azure外の参照先も含める
依存関係整理移動対象と依存リソースを同じリソースグループに集約サブスクリプション移動では特に重要
制約確認Standard SKU Public IP、VNet Peering、Subnet Links、Private Endpointを確認移動できないものは再作成案を用意
事前検証validateMoveResourcesで検証本番作業前にエラー理由を潰す
作業凍結対象リソースグループの変更作業を止めるロックとデプロイ競合を避ける
移動実行Azure Portal、CLI、PowerShell、REST APIなどで移動複数リソースをまとめて指定
移動後確認リソースID、RBAC、通信、DNS、監視を確認IaCと運用台帳も更新
復旧確認ピアリング、Private DNS、アプリ接続を確認アプリ担当者と共同で疎通確認

Azure CLIでは、移動前の検証にvalidateMoveResourcesを使えます。Microsoft Learnでは、実際に移動せずにシナリオをテストする方法として紹介されています。(Microsoft Learn)

az resource invoke-action --action validateMoveResources \
  --ids "/subscriptions/<source-subscription-id>/resourceGroups/<source-rg>" \
  --request-body '{
    "resources": [
      "/subscriptions/<source-subscription-id>/resourceGroups/<source-rg>/providers/Microsoft.Network/virtualNetworks/<vnet-name>"
    ],
    "targetResourceGroup": "/subscriptions/<target-subscription-id>/resourceGroups/<target-rg>"
  }'

実際の移動では、az resource moveを使用します。サブスクリプションも変更する場合は、移動先サブスクリプションIDを指定します。(Microsoft Learn)

az resource move \
  --destination-group <target-rg> \
  --destination-subscription-id <target-subscription-id> \
  --ids <resource-id-1> <resource-id-2> <resource-id-3>

本番では、仮想ネットワーク単体ではなく、関連するNIC、NSG、ルートテーブル、Public IP、Private Endpointなども含めて移動対象を決めてください。依存リソースが不足していると、MissingMoveDependentResourcesのようなエラーで失敗します。Microsoft Learnでも、依存リソースは移動先に存在するか、移動要求に含める必要があると説明されています。(Microsoft Learn)

移動後に更新すべき設定

移動が成功しても、運用上の作業は終わりではありません。特にサブスクリプションをまたぐ移動では、監視、権限、IaC、ログ、コスト管理の設定を見直す必要があります。

更新対象更新内容
RBAC移動後のリソースまたはリソースグループにロールを再設定
Azure Policy移動先のポリシー準拠状態を確認
IaCARM/Bicep/TerraformのリソースID、リソースグループ、サブスクリプションIDを更新
CI/CDデプロイ先サブスクリプション、サービス接続、環境変数を更新
監視メトリックアラート、ログ収集、ダッシュボードを更新
DNSPrivate DNS Zone Link、Aレコード、条件付きフォワーダーを確認
コスト管理タグ、予算、コストアラート、課金単位を確認
運用台帳構成図、責任者、復旧手順を更新

特にRBACは注意が必要です。Microsoft Learnでは、アクティブなAzureロール割り当てがあるリソースを移動しても、ロール割り当ては移動されず孤立すると説明されています。移動後に必要なロール割り当てを再作成し、不要な孤立割り当ては整理してください。(Microsoft Learn)

よくある失敗と対策

Azure Networkingリソースの移動では、エラーの多くが「移動前に分かること」です。次の表をチェックリストとして使うと、作業当日の手戻りを減らせます。

失敗例原因対策
VNet移動が検証で失敗するピアリングが残っているピアリングを無効化し、移動後に再作成
別サブスクリプションへ移せないStandard SKU Public IPが関連付いている事前にPublic IPを切り離す
Databricks利用サブネットで失敗するresource navigation linksがあるVNet移動ではなく再構築・段階移行を検討
Private Endpointが移動できない接続先private-linkリソースが非対応対応一覧を確認し、必要なら再作成
MissingMoveDependentResourcesが出るNIC、VNet、NSGなどの依存関係不足依存リソースを同じ移動要求に含める
RequestDisallowedByPolicyが出る移動先のAzure Policyで拒否ポリシー適用範囲と例外設定を確認
移動後にスクリプトが失敗する古いリソースIDを参照しているCI/CD、Runbook、IaC、監視設定を更新
作業中に別のデプロイが失敗するリソースグループがロックされている作業時間帯を調整し、変更凍結を周知

移動操作は最大4時間の猶予を持つ複雑な処理であり、移動元・移動先リソースグループはその間ロックされます。移動に時間がかかっても、4時間以内であればAzure Resource Managerが処理を継続している可能性があります。焦って別の移動操作や削除操作を重ねると、トラブルの切り分けが難しくなります。(Microsoft Learn)

管理者・開発者別の確認ポイント

Azure Networkingリソース移動は、インフラ管理者だけの作業ではありません。開発者、SRE、セキュリティ担当、アプリ運用担当がそれぞれ確認すべき点があります。

インフラ管理者が確認すること

  • 移動可否一覧でMicrosoft.Network配下の対象リソースを確認する
  • VNet、NIC、NSG、UDR、Public IP、LB、Private Endpointの依存関係を整理する
  • VNetピアリング、VPN、ExpressRoute、Azure Firewall、Bastionの影響を確認する
  • 移動先サブスクリプションのクォータとリソースプロバイダー登録を確認する
  • 移動後のRBAC、タグ、ポリシー、コスト管理を更新する

開発者が確認すること

  • アプリケーションがリソースIDを直接参照していないか確認する
  • 環境変数、Key Vault、接続文字列、DNS名、Private Endpoint接続を確認する
  • CI/CDのサービス接続やデプロイ先サブスクリプションを更新する
  • TerraformやBicepのstate、パラメーター、出力値を更新する
  • 移動後にアプリケーション疎通テストを行う

セキュリティ・運用担当が確認すること

  • NSG、Azure Policy、Defender for Cloud、診断設定の適用状態を確認する
  • 監査ログ、アラート、ワークブック、ダッシュボードを更新する
  • 外部ファイアウォールやSaaS側のIP許可リストを確認する
  • 変更管理上の作業凍結時間を調整する
  • 障害時の切り戻し方針を決めておく

移動するべきか、再作成するべきかの判断基準

すべてのネットワークリソースを「移動」で処理するのが最適とは限りません。構成が複雑な場合、移動よりも新しいサブスクリプションにネットワークを再構築し、アプリケーションを段階的に移すほうが安全なことがあります。

判断基準移動が向いているケース再作成が向いているケース
構成の複雑さ単純なVNet、NSG、NIC中心AKS、Databricks、Private Endpoint、ハブスポーク構成が複雑
停止許容度短時間の変更凍結が許容される通信影響を極小化したい
IPアドレス設計既存IPを維持したいIP設計を見直したい
IaC管理現状構成がコード化されている手作業構成が多く、移動後の整合性が不安
組織変更管理単位だけを変更したいセキュリティ・運用設計も刷新したい
非対応リソース移動対象が対応済みApplication Gateway、Azure Firewall、VPN Gatewayなど非対応が多い

おすすめは、まず移動可否を確認し、その後に「移動」「再作成」「段階移行」の3案を比較することです。特に本番環境では、移動機能が使えるからといって即実行せず、通信影響、DNS、監視、権限、IaCの更新まで含めて判断してください。

次に取るべき行動

Azure Networkingリソースを新しいリソースグループやサブスクリプションへ移動する場合は、まずMicrosoft.Network配下の対象リソースを棚卸しし、移動可否と依存関係を確認してください。次に、Standard SKUパブリックIP、VNetピアリング、サブネットのresource navigation links、プライベートエンドポイント、AKS利用VNetの有無を重点的に確認します。

作業前には、移動先サブスクリプションのMicrosoft Entraテナント、リソースプロバイダー登録、クォータ、RBAC、Azure Policyを確認し、validateMoveResourcesで検証してから本番作業に進めるのが安全です。移動後は、リソースID、RBAC、DNS、監視、IaC、CI/CDを更新し、アプリケーション疎通まで確認してください。

Azure Networkingの移動は、単なる管理画面上の「Move」操作ではなく、ネットワーク構成・依存関係・運用設定をまとめて見直す作業です。移動できるかどうかだけでなく、移動後に安定運用できるかを基準に計画することが、失敗を避ける最も現実的な方法です。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次