次の方法で共有


Azure Batch アカウントでプライベート エンドポイントを使用する

既定では、Azure Batch アカウントにはパブリック エンドポイントがあり、パブリックにアクセスできます。 Batch サービスでは、Batch アカウントのプライベート エンドポイントを作成し、Batch サービスへのプライベート ネットワーク アクセスを許可する機能が提供されます。

Azure Private Link を使用すると、プライベート エンドポイント経由で Azure Batch アカウントに接続できます。 プライベート エンドポイントは、仮想ネットワークのサブネットにある一組のプライベート IP アドレスです。 その後、プライベート IP アドレス経由で Azure Batch アカウントへのアクセスを制限できます。

Private Link を使用すると、ユーザーは仮想ネットワーク内またはピアリングされた任意の仮想ネットワークから Azure Batch アカウントにアクセスできます。 Private Link にマップされたリソースには、VPN または Azure ExpressRoute を介したプライベート ピアリング経由でオンプレミスでもアクセスできます。 Private Link で構成された Azure Batch アカウントには、 自動または手動の承認方法を使用して接続できます。

この記事では、Batch アカウント エンドポイントにアクセスするためのプライベート エンドポイントを作成する手順について説明します。

Batch アカウントでサポートされているプライベート エンドポイント サブリソース

Batch アカウント リソースには、プライベート エンドポイントでアクセスするための 2 つのエンドポイントがサポートされています。

  • アカウント エンドポイント (サブリソース: batchAccount): このエンドポイントは、プール、コンピューティング ノード、ジョブ、タスクなどの管理など、 Batch Service REST API (データ プレーン) へのアクセスに使用されます。

  • ノード管理エンドポイント (サブリソース: nodeManagement): Batch ノード管理サービスにアクセスするために Batch プール ノードによって使用されます。 このエンドポイントは、 簡略化されたコンピューティング ノード通信を使用する場合にのみ適用されます。

Batch プライベート エンドポイントのサブリソースを示す図。

ヒント

Batch アカウントの実際の使用状況に応じて、いずれかのプライベート エンドポイントまたは仮想ネットワーク内の両方のプライベート エンドポイントを作成できます。 たとえば、仮想ネットワーク内で Batch プールを実行し、他の場所から Batch サービス REST API を呼び出す場合は、仮想ネットワーク内に nodeManagement プライベート エンドポイントを作成するだけで済みます。

Azure Portal

Azure portal を使用して Batch アカウントでプライベート エンドポイントを作成するには、次の手順に従います。

  1. Azure portal で Batch アカウントに移動します。
  2. [設定] で [ネットワーク] を選択し、[プライベート アクセス] タブに移動します。 次に、[ + プライベート エンドポイント] を選択します。 プライベート エンドポイント接続のスクリーンショット。
  3. [ 基本 ] ウィンドウで、サブスクリプション、リソース グループ、プライベート エンドポイントリソース名、リージョンの詳細を入力または選択し、[ 次へ: リソース] を選択します。 プライベート エンドポイントの作成のスクリーンショット - [基本] ウィンドウ。
  4. [ リソース ] ウィンドウで、[ リソースの種類 ] を Microsoft.Batch/batchAccounts に設定します。 アクセスする Batch アカウントを選択し、ターゲット サブリソースを選択してから、[ 次へ: 構成] を選択します。 プライベート エンドポイントの作成のスクリーンショット - [リソース] ウィンドウ。
  5. [構成] ウィンドウで、次の情報を入力または選択します。
    • [仮想ネットワーク] では、お使いの仮想ネットワークを選択します。
    • [サブネット] で、サブネットを選択します。
    • プライベート IP 構成の場合は、既定の動的割り当て IP アドレスを選択します
    • [プライベート DNS ゾーンと統合する] に、 [はい] を選択します。 プライベート エンドポイントに非公開で接続するには、DNS レコードが必要です。 プライベート エンドポイントとプライベート DNS ゾーンを統合することをお勧めします。 また、独自の DNS サーバーを使用したり、仮想マシン上のホスト ファイルを使用して DNS レコードを作成したりすることもできます。
    • [プライベート DNS ゾーン] で、[privatelink.batch.azure.com] を選択します。 プライベート DNS ゾーンは自動的に決定されます。 Azure portal を使用してこの設定を変更することはできません。

