次の方法で共有


Azure Arc on Azure Stack HCI 22H2 で有効になっている AKS のシステム要件

適用対象: Azure Stack HCI バージョン 22H2;Windows Server 2022、Windows Server 2019

この記事では、Azure Arc で有効になっている Azure Kubernetes Service (AKS) を設定するための要件について説明します。Arc で有効になっている AKS の概要については、 AKS の概要を参照してください。

ハードウェア要件

Microsoft のパートナーから Azure Stack HCI ハードウェア/ソフトウェアの検証済みソリューションを購入することをお勧めします。 これらのソリューションは、リファレンス アーキテクチャを実行し、互換性と信頼性を確認するように設計、組み立て、検証されているため、迅速に稼働を開始することができます。 お使いのシステム、コンポーネント、デバイス、ドライバーが、Windows Server 認定済みであることを Windows Server カタログで確認する必要があります。 検証済みソリューションについては、 Azure Stack HCI ソリューション Web サイトを参照してください。

重要

運用環境の展開用のホスト システムは、物理ハードウェアである必要があります。 入れ子になった仮想化は、Azure Stack HCI または Windows Server を仮想マシンにデプロイし、その仮想マシンに AKS をインストールすることを特徴としますが、サポートされていません。

サポートされているハードウェア最大仕様

次の仕様を超える AKS on Azure Stack HCI and Windows Server のデプロイはサポートされていません。

リソース 最大値
クラスターあたりの物理サーバー数 8 (Azure Stack HCI バージョン 22H2 および Windows Server)
VM の合計数 200

コンピューティングの要件

最小メモリ要件

次の方法で AKS クラスターを設定して、RAM が制限された単一ノードの Windows Server で AKS を実行できます。

クラスターの種類 コントロール プレーンの VM サイズ ワーカー ノード 更新操作 Load Balancer
AKS ホスト Standard_A4_v2 VM サイズ = 8 GB N/A - AKS ホストにワーカー ノードがありません。 8 GB N/A - AKS ホストは、負荷分散に kubevip を使用します。
ワークロード クラスター Standard_A4_v2 VM サイズ = 8 GB Standard_K8S3_v1 (1 ワーカー ノードの場合) = 6 GB この予約済み 8 GB をワークロード クラスターのアップグレードに再利用できます。 kubevip が負荷分散に使用されている場合は N/A (既定の HAProxy ロード バランサーではなく)。

最小要件の合計: 30 GB RAM

この最小要件は、コンテナー化されたアプリケーションを実行するためのワーカー ノードが 1 つの AKS デプロイに対するものです。 ワーカー ノードまたは HAProxy ロード バランサーを追加することを選択した場合は、それに応じて最終的な RAM 要件が変更されます。

環境 サーバーあたりの CPU コア数 RAM
Azure Stack HCI 32 256 GB
Windows Server フェールオーバー クラスター 32 256 GB
単一ノード Windows Server 16 128 GB

運用環境の場合、最終的なサイズ設定は、Azure Stack HCI または Windows Server クラスターにデプロイする予定のアプリケーションとワーカー ノードの数によって異なります。 単一ノードの Windows Server で AKS を実行する場合、Azure Stack HCI または Windows Server クラスターまたは Windows Server フェールオーバー クラスターでの AKS の実行に伴う高可用性などの機能は利用できません。

AKS on Azure Stack HCI と Windows Server のその他のコンピューティング要件は、Azure Stack HCI の要件に準拠しています。 Azure Stack HCI サーバーの要件の詳細については、「 Azure Stack HCI のシステム要件 を参照してください。

クラスター内の各サーバーに同じオペレーティング システムをインストールする必要があります。 Azure Stack HCI を使用している場合は、クラスター内の各サーバーで同じ OS とバージョンが同じである必要があります。 Windows Server Datacenter を使用している場合は、クラスター内の各サーバーで同じ OS とバージョンが同じである必要があります。 各 OS では、 en-us リージョンと言語の選択を使用する必要があります。 インストール後にこれらの設定を変更することはできません。

ストレージの要件

AKS on Azure Stack HCI と Windows Server では、次のストレージ実装がサポートされています。

Name ストレージの種類 必要な容量
Azure Stack HCI クラスター クラスター共有ボリューム 1 TB
Windows Server Datacenter フェールオーバー クラスター クラスター共有ボリューム 1 TB
単一ノードの Windows Server Datacenter 直接接続ストレージ 500 GB

