ExpressRoute回線をクラシックからをAzure ResourceManagerリソースへ移行するときの流れ

初めに

前回、クラシックリソース(以下ASM)からAzure Resource Manager(以下ARM)リソースへの移行について、説明しました。
前回の記事は以下をご参照ください。
  https://cloudsteady.jp/post/5653/

しかし、ExpressRouteを用いている仮想ネットワークをARMへ移行する場合は、先にExpressRoute回線をARMへ移行する必要があります。

今回は、このExpressRoute回線をASMからARMへ移行する方法について説明します。

 

概要

ExpressRoute回線をARMへ移行する場合、前回とは異なり、GUIでの操作ができません。
従って、今回はコマンドベースでの移行となります。大まかな流れとしては以下の通りです。

 

  1. ASM用モジュール(Azureモジュール)のインストール、インポート
  2. ARM用モジュール(Azモジュール)のインストール、インポート
  3. Azure(ASM)へログイン
  4. 既存のExpressRoute回線(ASM)から名前とサービスキーを取得
  5. Azure(ARMへログイン)
  6. 既存のExpressRoute回線(ASM)をARMへ移行
  7. ARMへ移行したExpressRoute回線に対して、ASMへのアクセス許可
  8. ARMへ移行したExpressRoute回線の更新

 

移行手順

  1. ASM用モジュール(Azureモジュール)のインストール、インポート
    下記コマンドを用いて、PowershellでAzureのASMを操作するために必要なモジュールをインストール、インポートします。

    【実行するコマンド】 
     Install-Module Azure -AllowClobber
     Import-Module Azure


  2. ARM用モジュール(Azモジュール)のインストール、インポート
    下記コマンドを用いて、PowershellでAzureのARMを操作するために必要なモジュールをインストール、インポートします。

    【実行するコマンド】
     Install-Module -Name Az -AllowClobber
     Import-Module Az


  3. Azure(ASM)へログイン
    下記コマンドを用いて、Azureにログインします。

    【実行するコマンド】
     Add-AzureAccount
     (上記コマンド実行後、認証画面が出るので、Azureのアカウント情報を入力します。)
     Select-AzureSubscription $subscription 
     ($subscription:操作したいリソースが所属するサブスクリプションの名前)


  4. 既存のExpressRoute回線(ASM)から名前とサービスキーを取得
    下記コマンドを用いると、既存のExpressRoute回線(ASM)の情報を取得できます。その中で、「CircuitName 」、「ServiceKey」という項目がありますので、そちらに記載されている値を記録してください。

    【実行するコマンド】
     Get-AzureDedicatedCircuit


  5. Azure(ARM)へログイン
    下記コマンドを用いて、Azureにログインします。

    【実行するコマンド】
     Connect-AzAccount 
     (上記コマンド実行後、認証画面が出るので、Azureのアカウント情報を入力します。)
     Get-AzSubscription -SubscriptionName $subscription | Select-AzSubscription 
     ($subscription:操作したいリソースが所属するサブスクリプションの名前)


  6. 既存のExpressRoute回線(ASM)をARMリソースへ移行
    下記コマンドを用いて、既存のExpressRoute回線(ARM)をARMリソースへ移行します。

    【実行するコマンド】
     Move-AzExpressRouteCircuit -Name $circuitname -ResourceGroupName $resourcegroupname
     -Location $location -ServiceKey $servicekey
     ($circuitname:「4.」で取得したExpressRoute回線の名前
      $resourcegroupname: ExpressRoute回線(ARM)を格納するリソースグループの名前
      ※ExpressRoute回線(ARM)を格納するリソースグループがない場合は新規で作成する必要があります。
      $location:ExpressRoute回線(ARM)のリージョン
      $servicekey:「4.」で取得したExpressRoute回線のサービスキー

  7. ARMへ移行したExpressRoute回線に対して、ASMへのアクセス許可
    下記コマンドを用いて、ARMへ移行したExpressRoute回線を取得して、クラシックモデルへのアクセスを許可します。
    これにより、ARMへ移行したExpressRoute回線がクラシックVnetでも使用することができます。

    【実行するコマンド】
     $ckt = Get-AzExpressRouteCircuit -Name $newcircuitname -ResourceGroupName $resourcegroupname
     ($newcircuitname:ARMへ移行したExpressRoute回線の名前
      $resourcegroupname: ExpressRoute回線(ARM)を格納しているリソースグループの名前)
     $ckt.AllowClassicOperations = $true


  8. ARMへ移行したExpressRoute回線の更新
    下記コマンドを用いて、「7.」で設定したものを、ARMへ移行したExpressRoute回線に反映させます。

    【実行するコマンド】
     Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
     ($ckt:「7.」で取得したExpressRoute回線)

手順は以上となります。

 

注意点

・今回使用するコマンドではASM用モジュールのコマンドとARM用モジュールのコマンド2種類あります。ASM用モジュール内のコマンドでは、あくまでASMしか取得、作成、変更ができず、ARMのものは取得、作成、変更ができません。ARM用モジュール内のコマンドについても同様です


・ASM用モジュール内のコマンドを用いてAzureにログインしても、あくまで、ASM用モジュールしか使用できず、ARM用モジュールを使用するためには、ARM用モジュール内のコマンドを用いて、別途ログインする必要があります。


・ASMモジュール内のコマンドを使用するためには、下記コマンドでAzureにログインする際に使用するアカウントに
「共同管理者」という権限を持たせる必要があります。詳細は以下をご参照ください。
  https://cloudsteady.jp/post/957/

 

・ExpressRoute回線をASMからARMへの移行する際、切り戻しができないので、切り戻し用のExpressRoute回線を別途用意することにより、より安全に移行することができます。(Microsoftへ問い合わせをし、現状、ExpressRoute回線のASMからARMへの移行で失敗したケースはないと聞いております。)

いいね (←参考になった場合はハートマークを押して評価お願いします)
読み込み中...

注意事項・免責事項

※技術情報につきましては投稿日時点の情報となります。投稿日以降に仕様等が変更されていることがありますのでご了承ください。

※公式な技術情報の紹介の他、当社による検証結果および経験に基づく独自の見解が含まれている場合がございます。

※これらの技術情報によって被ったいかなる損害についても、当社は一切責任を負わないものといたします。十分な確認・検証の上、ご活用お願いたします。