Share via


クロステナント仮想ネットワークを Virtual WAN ハブに接続する - Azure CLI を使用

この記事は、Azure Virtual WAN を使用して仮想ネットワークを別のテナントの仮想ハブに接続することに役立ちます。 このアーキテクチャは、同じネットワークに接続する必要があるのに異なるテナント上に置かれたクライアント ワークロードがある場合に便利です。 たとえば、次の図に示すように、Contoso 以外の仮想ネットワーク (リモート テナント) を Contoso の仮想ハブ (親テナント) に接続できます。

親テナントとリモート テナントを含むルーティング構成を示す図。

この記事では、次のことについて説明します。

  • Azure サブスクリプションの共同作成者として別のテナントを追加します。
  • クロステナント仮想ネットワークを仮想ハブに接続します。

この構成の手順では、Azure portal と Azure CLI の組み合わせを使用します。 ただし、機能自体は PowerShell と Azure CLI でのみ提供されています。

Note

クロステナント仮想ネットワーク接続は、PowerShell または Azure CLI を使用してのみ管理できます。 Azure portal では、クロステナント仮想ネットワーク接続を管理することはできません

開始する前に

前提条件

この記事の手順を使用するには、環境内に以下の構成が既に設定されている必要があります。

  • 親サブスクリプション内の仮想 WAN と仮想ハブ。
  • 別の (リモート) テナントのサブスクリプション内で構成されている仮想ネットワーク。
  • Virtual WAN CLI 拡張機能、バージョン 0.3.0 以降。 拡張機能の詳細については、「使用可能な Azure CLI 拡張機能」を参照してください。

リモート テナントの仮想ネットワーク アドレス空間が、親の仮想ハブに既に接続されている他の仮想ネットワーク内のどのアドレス空間とも重複していないことを確認してください。

Azure CLI の使用

この記事では、Azure CLI コマンドを使用します。 コマンドを実行するには、Azure Cloud Shell を使用できます。 Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。 一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。

Cloud Shell を開くには、コード ブロックの右上の隅にある [Cloudshell を開く] を選択するだけです。 CloudShell に移動して、別のブラウザー タブで Cloud Shell を開くこともできます。 左上のドロップダウン メニューで、PowerShell ではなく Bash を選択します。

[コピー] を選択してコードのブロックをコピーし、Cloud Shell に貼り付けてから、Enter キーを押して実行します。

アクセス許可の割り当て

  1. リモート テナントの仮想ネットワークのサブスクリプションで、共同作成者ロールの割り当てを管理者 (仮想ハブを管理するユーザー) に追加します。 共同作成者のアクセス許可を使用すると、管理者が、リモート テナント内の仮想ネットワークにアクセスして変更することができます。

    Azure CLI または Azure portal のいずれかを使用して、このロールを割り当てることができます。 手順については、次の記事を参照してください。

  2. 次のコマンドを実行して、リモート テナント サブスクリプションと親テナント サブスクリプションをコンソールの現在のセッションに追加します。 親にサインインしている場合は、リモート テナントに対してのみこのコマンドを実行する必要があります。

    az login --tenant "[tenant ID]"
    
  3. ロールの割り当てが成功したことを確認します。 親の資格情報を使用して Azure CLI にサインインし (まだサインインしていない場合)、次のコマンドを実行します。

    az account list -o table
    

    アクセス許可が親に正しく伝達され、セッションに追加されている場合は、親とリモート テナントが所有するサブスクリプションは、両方ともコマンドの出力に表示されます。

仮想ネットワークをハブに接続する

次の手順では、Azure CLI コマンドを使用し、仮想ハブを別のテナントのサブスクリプション内の仮想ネットワークにリンクします。 例の値は、実際の環境が反映されるように置き換えてください。

  1. 仮想ハブ アカウントのコンテキストを使用していることを確認します。

    az account set --subscriptionId "[virtual hub subscription]"
    
  2. 仮想ネットワークをハブに接続します。

    az network vhub connection create --resource-group "[resource_group_name]" --name "[connection_name]" --vhub-name "[virtual_hub_name]" --remote-vnet "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rgName/providers/Microsoft.Network/virtualNetworks/vnetName"
    

新しい接続は、Azure CLI または Azure portal のいずれかで表示できます。

  • 接続が正常に作成された場合は、新しく作成された接続のメタデータがコンソールに表示されます。
  • Azure portal で、仮想ハブに移動し、[接続]>[仮想ネットワーク接続] を選択します。 その後で接続へのポインターを表示できます。 実際のリソースを表示するには、適切なアクセス許可が必要です。

トラブルシューティング

  • az --version を使用して仮想 WAN 拡張機能が 0.3.0 以上であることを確認します。
  • リモート サブスクリプション アクセスが cli az account list -o table から利用できることを確認します。
  • リソース グループの名前やその他の環境固有の変数の周囲が引用符で囲まれていることを確認します (例: "VirtualHub1" または "VirtualNetwork1")。

次のステップ

  • Virtual WAN の詳細については、FAQ を参照してください。