Azure Stack HCI または Windows Server クラスターの場合、仮想マシンのワークロードを実行するためにサポートされるストレージ構成は 2 つあります。

  • ハイブリッド ストレージ では、フラッシュ ストレージとハード ディスク ドライブ (HDD) を使用してパフォーマンスと容量のバランスをとります。
  • オールフラッシュ ストレージは、ソリッドステート ドライブ (SSD) または NVMe を使用してパフォーマンスを最大化します。

HDD ベースのストレージしかないシステムは Azure Stack HCI によってサポートされていないため、AKS on Azure Stack HCI and Windows Server の実行にはお勧めできません。 推奨されるドライブ構成の詳細については、 Azure Stack HCI のドキュメントを参照してください。 Azure Stack HCI カタログで検証されるすべてのシステムはこれら 2 つのサポートされているストレージ構成のいずれかに分類されます。

Kubernetes は etcd を使用してクラスターの状態を格納します。 etcd には、実行中のポッドの構成、仕様、状態が格納されます。 さらに、Kubernetes はサービス検出にストアを使用します。 Kubernetes の操作とそれがサポートするワークロードに対する調整コンポーネントとして、etcd に対する待機時間とスループットが重要です。 SSD で AKS を実行する必要があります。 詳細については、etcd.io の パフォーマンス を参照してください。

Windows Server Datacenter ベースのクラスターの場合は、ローカル ストレージまたは SAN ベースのストレージのいずれかを使用してデプロイできます。 ローカル ストレージの場合は、組み込みの記憶域スペース ダイレクトまたは同等の認定仮想 SAN ソリューションを使用して、ワークロードで使用するクラスター共有ボリュームを提供するハイパーコンバージド インフラストラクチャを作成することをお勧めします。 記憶域スペース ダイレクトでは、ストレージは、パフォーマンスと容量のバランスをとるハイブリッド (フラッシュ + HDD) か、またはパフォーマンスを最大化するオールフラッシュ (SSD、NVMe) のどちらかである必要があります。 SAN ベースのストレージでデプロイすることを選択した場合は、その SAN ストレージが、複数の仮想マシン ワークロードを実行するための十分なパフォーマンスを提供できることを確認してください。 古い HDD ベースの SAN ストレージでは、複数の仮想マシン ワークロードを実行するために必要なレベルのパフォーマンスが提供されず、パフォーマンスの問題とタイムアウトが発生する可能性があります。

ローカル ストレージを使用する単一ノードの Windows Server デプロイの場合は、1 つの物理ホスト上で複数の仮想マシンをホストするために必要なパフォーマンスを提供するために、オールフラッシュ ストレージ (SSD、NVMe) を使用することを強くお勧めします。 フラッシュ ストレージがないと、HDD のパフォーマンスレベルが低いほど、デプロイの問題とタイムアウトが発生する可能性があります。

ネットワークの要件

Azure Stack HCI 22H2 クラスターと Windows Server Datacenter クラスターには、次の要件が適用されます。 Azure Stack HCI 23H2 のネットワーク要件については、 Networking の要件を参照してください。

  • Azure Stack HCI 22H2 と Windows Server の場合は、Windows Admin Center を使用している場合は、既存の外部仮想スイッチが構成されていることを確認します。 HCI または Windows Server クラスターの場合、このスイッチとその名前はすべてのクラスター ノードで同じである必要があります。 HCI 23H2 については、 network システム要件を参照してください。
  • すべてのネットワーク アダプターで IPv6 が無効になっていることを確認します。
  • デプロイを成功させるには、Azure Stack HCI または Windows Server クラスター ノードと Kubernetes クラスター VM に外部インターネット接続が必要です。
  • クラスターに対して定義したすべてのサブネットが、相互およびインターネット間でルーティング可能であることを確認します。
  • Azure Stack HCI ホストとテナント VM の間にネットワーク接続が存在することを確認します。
  • すべてのノードが相互に通信できるようにするには、DNS 名前解決が必要です。
  • (推奨)DNS 環境で動的 DNS 更新を有効にして、AKS が検出のためにクラウド エージェントの汎用クラスター名を DNS システムに登録できるようにします。

