パブリック IP アドレスのない Batch プールを作成する (プレビュー)
警告
このプレビュー バージョンは 2023 年 3 月 31 日に廃止され、 パブリック IP アドレスのない簡略化されたノード通信プールに置き換えられます。 詳しくは、廃止移行ガイドに関する記事をご覧ください。
重要
- 現在、次のリージョンでは、パブリック IP アドレスがない Azure Batch プールのサポートは、パブリックプレビュー段階にあります。フランス中部、東アジア、米国中西部、米国中南部、米国西部 2、米国東部、北ヨーロッパ、米国東部 2、米国中部、西ヨーロッパ、米国中北部、米国西部、オーストラリア東部、東日本、西日本
- このプレビュー バージョンはサービス レベル アグリーメントなしで提供されています。運用環境のワークロードに使用することはお勧めできません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。
- 詳しくは、Microsoft Azure プレビューの追加使用条件に関するページをご覧ください。
Azure Batch プールを作成する場合は、パブリック IP アドレスのない仮想マシン構成プールをプロビジョニングすることができます。 この記事では、パブリック IP アドレスのない Batch プールを設定する方法について説明します。
パブリック IP アドレスのないプールを使用する理由
既定では、Azure Batch 仮想マシン構成プール内のすべてのコンピューティング ノードに、パブリック IP アドレスが割り当てられます。 このアドレスは、タスクをスケジュールするため、およびコンピューティング ノードとの通信 (インターネットへの送信アクセスなど) を行うために Batch サービスによって使用されます。
これらのノードへのアクセスを制限し、インターネットからのこれらのノードの探索可能性を低く抑えるには、パブリック IP アドレスのないプールをプロビジョニングできます。
前提条件
[認証] : 仮想ネットワーク内でパブリック IP アドレスのないプールを使用するには、Batch クライアント API でMicrosoft Entra認証を使用する必要があります。 Microsoft Entra IDのAzure Batchサポートについては、「Microsoft Entra IDを使用してAzure Batch サービスを認証する」を参照してください。 仮想ネットワーク内にプールを作成していない場合は、Microsoft Entra認証またはキーベースの認証を使用できます。
Azure VNet。 仮想ネットワーク内にプールを作成する場合は、次の要件と構成に従ってください。 1 つまたは複数のサブネットを持つ VNet を前もって用意するために、Azure Portal、Azure PowerShell、Azure CLI、その他の方法を利用できます。
VNET が存在するサブスクリプションとリージョンは、プールの作成に使用する Batch アカウントと同じである必要があります。
プールに指定されたサブネットには、プールの対象となる VM 数 (つまり、プールの
targetDedicatedNodes
およびtargetLowPriorityNodes
プロパティの合計) に対応できる十分な未割り当て IP アドレスが必要です。 サブネットの未割り当て IP アドレスが十分でない場合、プールによってコンピューティング ノードが部分的に割り当てられ、サイズ変更エラーが発生します。プライベート リンク サービスとエンドポイントのネットワーク ポリシーを無効にする必要があります。 この操作は、Azure CLI を使って行うことができます。
az network vnet subnet update --vnet-name <vnetname> -n <subnetname> --resource-group <resourcegroup> --disable-private-endpoint-network-policies --disable-private-link-service-network-policies
重要
100 個の専用ノードまたはスポット ノードごとに、プライベート リンク サービスが 1 つおよびロード バランサーが 1 つ、Batch によって割り当てられます。 これらのリソースは、サブスクリプションのリソース クォータによって制限されます。 大規模なプールでは、これらの 1 つまたは複数のリソースについて、クォータの引き上げの要求が必要になる場合があります。 また、Batch によって作成されたリソースにはリソース ロックを適用しないでください。そうしないと、プールの削除やゼロへのサイズ変更など、ユーザーが開始した操作の結果として、リソースのクリーンアップが妨げられるからです。
現在の制限
- パブリック IP アドレスのないプールでは、Cloud Services 構成ではなく、仮想マシンの構成を使用する必要があります。
- Batch コンピューティング ノードに対するカスタム エンドポイント構成は、パブリック IP アドレスのないプールでは機能しません。
- パブリック IP アドレスがないため、この種類のプールでは、独自に指定したパブリック IP アドレスを使用することはできません。
- VM の Basic サイズは、パブリック IP アドレスのないプールでは機能しません。
Azure portal でパブリック IP アドレスのないプールを作成する
- Azure Portal の Batch アカウントに移動します。
- 左側の [設定] ウィンドウで、 [プール] を選択します。
- [プール] ウィンドウで、 [追加] を選択します。
- [プールの追加] ウィンドウで、 [イメージの種類] ドロップダウンから、使用する予定のオプションを選択します。
- ご利用のイメージの適切な [Publisher](パブリッシャー)、[Offer](プラン)、[SKU] を選択します。
- [ノード サイズ]、[ターゲットの専用ノード数]、[ターゲットのスポットまたは低優先度ノード] など、残りの必須の設定を指定し、オプションの設定も必要に応じて指定します。
- 必要に応じて、使用する仮想ネットワークとサブネットを選択します。 この仮想ネットワークは、作成するプールと同じリソース グループに存在する必要があります。
- [IP アドレスのプロビジョニングの種類] で、 [NoPublicIPAddresses] を選択します。
Batch REST API を使用して、パブリック IP アドレスなしのプールを作成する
次の例では、Batch Service REST API を使用して、パブリック IP アドレスを使用するプールを作成する方法を示します。
REST API URI
POST {batchURL}/pools?api-version=2020-03-01.11.0
client-request-id: 00000000-0000-0000-0000-000000000000
要求本文
"pool": {
"id": "pool2",
"vmSize": "standard_a1",
"virtualMachineConfiguration": {
"imageReference": {
"publisher": "Canonical",
"offer": "UbuntuServer",
"sku": "20.04-lts"
},
"nodeAgentSKUId": "batch.node.ubuntu 20.04"
}
"networkConfiguration": {
"subnetId": "/subscriptions/<your_subscription_id>/resourceGroups/<your_resource_group>/providers/Microsoft.Network/virtualNetworks/<your_vnet_name>/subnets/<your_subnet_name>",
"publicIPAddressConfiguration": {
"provision": "NoPublicIPAddresses"
}
},
"resizeTimeout": "PT15M",
"targetDedicatedNodes": 5,
"targetLowPriorityNodes": 0,
"taskSlotsPerNode": 3,
"taskSchedulingPolicy": {
"nodeFillType": "spread"
},
"enableAutoScale": false,
"enableInterNodeCommunication": true,
"metadata": [
{
"name": "myproperty",
"value": "myvalue"
}
]
}
重要
このドキュメントでは、サポート終了 (EOL) が近い、また既にサポートが終了した Linux のリリース バージョンを参照しています。 より新しいバージョンへの更新をご検討ください。
インターネットへの送信アクセス
パブリック IP アドレスのないプールでは、仮想ネットワーク NAT を使用するなどして、ネットワーク設定を適切に構成しない限り、ご利用の仮想マシンからパブリック インターネットへのアクセスは不可能です。 NAT では、仮想ネットワーク内の仮想マシンからインターネットへのアウトバウンド アクセスのみが許可されます。 Batch で作成されたコンピューティング ノードにはパブリックにアクセスすることはできません。パブリック IP アドレスが関連付けられていないためです。
送信接続を実現するもう 1 つの方法は、ユーザー定義ルート (UDR) を使用することです。 この方法により、パブリック インターネットにアクセスできるプロキシ コンピューターにトラフィックをルーティングできます。
次のステップ
- 仮想ネットワーク内でのプールの作成について詳細を説明します。
- Batch アカウントでプライベート エンドポイントを使用する方法について説明します。