すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:ACKクラスターにWindowsノードプールを作成する

最終更新日:Dec 06, 2024

Container Service for Kubernetes (ACK) を使用すると、ノードプールを作成し、ノードプールごとにクラスター内のノードを管理できます。 たとえば、ノードプール内のノードのラベルとテイントを一元管理できます。 このトピックでは、ACKクラスター内のWindowsノードで構成されるWindowsノードプールを作成する方法について説明します。

制限事項

次の表に、Windowsノードプールの作成に関する制限事項を示します。

制限事項

説明

クラスター

  • ACK管理クラスターが作成されます。 詳細については、「ACK管理クラスターの作成」をご参照ください。

    説明
    • Windowsノードプールは、ACK管理クラスターでのみ作成できます。

    • ACKクラスターの作成時にWindowsノードプールを作成することはできません。 最初にACKクラスターを作成する必要があります。

  • クラスターはKubernetes 1.20.4以降を実行します。

  • クラスターはFlannelネットワークを使用します。

コンテナランタイム

Windowsノードプールはcontainerdランタイムのみをサポートします。

ノードプールタイプ

Windowsノードは、管理対象ノードプール以外のノードプールにのみ追加できます。

インスタンスタイプ

  • 一部のインスタンスタイプはWindowsノードプールをサポートしていません。 Windowsノードプールを作成する場合、Windowsノードプールをサポートするインスタンスタイプのみを選択できます。 たとえば、Windowsノードプールを作成するときに、ecs.g6.xlargeインスタンスタイプを選択できます。

  • 非GPU高速化インスタンスタイプを選択します。

  • 4コアと8 GBを超えるメモリを提供できるインスタンスタイプを選択します。

    • Windowsコンテナのメモリ使用量が制限を超えると、メモリ不足 (OOM) キラーは実行されません。 5月2021日以降、Kubernetes 1.16以降を実行するACKクラスターに新しく追加されたWindowsノードが起動されると、ノードは1.5のvCPU、2.5 GBのRAM、および3 GBのディスク容量を予約します。 リソースは、Windowsオペレーティングシステム、kubelet、およびコンテナーランタイムが通常どおり実行されるように予約されています。 詳細については、「リソース予約ポリシー」をご参照ください。

      説明

      Windowsワークロードが圧倒され、Windowsノードがクラッシュした場合に備えて、ACKはリソースを予約します。 ただし、Windowsコンテナでメモリリークが発生すると、そのコンテナをホストしているWindowsノードが停止することがあります。

    • Windowsコンテナのフットプリントは小さくなります。 詳細については、「」をご参照ください。Windowsコンテナのメモリ要件.

次の表に、Windowsノードプールを作成するときに注意が必要な制限事項を示します。

制限事項

説明

オペレーティングシステム

Windowsノードプールは、Windows Server 2019、Windows Server 2022、およびWindows Serverコア2022をサポートします。

説明

Windows Server 2019、Windows Server 2022、およびWindows Serverコア2022を選択できます。 Windows Server Core 2004を使用する場合は、ECSパブリックイメージのリリースノートに基づいて最新のイメージIDを選択し、ノードプールを作成する必要があります。 詳細については、「2023のリリースノート」をご参照ください。

ノード数

デフォルトでは、ACKクラスターに最大100ノードをデプロイできます。 ノードを追加するには、Quota Centerコンソールでアプリケーションを送信します。

ECS インスタンス

既存のElastic Compute Service (ECS) インスタンスをノードプールに追加する場合、ECSインスタンスがelastic IPアドレス (EIP) に関連付けられているか、ECSインスタンスがデプロイされている仮想プライベートクラウド (VPC) にNATゲートウェイが設定されていることを確認します。 また、ECSインスタンスがインターネットにアクセスできることを確認してください。 それ以外の場合、ECSインスタンスをノードプールに追加することはできません。 詳細については、「既存のECSインスタンスをACKクラスターに追加する」をご参照ください。

手順

default-nodepoolという名前のデフォルトノードプールは、Windowsノードプールとして使用できません。 クラスターの作成後、追加のWindowsノードプールを作成します。 詳細については、「制限事項」をご参照ください。

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のナビゲーションウィンドウで、[ノード] > [ノードプール] を選択します。

  3. 右上隅にノードプールページで、ノードプールの作成をクリックし、パラメーターを設定し、注文の確認をクリックします。

    パラメーターの詳細については、「ノードプールの作成」をご参照ください。 次の表に、いくつかのパラメーターを示します。

    パラメーター

    説明

    管理対象ノードプール

    このオプションは選択しないでください。

    Container Runtime

    containerdを選択します。

    [インスタンスタイプ]

    • 一部のインスタンスタイプはWindowsノードプールをサポートしていません。 Windowsノードプールを作成する場合、Windowsノードプールをサポートするインスタンスタイプのみを選択できます。 たとえば、Windowsノードプールを作成するときに、ecs.g6.xlargeインスタンスタイプを選択できます。

    • 4コアと8 GBを超えるメモリを提供できるインスタンスタイプを選択します。

    • 非GPU高速化インスタンスタイプを選択します。

      インスタンスタイプの詳細については、「インスタンスファミリー」をご参照ください。

    期待されるノード

    ノードプールが維持するノードの数。 ノードプール内のノードの予想数を指定すると、ノードプール内のノードは指定された数に自動的にスケーリングされます。

    オペレーティングシステム

    Windows オペレーティングシステムを選択します。

    ECSラベル

    ECSインスタンスにラベルを追加します。

    ノードラベル

    ノードプール内のノードにラベルを追加します。

    [ノードプール] ページで、[ステータス] 列に [アクティブ] が表示されている場合、Windowsノードプールが作成されます。

関連ドキュメント

Windowsノードを使用する必要があり、ビジネストラフィックが予期せず急増した場合は、Windows仮想ノードとスケジュールポッドを使用してWindows仮想ノードで実行することをお勧めします。 詳細については、「 (招待プレビュー中) ポッドをWindows仮想ノードで実行するようにスケジュールする」をご参照ください。