IP アドレスの割り当て

Arc によって有効になっている AKS では、前述のように、仮想ネットワークを使用して、それらを必要とする Kubernetes リソースに IP アドレスを割り当てます。 目的の AKS ネットワーク アーキテクチャに応じて、2 つのネットワーク モデルから選択できます。

Note

AKS デプロイ用にここで定義されている仮想ネットワーク アーキテクチャは、データ センター内の基になる物理ネットワーク アーキテクチャとは異なります。

  • 静的 IP ネットワーク: 仮想ネットワークは、Kubernetes クラスター API サーバー、Kubernetes ノード、基になる VM、ロード バランサー、クラスター上で実行するすべての Kubernetes サービスに静的 IP アドレスを割り当てます。
  • DHCP ネットワーク: 仮想ネットワークは、DHCP サーバーを使用して Kubernetes ノード、基になる VM、ロード バランサーに動的 IP アドレスを割り当てます。 Kubernetes クラスター API サーバーと、お使いのクラスター上で実行するすべての Kubernetes サービスには、まだ静的 IP アドレスが割り当てられています。

最小 IP アドレス予約

少なくとも、次の数の IP アドレスをご自身のデプロイに対して予約する必要があります。

クラスターの種類 コントロール プレーン ノード ワーカー ノード 更新操作 Load Balancer
AKS ホスト 1 IP NA 2 IP NA
ワークロード クラスター ノードあたり 1 IP ノードあたり 1 IP 5 IP 1 IP

さらに、次の数の IP アドレスをご自身の VIP プールに対して予約する必要があります。

リソースの種類 IP アドレスの数
クラスター API サーバー クラスターあたり 1
Kubernetes サービス サービスあたり 1

ご覧のように、必要な IP アドレスの数は、AKS アーキテクチャと、Kubernetes クラスターで実行するサービスの数によって異なります。 お使いのデプロイに対して合計 256 IP アドレス (/24 サブネット) を予約することをお勧めします。

ネットワーク要件の詳細については、「AKS での ノード ネットワークの概念 および AKS の コンテナー ネットワークの概念を参照してください。

ネットワーク ポートと URL の要件

Arc の要件で有効になっている AKS

Azure Stack HCI で Kubernetes クラスターを作成すると、クラスター内の各サーバーで次のファイアウォール ポートが自動的に開かれます。

Azure Stack HCI 物理クラスター ノードと Azure Kubernetes クラスター VM が 2 つの分離された VLAN 上にある場合は、それらの間のファイアウォールでこれらのポートを開く必要があります。

ポート ソース 説明 ファイアウォールに関する注意事項
22 AKS VM Get-AksHciLogsを使用するときにログを収集するために必要です。 個別の VLAN を使用する場合、物理 Hyper-V ホストは、このポート上の AKS VM にアクセスする必要があります。
6443 AKS VM Kubernetes API と通信するために必要です。 個別の VLAN を使用する場合、物理 Hyper-V ホストは、このポート上の AKS VM にアクセスする必要があります。
45000 物理 Hyper-V ホスト wssdAgent gRPC サーバー。 クロス VLAN ルールは必要ありません。
45001 物理 Hyper-V ホスト wssdAgent gRPC 認証。 クロス VLAN ルールは必要ありません。
46000 AKS VM wssdCloudAgent から lbagent へ。 個別の VLAN を使用する場合、物理 Hyper-V ホストは、このポート上の AKS VM にアクセスする必要があります。
55000 クラスター リソース (-CloudServiceCIDR) Cloud Agent gRPC サーバー。 個別の VLAN を使用する場合、AKS VM はこのポートのクラスター リソースの IP にアクセスする必要があります。
65000 クラスター リソース (-CloudServiceCIDR) Cloud Agent gRPC 認証。 個別の VLAN を使用する場合、AKS VM はこのポートのクラスター リソースの IP にアクセスする必要があります。

ネットワークでプロキシ サーバーを使用してインターネットに接続する必要がある場合は、「 AKS でのプロキシ サーバー設定の使用を参照してください。

次の URL を許可リストに追加する必要があります。