重要

  • 以前のプライベート DNS ゾーン privatelink.<region>.batch.azure.comで作成された既存のプライベート エンドポイントがある場合は、 既存の Batch アカウントのプライベート エンドポイントで移行に従ってください。
  • プライベート DNS ゾーン統合を選択した場合は、プライベート DNS ゾーンが仮想ネットワークに正常にリンクされていることを確認します。 Azure portal では、仮想ネットワークにリンクされていない可能性がある既存のプライベート DNS ゾーンを選択でき、 仮想ネットワーク リンクを手動で追加する必要があります。
  1. [ 確認と作成] を選択し、Azure が構成を検証するまで待ちます。
  2. [検証に合格しました] メッセージが表示されたら、[作成] を選択します。

ヒント

Azure portal で Private Link Center からプライベート エンドポイントを作成したり、 プライベート エンドポイントを検索して新しいリソースを作成したりすることもできます。

プライベート エンドポイントを使用する

プライベート エンドポイントがプロビジョニングされたら、仮想ネットワーク内のプライベート IP アドレスを使用して Batch アカウントにアクセスできます。

  • batchAccount のプライベート エンドポイント: Batch アカウントのデータ プレーンにアクセスして、プール/ジョブ/タスクを管理できます。

  • nodeManagement のプライベート エンドポイント: Batch プールのコンピューティング ノードは、Batch ノード管理サービスに接続して管理できます。

ヒント

プライベート エンドポイントを使用している場合は、Batch アカウントでの パブリック ネットワーク アクセス も無効にすることをお勧めします。この場合、プライベート ネットワークへのアクセスのみが制限されます。

重要

Batch アカウントでパブリック ネットワーク アクセスが無効になっている場合、プライベート エンドポイントがプロビジョニングされている仮想ネットワークの外部でアカウント操作 (プール、ジョブなど) を実行すると、Azure portal で Batch アカウントの "AuthorizationFailure" メッセージが表示されます。

Azure portal からプライベート エンドポイントの IP アドレスを表示するには:

  1. すべてのリソースを選択します。
  2. 先ほど作成したプライベート エンドポイントを検索します。
  3. [ DNS 構成 ] タブを選択して、DNS 設定と IP アドレスを表示します。

プライベート エンドポイントの DNS 設定と IP アドレス

DNS ゾーンを構成する

プライベート エンドポイントを作成したサブネット内でプライベート DNS ゾーン を使用します。 各プライベート IP アドレスが DNS エントリにマップされるようにエンドポイントを構成します

プライベート エンドポイントを作成するときは、Azure の プライベート DNS ゾーン と統合できます。 代わりに カスタム ドメインを使用する場合は、プライベート エンドポイント用に予約されているすべてのプライベート IP アドレスの DNS レコードを追加するように構成する必要があります。

既存の Batch アカウントプライベート エンドポイントを使用した移行

Batch ノード管理エンドポイント用の新しいプライベート エンドポイント サブリソース nodeManagement の導入により、Batch アカウントの既定のプライベート DNS ゾーンが privatelink.<region>.batch.azure.com から privatelink.batch.azure.comに簡略化されます。 以前に使用したプライベート DNS ゾーンとの下位互換性を維持するために、承認された batchAccount プライベート エンドポイントを持つ Batch アカウントの場合、そのアカウント エンドポイントの DNS CNAME マッピングには両方のゾーンが含まれます (前のゾーンが先に表示されます)。

myaccount.east.batch.azure.com CNAME myaccount.privatelink.east.batch.azure.com
myaccount.privatelink.east.batch.azure.com CNAME myaccount.east.privatelink.batch.azure.com
myaccount.east.privatelink.batch.azure.com CNAME <Batch API public FQDN>

以前のプライベート DNS ゾーンを引き続き使用する

仮想ネットワークで以前の DNS ゾーン privatelink.<region>.batch.azure.com を既に使用している場合は、既存および新規 の batchAccount プライベート エンドポイントに引き続き使用する必要があります。アクションは必要ありません。

重要

以前のプライベート DNS ゾーンを既存に使用している場合は、新しく作成されたプライベート エンドポイントでも使用し続けてください。 新しいゾーンに移行できるようになるまで、DNS 統合ソリューションで 新しいゾーンを使用しないでください。

Azure portal で DNS 統合を使用して新しい batchAccount プライベート エンドポイントを作成する

自動 DNS 統合を有効にした Azure portal を使用して新しい batchAccount プライベート エンドポイントを手動で作成すると、DNS 統合に privatelink.batch.azure.com 新しいプライベート DNS ゾーンが使用されます。プライベート DNS ゾーンを作成し、仮想ネットワークにリンクし、プライベート エンドポイントのゾーンに DNS A レコードを構成します。

ただし、仮想ネットワークが以前のプライベート DNS ゾーン privatelink.<region>.batch.azure.comに既にリンクされている場合は、新しいプライベート エンドポイントの DNS A レコードが新しいゾーンに追加されますが、DNS 解決では以前のゾーンが最初に下位互換性のサポートのためにチェックされるため、仮想ネットワーク内のバッチ アカウントの DNS 解決が中断されます。