URL ポート メモ
msk8s.api.cdp.microsoft.com 443 SFS から Azure Local 製品カタログ、製品ビット、および OS イメージ上の AKS をダウンロードするときに使用されます。 Set-AksHciConfigを実行しているときに、SFS からダウンロードするたびに発生します。
msk8s.b.tlu.dl.delivery.mp.microsoft.com
msk8s.f.tlu.dl.delivery.mp.microsoft.com
80 SFS から Azure Local 製品カタログ、製品ビット、および OS イメージ上の AKS をダウンロードするときに使用されます。 Set-AksHciConfigを実行しているときに、SFS からダウンロードするたびに発生します。
login.microsoftonline.com
login.windows.net
management.azure.com
msft.sts.microsoft.com
graph.windows.net
443 Set-AksHciRegistration の実行中に Azure にログインするために使用されます。
ecpacr.azurecr.io
mcr.microsoft.com
*.mcr.microsoft.com
*.data.mcr.microsoft.com
*.blob.core.windows.net
US エンドポイント: wus2replica*.blob.core.windows.net
443 Install-AksHci の実行中にコンテナー イメージをプルするために必要です。
<region>.dp.kubernetesconfiguration.azure.com 443 AKS ハイブリッド クラスターを Azure Arc にオンボードするために必要です。
gbl.his.arc.azure.com 443 システム割り当て管理 ID 証明書をプルするためリージョン エンドポイントを取得するために必要です。
*.his.arc.azure.com 443 システム割り当てマネージド ID 証明書をプルするために必須。
k8connecthelm.azureedge.net 443 Arc 対応 Kubernetes では、Helm 3 を使用して、Azure ローカル管理クラスター上の AKS に Azure Arc エージェントをデプロイします。 このエンドポイントは、エージェントの Helm チャートのデプロイを容易にするために Helm クライアントをダウンロードするために必要です。
*.arc.azure.net 443 Azure portal で AKS ハイブリッド クラスターを管理するために必要です。
dl.k8s.io 443 Azure Arc の Kubernetes バイナリをダウンロードして更新するために必要です。
akshci.azurefd.net 443 Install-AksHciの実行時に AKS on Azure Local の課金に必要です。
v20.events.data.microsoft.com
gcs.prod.monitoring.core.windows.net
443 Microsoft の必要な診断データを Azure Local または Windows Server ホストから送信するために定期的に使用されます。

Note

Arc によって有効になっている AKS は、顧客データを格納して処理します。 既定では、顧客データは、顧客がサービス インスタンスをデプロイするリージョン内にとどまります。 このデータは、Microsoft が運営する地域のデータセンターに格納されます。 データ所在地の要件があるリージョンの場合、顧客データは常に同じリージョン内に保持されます。

Azure Arc 機能の追加の URL 要件

前の URL リストでは、課金のために AKS サービスを Azure に接続するために必要な最小限の URL が示されています。 クラスター接続、カスタムの場所、Azure RBAC、Azure Monitor などの他の Azure サービスを AKS ワークロード クラスターで使用する場合は、追加の URL を許可する必要があります。 Arc URL の完全な一覧については、「 Azure Arc 対応 Kubernetes ネットワーク要件を参照してください。

また、 Azure Stack HCI URLを確認する必要があります。 Arc for Server エージェントは、Azure Stack HCI 21H2 以降の Azure Stack HCI ノードに既定でインストールされるようになったため、サーバー エージェント URL の Arc も確認する必要があります

AKS のストレッチ クラスター

ストレッチ クラスターの概要で説明されているように、Windows ストレッチ クラスターを使用した Azure Stack HCI および Windows Server への AKS のデプロイはサポートされていません。 データセンターの運用継続性には、バックアップとディザスター リカバリーのアプローチを使用することをお勧めします。 詳細については、「Azure Stack HCI と Windows Server の Velero と Azure Blob Storage を使用したワークロード クラスターのバックアップまたは復元 、アプリケーションの継続性を確保するために、GitOps と Flux v2 を使用した AksHci での構成のデプロイ」を参照してください。

Windows Admin Center の要件

Windows Admin Center は、Azure Arc で有効になっている AKS を作成および管理するためのユーザー インターフェイスです。AKS on Azure Stack HCI および Windows Server で Windows Admin Center を使用するには、次の一覧のすべての条件を満たす必要があります。

Windows Admin Center ゲートウェイを実行しているコンピューターの要件は次のとおりです。

  • Windows 10 または Windows Server。
  • Azure に登録
  • Azure Stack HCI または Windows Server Datacenter クラスターと同じドメイン内。
  • 所有者権限を持つ Azure サブスクリプション。 アクセス レベルを確認するには、サブスクリプションに移動し、Azure portal の左側にある Access コントロール (IAM) を選択し、 アクセスの表示を選択します。

Azure の要件

Azure アカウントに接続する必要があります。

Azure アカウントとサブスクリプション

まだ Azure アカウントを持っていない場合は作成します。 以下のいずれかの種類の既存のサブスクリプションを使用できます。

  • 学生または Visual Studio サブスクライバー向けの Azure クレジットが付いた無料アカウント。
  • クレジット カードを使用した従量課金制サブスクリプション。
  • マイクロソフトエンタープライズ契約 (EA) を通じて取得されたサブスクリプション。
  • クラウド ソリューション プロバイダー (CSP) プログラムを通じて取得されたサブスクリプション。

Microsoft Entra のアクセス許可、ロール、アクセス レベル

アプリケーションを Microsoft Entra テナントに登録するための十分なアクセス許可を持っている必要があります。

十分なアクセス許可があるかどうかを確認するには、以下の情報に従ってください。

  • Azure portal に移動し、Microsoft Entra IDRoles と administrators を選択してロールを確認します。
  • 自分のロールが [ユーザー] である場合は、管理者以外のユーザーがアプリケーションを登録できることを確認する必要があります。
  • アプリケーションを登録できるかどうかを確認するには、Microsoft Entra サービスの ユーザー設定 に移動して、アプリケーションを登録するアクセス許可があるかどうかを確認します。

アプリの登録設定が No に設定されている場合、管理者ロールを持つユーザーのみがこれらの種類のアプリケーションを登録できます。 使用可能な管理者ロールと、各ロールに付与される Microsoft Entra ID の特定のアクセス許可については、「 Microsoft Entra 組み込みロールを参照してください。 アカウントに [ユーザー] ロールが割り当てられているが、アプリの登録の設定が管理者ユーザーに制限されている場合は、アプリの登録のすべての側面について作成と管理が可能な管理者ロールの 1 つを、登録を行うユーザーに割り当てるか、ユーザーがアプリを登録できるようにするよう、管理者に依頼してください。

アプリケーションを登録するための十分なアクセス許可がなく、管理者がこれらのアクセス許可を付与できない場合、AKS をデプロイする最も簡単な方法は、適切なアクセス許可を持つサービス プリンシパルを作成するように Azure 管理者に依頼することです。 管理者は、サービス プリンシパルの作成方法を次のセクションで確認できます。

Azure サブスクリプションのロールとアクセス レベル

自分のアクセス レベルを確認するには、お使いのサブスクリプションに移動し、Azure portal の左側にある [アクセス制御 (IAM)] を選択して、[マイ アクセスの表示] を選択します。

  • Windows Admin Center を使用して AKS ホストまたは AKS ワークロード クラスターをデプロイする場合は、 Ownerである Azure サブスクリプションが必要です。
  • PowerShell を使用して AKS ホストまたは AKS ワークロード クラスターをデプロイする場合、クラスターを登録するユーザーには、少なくとも次のいずれかが必要です。
    • 組み込みの所有者ロールを持つユーザー アカウント。
    • 次のいずれかのアクセス レベルを持つサービス プリンシパル。

Azure サブスクリプションが EA または CSP を使用している場合、AKS をデプロイする最も簡単な方法は、適切なアクセス許可を持つサービス プリンシパルを作成するように Azure 管理者に依頼することです。 管理者は、サービス プリンシパルの作成方法に関する次のセクションを確認できます。

省略可能: 新しいサービス プリンシパルを作成する

組み込みの Owner ロールを持つ新しいサービス プリンシパルを作成するには、次の手順を実行します。 適切なロールの割り当てを持つサービス プリンシパルを作成できるのは、サブスクリプションの所有者だけです。 アクセス レベルを確認するには、サブスクリプションに移動し、Azure portal の左側 [アクセス制御 (IAM)] を選択し、 アクセスを表示します

PowerShell 管理者ウィンドウで、次の PowerShell 変数を設定します。 サブスクリプションとテナントが、課金のために AKS ホストを登録するために使用する内容であることを確認します。