この問題は、次のオプションで軽減できます。

  • 以前のプライベート DNS ゾーンが不要な場合は、仮想ネットワークからリンクを解除します。 これ以上必要な操作はありません。

  • それ以外の場合、新しいプライベート エンドポイントが作成された後:

    1. 自動プライベート DNS 統合に、新しいプライベート DNS ゾーン privatelink.batch.azure.comに作成された DNS A レコードがあることを確認します。 たとえば、myaccount.<region> A <IPv4 address> のようにします。

    2. 前のプライベート DNS ゾーンの privatelink.<region>.batch.azure.comに移動します。

    3. DNS CNAME レコードを手動で追加します。 たとえば、myaccount CNAME => myaccount.<region>.privatelink.batch.azure.com のようにします。

重要

この手動による軽減策は、以前のプライベート DNS ゾーンに既にリンクされている同じ仮想ネットワークにプライベート DNS 統合を使用して新しい batchAccount プライベート エンドポイントを作成する場合にのみ必要です。

以前のプライベート DNS ゾーンを新しいゾーンに移行する

既存のデプロイ プロセスで以前のプライベート DNS ゾーンを使用し続けることはできますが、DNS 構成管理を簡単にするために、新しいゾーンに移行することをお勧めします。

  • 新しいプライベート DNS ゾーン privatelink.batch.azure.comでは、Batch アカウントを使用してリージョンごとに異なるゾーンを構成および管理する必要はありません。
  • 新しいプライベート DNS ゾーンも使用する新しい nodeManagement プライベート エンドポイント の使用を開始する場合は、両方の種類のプライベート エンドポイントに対して 1 つのプライベート DNS ゾーンを管理するだけで済みます。

前のプライベート DNS ゾーンは、次の手順で移行できます。

  1. 新しいプライベート DNS ゾーン privatelink.batch.azure.com を作成し、仮想ネットワークにリンクします。
  2. 以前のプライベート DNS ゾーンのすべての DNS A レコードを新しいゾーンにコピーします。
From zone "privatelink.<region>.batch.azure.com":
    myaccount  A <ip>
To zone "privatelink.batch.azure.com":
    myaccount.<region>  A <ip>
  1. 仮想ネットワークから以前のプライベート DNS ゾーンのリンクを解除します。
  2. 仮想ネットワーク内の DNS 解決を確認し、Batch アカウントの DNS 名を引き続きプライベート エンドポイントの IP アドレスに解決する必要があります。
nslookup myaccount.<region>.batch.azure.com
  1. 新しいプライベート エンドポイントのデプロイ プロセスで、新しいプライベート DNS ゾーンの使用を開始します。
  2. 移行が完了したら、以前のプライベート DNS ゾーンを削除します。

価格設定

プライベート エンドポイントに関連するコストの詳細については、 Azure Private Link の価格に関するページを参照してください。

現在の制限事項とベスト プラクティス

Batch アカウントでプライベート エンドポイントを作成する場合は、次の点に注意してください。

  • プライベート エンドポイント リソースは、Batch アカウントとは異なるサブスクリプションに作成できますが、サブスクリプションは Microsoft.Batch リソース プロバイダーに登録する必要があります。
  • Batch アカウントを使用するプライベート エンドポイントでは、リソース移動はサポートされていません。
  • Batch アカウント リソースが別のリソース グループまたはサブスクリプションに移動された場合、プライベート エンドポイントは引き続き機能しますが、Batch アカウントへの関連付けは中断されます。 プライベート エンドポイント リソースを削除しても、関連付けられているプライベート エンドポイント接続は Batch アカウントに引き続き存在します。 Batch アカウントから接続を手動で削除できます。
  • プライベート接続を削除するには、プライベート エンドポイント リソースを削除するか、Batch アカウントのプライベート接続を削除します (このアクションでは、関連するプライベート エンドポイント リソースが切断されます)。
  • プライベート DNS ゾーン内の DNS レコードは、Batch アカウントからプライベート エンドポイント接続を削除しても自動的には削除されません。 このプライベート DNS ゾーンにリンクされた新しいプライベート エンドポイントを追加する前に、DNS レコードを手動で削除する必要があります。 DNS レコードをクリーンアップしないと、予期しないアクセスの問題が発生する可能性があります。
  • Batch アカウントに対してプライベート エンドポイントが有効になっている場合、Batch タスクのタスク認証トークン はサポートされません。 回避策は、 マネージド ID で Batch プールを使用することです

次のステップ