$subscriptionID = "<Your Azure subscrption ID>"
$tenantID = "<Your Azure tenant ID>"

AKS PowerShell モジュールをインストールしてインポートします。

Install-Module -Name AksHci

Connect-AzAccount PowerShell コマンドを使用して Azure にサインインします。

Connect-AzAccount -tenant $tenantID

Set-AzContext コマンドを実行して、課金対象の AKS ホストを既定のサブスクリプションとして登録するために使用するサブスクリプションを設定します。

Set-AzContext -Subscription $subscriptionID

Get-AzContext PowerShell コマンドを実行して、サインイン コンテキストが正しいことを確認します。 サブスクリプション、テナント、アカウントが、課金のために AKS ホストを登録するために使用する内容であることを確認します。

Get-AzContext
Name                                     Account                      SubscriptionName             Environment                  TenantId
----                                     -------                      ----------------             -----------                  --------
myAzureSubscription (92391anf-...        user@contoso.com             myAzureSubscription          AzureCloud                   xxxxxx-xxxx-xxxx-xxxxxx

New-AzADServicePrincipal PowerShell コマンドを実行して、サービス プリンシパルを作成します。 このコマンドは、 Owner ロールを持つサービス プリンシパルを作成し、サブスクリプション レベルでスコープを設定します。 サービス プリンシパルの作成の詳細については、「 Azure PowerShell を使用して Azure サービス プリンシパルを作成する」を参照してください。

$sp = New-AzADServicePrincipal -role "Owner" -scope /subscriptions/$subscriptionID

次のコマンドを実行して、サービス プリンシパルのパスワードを取得します。 このコマンドは、Az.Accounts 2.6.0 以降でのみ機能します。 AksHci PowerShell モジュールをインストールすると、Az.Accounts 2.6.0 モジュールが自動的にダウンロードされます。

$secret = $sp.PasswordCredentials[0].SecretText
Write-Host "Application ID: $($sp.ApplicationId)"
Write-Host "App Secret: $secret"

前の出力から、 アプリケーション IDsecret AKS のデプロイ時に使用できるようになりました。 これらの項目をメモし、安全に保存する必要があります。 これで、Azure portal の SubscriptionsAccess Control、および Role Assignments の下に、新しいサービス プリンシパルが表示されます。

Azure リソース グループ

登録する前に、オーストラリア東部、米国東部、東南アジア、または西ヨーロッパの Azure リージョンに Azure リソース グループを用意しておく必要があります。

Azure リージョン

警告

AKS Arc では現在、次の指定された Azure リージョン内でのみクラスターの作成がサポートされています。 この一覧の外部のリージョンにデプロイしようとすると、デプロイエラーが発生します。

AKS Arc サービスは、登録、課金、管理に使用されます。 現在、次のリージョンでサポートされています。

  • 米国東部
  • 米国中南部
  • 西ヨーロッパ

Active Directory の要件

2 つ以上の物理ノードを持つ AKS フェールオーバー クラスターが Active Directory 環境で最適に機能するには、次の要件が満たされていることを確認します。

Note

Active Directory は、単一ノードの Azure Stack HCI または Windows Server のデプロイには必要ありません。

  • 時刻の同期を設定して、すべてのクラスター ノードとドメイン コントローラーにわたって相違が 2 分を超えないようにします。 時刻同期の設定については、「 Windows タイム サービス」を参照してください。
  • 更新プログラムの追加、AKS または Windows Server Datacenter クラスターの管理に使用するユーザー アカウントが、Active Directory で正しいアクセス許可を持っていることを確認します。 組織単位 (OU) を使用してサーバーとサービスのグループ ポリシーを管理する場合、ユーザー アカウントには OU 内のすべてのオブジェクトに対するリスト、読み取り、変更、削除のアクセス許可が必要です。
  • AKS または Windows Server Datacenter クラスターによって、サーバーとサービスに個別の組織単位 (OU) を使用します。 別個の OU を使用することで、アクセスとアクセス許可をよりきめ細かに制御できるようになります。
  • Active Directory のコンテナーに対して GPO テンプレートを使用している場合は、ポリシーから AKS on Azure Stack HCI and Windows Server のデプロイが除外されていることを確認します。

次のステップ

上の前提条件すべてが満たされたら、以下を使用して Azure Stack HCI 上に AKS ホストを設定できます。