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

Container Service for Kubernetes:ノードプールの作成と管理

最終更新日:Feb 28, 2025

Container Service for Kubernetes(ACK)は、ノードをグループで管理するためのノードプールを提供します。ノードプールとは、インスタンスの仕様、オペレーティングシステム、ラベル、テイントなど、同じ構成を持つノードのグループです。ACK クラスタには、異なるタイプと構成のノードプールを 1 つ以上作成できます。ノードプールの構成は、インスタンスの仕様、ゾーン、オペレーティングシステム、ラベル、テイントなどのノード属性で構成されます。ノードプールを作成した後、ノードプール内のノードを一元的に管理できます。

ノードプールを作成する前に、「ノードプール」を読んで、ノードプールの基本情報、ユースケース、関連機能、および課金ルールをよく理解しておくことをお勧めします。

コンソール操作

ACK コンソールの管理対象クラスタの [ノードプール] ページで、ノードプールを作成、編集、または削除できます。また、ノードプールの詳細を表示することもできます。

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

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

ノードプールの作成

ACK コンソールでノードプールを作成する際には、基本構成、ネットワーク構成、ストレージ構成を設定できます。一部のノードプールパラメータ、特にノードプールの可用性とネットワークに関連するパラメータは、ノードプールが作成された後は変更できません。次の表に、これらのパラメータを示します。クラスタにノードプールを作成しても、クラスタの他のノードプールにデプロイされているノードとアプリケーションには影響しません。

説明

ACK API を呼び出すか、Terraform を使用してノードプールを作成することもできます。詳細については、「CreateClusterNodePool」または「Terraform を使用して自動スケーリングが有効になっているノードプールを作成する」をご参照ください。

  1. [ノードプール] ページで、[ノードプールの作成] をクリックします。[ノードプールの作成] ダイアログボックスで、ノードプールパラメータを設定します。

    ノードプールを作成した後、[ノードプールを編集] ページでノードプールパラメーターを変更できます。次の表の 変更可能 列は、ノードプール作成後に対応するパラメーターを変更できるかどうかを示します。错 は、パラメーターを変更できないことを示します。对 は、パラメーターを変更できることを示します。

    基本構成

    パラメータ

    説明

    変更可能

    ノードプール名

    ノードプール名を指定します。

    对

    リージョン

    デフォルトでは、クラスタが存在するリージョンが選択されています。リージョンは変更できません。

    错

    Confidential Computing

    説明
    • Confidential Computing を使用するには、チケットを送信して、ホワイトリストに追加申請してください。

    • このパラメータは、コンテナランタイム パラメータに containerd を選択した場合にのみ使用できます。

    Confidential Computing を有効にするかどうかを指定します。ACK は、ハードウェア暗号化技術に基づいたオールインワンのクラウドネイティブ Confidential Computing ソリューションを提供します。Confidential Computing は、データのセキュリティ、整合性、および機密性を確保します。信頼できるアプリケーションや機密性の高いアプリケーションの開発と配信を簡素化し、コストを削減します。詳細については、「TEE ベースの Confidential Computing」をご参照ください。

    错

    コンテナランタイム

    Kubernetes のバージョンに基づいて コンテナランタイム を指定します。コンテナランタイムの選択方法の詳細については、「Docker、containerd、および Sandboxed-Container の比較」をご参照ください。

    • containerd: すべての Kubernetes バージョンで containerd をお勧めします。

    • Sandboxed-Container: Kubernetes 1.31 以前をサポートしています。

    • Docker(非推奨): Kubernetes 1.22 以前をサポートしています。

    错

    マネージドノードプールの設定

    マネージドノードプール

    ACK が提供するマネージドノードプールは、自動修復と自動 CVE パッチをサポートしています。これにより、O&M のワークロードが大幅に削減され、ノードのセキュリティが向上します。[設定] をクリックして、詳細なメンテナンスポリシーを設定できます。

    对

    自動リカバリルール

    このパラメータは、マネージドノードプール機能で [有効] を選択した後に使用できます。

    このオプションを選択すると、ACK はノードプール内のノードのステータスを自動的に監視します。ノードで例外が発生すると、ACK はノードで自動修復タスクを自動的に実行します。[障害のあるノードを再起動する] を選択すると、ACK は障害のあるノードを自動的に再起動してノードの例外を解決します。この場合、ACK は障害のあるノードでノードのドレインとシステムディスクの交換を実行する場合があります。自動修復と自動修復イベントをトリガーする条件の詳細については、「ノードの自動修復を有効にする」をご参照ください。

    对

    自動更新ルール

    このパラメータは、マネージドノードプール機能で [有効] を選択した後に使用できます。

    [kubelet と containerd を自動的に更新する] を選択すると、新しいバージョンが利用可能になったときに、システムは kubelet を自動的に更新します。詳細については、「ノードプールを更新する」をご参照ください。

    对

    OS の自動 CVE パッチ適用

    このパラメータは、マネージドノードプール機能で [有効] を選択した後に使用できます。

    リスクの高い、中程度の、および低い脆弱性に自動的にパッチを適用するように ACK を構成できます。詳細については、「ノードプールの OS CVE 脆弱性にパッチを適用する」をご参照ください。

    一部のパッチは、ECS インスタンスを再起動した後にのみ有効になります。[CVE 脆弱性にパッチを適用するために必要な場合はノードを再起動する] を有効にすると、ACK は必要に応じてノードを自動的に再起動します。このオプションを選択しない場合は、ノードを手動で再起動する必要があります。

    对

    メンテナンスウィンドウ

    このパラメータは、マネージドノードプール機能で [有効] を選択した後に使用できます。

    イメージの更新、ランタイムの更新、および Kubernetes バージョンの更新は、メンテナンスウィンドウ中に自動的に実行されます。

    [設定] をクリックします。[メンテナンスウィンドウ] ダイアログボックスで、[サイクル][開始時刻][期間] パラメータを設定し、[OK] をクリックします。

    对

    スケーリングモード

    手動スケーリングと 自動スケーリングがサポートされています。コンピューティングリソースは、ビジネス要件とポリシーに基づいて自動的に調整され、クラスタコストを削減します。

    • 手動: ACK は、[必要なノード数] パラメータの値に基づいて、ノードプール内のノード数を調整します。ノード数は常に [必要なノード数] パラメータの値と同じです。詳細については、「ノードプールを手動でスケーリングする」をご参照ください。

    • 自動: クラスタの容量計画がポッドスケジューリングの要件を満たせない場合、ACK は設定されたインスタンスの最小数と最大数に基づいてノードを自動的にスケールアウトします。デフォルトでは、Kubernetes 1.24 以降を実行するクラスタでは ノードインスタントスケーリング が有効になっています。デフォルトでは、Kubernetes 1.24 以降を実行するクラスタでは ノード自動スケーリング が有効になっています。詳細については、「ノードスケーリング」をご参照ください。

    对

    ネットワーク構成

    パラメータ

    説明

    変更可能

    ネットワーク設定

    VPC

    デフォルトでは、クラスタが存在する仮想プライベートクラウド(VPC)が選択されています。VPC は変更できません。

    错

    vSwitch

    ノードプールがスケールアウトされると、スケーリングポリシー パラメータに選択したポリシーに基づいて、選択した vSwitch のゾーンに新しいノードが作成されます。使用するゾーンの vSwitch を選択できます。

    使用可能な vSwitch がない場合は、[vswitch の作成] をクリックして作成します。詳細については、「vSwitch の作成と管理」をご参照ください。

    对

    インスタンスとイメージ

    パラメータ

    説明

    変更可能

    課金方法

    ノードプールで ECS インスタンスがスケーリングされるときに使用されるデフォルトの課金方法です。[従量課金][サブスクリプション]、または [プリエンプティブルインスタンス] を選択できます。

    • [サブスクリプション] 課金方法を選択した場合は、[期間] パラメータを設定し、[自動更新] を有効にするかどうかを選択する必要があります。

    • プリエンプティブルインスタンス: ACK は、保護期間のある プリエンプティブルインスタンス のみサポートしています。[現在のインスタンス仕様の上限価格] パラメータも設定する必要があります。

      選択したインスタンスタイプのリアルタイム市場価格がこのパラメータの値よりも低い場合、このインスタンスタイプの プリエンプティブルインスタンス が作成されます。保護期間(1 時間)が終了すると、システムは 5 分ごとにインスタンスタイプのスポット価格とリソースの可用性をチェックします。リアルタイム市場価格が入札価格を超えた場合、またはリソースの在庫が不足している場合、プリエンプティブルインスタンスは解放されます。詳細については、「プリエンプティブルインスタンスベースのノードプールのベストプラクティス」をご参照ください。

    ノードプール内のすべてのノードで同じ課金方法を使用するように、ACK では、ノードプールの課金方法を従量課金またはサブスクリプションからプリエンプティブルインスタンスに変更することはできません。たとえば、ノードプールの課金方法を従量課金またはサブスクリプションとプリエンプティブルインスタンスの間で切り替えることはできません。

    重要
    • ノードプールの課金方法を変更した場合、変更は新しく追加されたノードにのみ適用されます。ノードプール内の既存のノードは、引き続き元の課金方法を使用します。ノードプール内の既存のノードの課金方法を変更する方法の詳細については、「インスタンスの課金方法を従量課金からサブスクリプションに変更する」をご参照ください。

    • すべてのノードで同じ課金方法を使用するように、ACK では、ノードプールの課金方法を 従量課金 または サブスクリプション から プリエンプティブルインスタンス に変更したり、ノードプールの課金方法を プリエンプティブルインスタンス から 従量課金 または サブスクリプション に変更したりすることはできません。

    对

    インスタンス関連のパラメータ

    インスタンスタイプまたは属性に基づいて、ワーカーノードプールが使用する ECS インスタンスを選択します。vCPU、メモリ、インスタンスファミリ、アーキテクチャなどの属性で インスタンスファミリ をフィルタリングできます。ノードの構成方法の詳細については、「ACK クラスタの ECS 仕様を選択するための推奨事項」をご参照ください。

    ノードプールがスケールアウトされると、選択したインスタンスタイプの ECS インスタンスが作成されます。ノードプールのスケーリングポリシーは、スケールアウトアクティビティ中に新しいノードを作成するために使用されるインスタンスタイプを決定します。ノードプールのスケールアウト操作の成功率を向上させるには、複数のインスタンスタイプを選択します。

    インスタンスタイプが使用できない、またはインスタンスの在庫がないためにノードプールをスケールアウトできない場合は、ノードプールにさらにインスタンスタイプを指定できます。ACK コンソールは、ノードプールのスケーラビリティを自動的に評価します。ノードプールを作成するとき、またはノードプールを作成した後に、ノードプールのスケーラビリティをチェック できます。

    GPU アクセラレーションインスタンスのみを選択した場合は、必要に応じて [GPU 共有を有効にする] を選択できます。詳細については、「cGPU の概要」をご参照ください。

    对

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

    Alibaba Cloud Marketplace イメージ はカナリアリリース中です。
    説明
    • ノードプールの OS イメージを変更した後、変更は新しく追加されたノードにのみ適用されます。ノードプール内の既存のノードは、引き続き元の OS イメージを使用します。オペレーティングシステムをアップグレードまたは変更する方法の詳細については、「オペレーティングシステムを変更する」をご参照ください。

    • ノードプール内のすべてのノードで同じ OS イメージを使用するように、ACK では、ノードの OS イメージを最新バージョンに更新することのみが可能です。ACK では、OS イメージのタイプを変更することはできません。

    对

    セキュリティ強化

    クラスタのセキュリティ強化を有効にします。このパラメータは、クラスタの作成後は変更できません。

    • [無効]: ECS インスタンスのセキュリティ強化を無効にします。

    • [MLPS セキュリティ強化]: Alibaba Cloud は、Alibaba Cloud Linux 2 イメージと Alibaba Cloud Linux 3 イメージが複数レベル保護スキーム(MLPS)2.0 のレベル 3 標準に準拠しているかどうかをチェックするのに役立つベースラインとベースラインチェック機能を提供しています。MLPS セキュリティ強化は、OS イメージの互換性とパフォーマンスを損なうことなく、GB/T 22239-2019 情報セキュリティ技術 - サイバーセキュリティの分類保護のベースラインの要件を満たすように OS イメージのセキュリティを強化します。詳細については、「MLPS に基づく ACK セキュリティ強化」をご参照ください。

      重要

      MLPS セキュリティ強化を有効にすると、root ユーザーの SSH 経由のリモートログインは禁止されます。仮想ネットワークコンピューティング(VNC)を使用して ECS コンソールから OS にログインし、SSH 経由でログインできる一般ユーザーを作成できます。詳細については、「VNC を使用してインスタンスに接続する」をご参照ください。

    • [OS セキュリティ強化]: システムイメージが Alibaba Cloud Linux 2 または Alibaba Cloud Linux 3 イメージの場合にのみ、Alibaba Cloud Linux セキュリティ強化 を有効にできます。

    错

    ログオンタイプ

    [MLPS セキュリティ強化] を選択した場合、[パスワード] オプションのみがサポートされます。オペレーティングシステム が ContainerOS に設定されている場合、有効な値は キーペア後で です。

    有効な値: [キーペア][パスワード][後で]

    • ノードプールを作成するときにログオンタイプを設定する:

      • キーペア: Alibaba Cloud SSH キーペア は、ECS インスタンスにログインするための安全で便利な方法を提供します。SSH キーペアは、公開鍵と秘密鍵で構成されます。SSH キーペアは、Linux インスタンスのみをサポートしています。

        [ユーザー名](ユーザー名として [root] または [ecs-user] を選択)と [キーペア] パラメータを設定します。

      • パスワード: パスワードは 8 ~ 30 文字で、文字、数字、および特殊文字を含めることができます。

        [ユーザー名](ユーザー名として [root] または [ecs-user] を選択)とパスワードパラメータを設定します。

    • 後で: インスタンスの作成後にキーペアをバインドするか、パスワードをリセットします。詳細については、「インスタンスに SSH キーペアをバインドする」および「インスタンスのログオンパスワードをリセットする」をご参照ください。

    对

    ユーザー名

    [キーペア] または [パスワード]ログオンタイプ に選択した場合は、ユーザー名として [root] または [ecs-user] を選択する必要があります。

    对

    ストレージ構成

    パラメータ

    説明

    変更可能

    システムディスク

    ESSD AutoPL企業向け SSD(ESSD)ESSD エントリ標準 SSDウルトラディスク がサポートされています。選択できるシステムディスクのタイプは、選択した インスタンスファミリ によって異なります。ドロップダウンリストに表示されていない ディスク タイプは、選択したインスタンスタイプではサポートされていません。

    ESSD カスタムパフォーマンスと暗号化

    • [企業向け SSD(ESSD)] を選択した場合は、カスタムパフォーマンスレベルを設定できます。ストレージ容量の大きい ESSD には、より高いパフォーマンスレベル(PL)を選択できます。たとえば、ストレージ容量が 460 GiB を超える ESSD には PL 2 を選択できます。ストレージ容量が 1,260 GiB を超える ESSD には PL 3 を選択できます。詳細については、「容量と PL」をご参照ください。

    • システムディスクのタイプを [企業向け SSD(ESSD)] に設定した場合にのみ、[暗号化] を選択できます。デフォルトでは、デフォルトサービス CMK を使用してシステムディスクが暗号化されます。KMS で Bring Your Own Key(BYOK)を使用して生成された既存の CMK を使用することもできます。

    [その他のシステムディスクタイプ] を選択し、システムディスク セクションで現在のディスクタイプ以外のディスクタイプを選択して、システムディスク作成の成功率を向上させることができます。システムは、指定されたディスクタイプに基づいて順番にシステムディスクを作成しようとします。

    对

    データディスク

    ESSD AutoPL企業向け SSD(ESSD)ESSD エントリSSDウルトラディスク がサポートされています。選択できるデータディスクのタイプは、選択した インスタンスファミリ によって異なります。ドロップダウンリストに表示されていない ディスク タイプは、選択したインスタンスタイプではサポートされていません。

    ESSD AutoPL ディスク

    • パフォーマンスプロビジョニング: パフォーマンスプロビジョニング機能を使用すると、ディスクを拡張することなく、ベースラインパフォーマンスを超えるストレージ要件を満たすように、ESSD AutoPL ディスクのプロビジョニングされたパフォーマンス設定を構成できます。

    • パフォーマンスバースト: パフォーマンスバースト機能を使用すると、読み取り/書き込みワークロードのスパイクが発生したときに ESSD AutoPL ディスクのパフォーマンスをバーストさせ、ワークロードスパイクの終了時にパフォーマンスをベースラインレベルに下げることができます。

    企業向け SSD(ESSD)

    カスタムパフォーマンスレベルを設定します。ストレージ容量の大きい ESSD には、より高い PL を選択できます。たとえば、ストレージ容量が 460 GiB を超える ESSD には PL 2 を選択できます。ストレージ容量が 1,260 GiB を超える ESSD には PL 3 を選択できます。詳細については、「容量と PL」をご参照ください。

    • データディスクのタイプを指定するときに、すべてのディスクタイプに対して [暗号化] を選択できます。デフォルトでは、デフォルトサービス CMK を使用してデータディスクが暗号化されます。KMS で BYOK を使用して生成された既存の CMK を使用することもできます。

    • コンテナイメージの高速化と大規模言語モデル(LLM)の高速読み込みが必要なシナリオでは、スナップショットを使用してデータディスクを作成することもできます。これにより、システムの応答速度が向上し、処理能力が向上します。

    • 各ノードの /var/lib/container にデータディスクがマウントされ、/var/lib/kubelet/var/lib/containerd/var/lib/container にマウントされていることを確認します。ノード上の他のデータディスクについては、初期化 操作を実行し、マウントディレクトリをカスタマイズできます。詳細については、「ACK ノードプールでデータディスクをカスタムディレクトリにマウントできますか。」をご参照ください。

    説明

    1 つの ECS インスタンスに最大 64 個のデータディスクを接続できます。ECS インスタンスに接続できるディスクの数は、インスタンスタイプによって異なります。各インスタンスタイプでサポートされているデータディスクの最大数を照会するには、DescribeInstanceTypes 操作を呼び出し、レスポンスの DiskQuantity パラメータを照会します。

    对

    インスタンス数

    パラメータ

    説明

    変更可能

    必要なノード数

    ノードプールに必要なノード数です。クラスタコンポーネントが想定どおりに動作するように、少なくとも 2 つのノードを設定することをお勧めします。[必要なノード数] パラメータを設定して、ノードプール内のノード数を調整できます。詳細については、「ノードプールをスケーリングする」をご参照ください。

    ノードプールにノードを作成したくない場合は、このパラメータを 0 に設定します。後でこのパラメータを手動で変更してノードを追加できます。

    对

    詳細構成

    [詳細オプション(オプション)] をクリックして、ノードスケーリングポリシー、リソースグループ、ECS タグ、およびテイントを設定します。

    詳細構成

    パラメータ

    説明

    変更可能

    リソースグループ

    クラスタが属する リソースグループ です。各リソースは 1 つのリソースグループにのみ属することができます。ビジネスシナリオに基づいて、リソースグループをプロジェクト、アプリケーション、または組織と見なすことができます。

    对

    スケーリングモード

    自動スケーリングモード には を選択する必要があります。
    • 標準モード: 自動スケーリングは、ECS インスタンスを作成および解放することによって実装されます。

    • 迅速モード: 自動スケーリングは、ECS インスタンスを作成、停止、および起動することによって実装されます。停止状態の ECS インスタンスを直接再起動して、スケーリングアクティビティを高速化できます。

      迅速モードのノードが解放されると、そのノードに対してディスク料金のみが課金されます。コンピューティング料金は発生しません。このルールは、ビッグデータやローカル SSD インスタンスファミリなど、ローカルディスクを使用するインスタンスファミリには適用されません。エコノミカルモードの課金ルールと制限の詳細については、「エコノミカルモード」をご参照ください。

    错

    スケーリングポリシー

    • 優先順位: システムは、ノードプールに選択した Vswitch の優先順位に基づいてノードプールをスケーリングします。選択した vSwitch は、優先順位の高い順に表示されます。自動スケーリングが最も優先順位の高い vSwitch のゾーンに ECS インスタンスを作成できなかった場合、自動スケーリングは優先順位の低い vSwitch のゾーンに ECS インスタンスを作成しようとします。

    • コスト最適化: システムは、vCPU の単価が安い順にインスタンスを作成します。

      ノードプールの 課金方法プリエンプティブルインスタンス に設定されている場合、プリエンプティブルインスタンスが優先的に作成されます。[従量課金インスタンスの割合] パラメータを設定することもできます。在庫不足などの理由でプリエンプティブルインスタンスを作成できない場合は、従量課金インスタンスが自動的に作成されて補完されます。

    • 分散バランシング: 均等分散ポリシーは、複数の vSwitch を選択した場合にのみ有効になります。このポリシーは、ECS インスタンスがスケーリンググループのゾーン(vSwitch)に均等に分散されるようにします。在庫不足などの理由で ECS インスタンスがゾーン全体に不均一に分散されている場合は、リバランス操作を実行できます。

    对

    プリエンプティブルインスタンスが不足している場合は従量課金インスタンスを使用する

    [課金方法] パラメータを [プリエンプティブルインスタンス] に設定する必要があります。

    この機能を有効にすると、価格または在庫の制約のために十分なプリエンプティブルインスタンスを作成できない場合、ACK は必要な数の ECS インスタンスを満たすために従量課金インスタンスを自動的に作成します。

    对

    補足プリエンプティブルインスタンスを有効にする

    [課金方法] パラメータを [プリエンプティブルインスタンス] に設定する必要があります。

    この機能を有効にすると、プリエンプティブルインスタンスが解放されたことを示すシステムメッセージを受信すると、自動スケーリングが有効になっているノードプールは、解放されたプリエンプティブルインスタンスを置き換えるために新しいインスタンスを作成しようとします。

    对

    ECS タグ

    自動スケーリング中に自動的に追加される ECS インスタンスにタグを追加します。タグキーは一意である必要があります。キーは 128 文字以下にする必要があります。キーと値は aliyun または acs: で始めることはできません。キーと値には https:// または http:// を含めることはできません。

    1 つの ECS インスタンスには最大 20 個のタグを付けることができます。クォータ制限を増やすには、クォータセンターコンソール で申請を送信します。次のタグは、ACK と自動スケーリングによって ECS ノードに自動的に追加されます。したがって、ECS ノードには最大 17 個のタグを追加できます。

    • 次の 2 つの ECS タグは ACK によって追加されます。

      • ack.aliyun.com:<クラスタ ID>

      • ack.alibabacloud.com/nodepool-id:<ノードプール ID>

    • 次のラベルは自動スケーリングによって追加されます: acs:autoscaling:scalingGroupId:<スケーリンググループ ID>

    説明
    • 自動スケーリングを有効にすると、次の ECS タグがデフォルトでノードプールに追加されます: k8s.io/cluster-autoscaler:true および k8s.aliyun.com:true

    • 自動スケーリングコンポーネントは、ノードのラベルとテイントに基づいてスケールアウトアクティビティをシミュレートします。この目的を達成するために、ノードラベルの形式は k8s.io/cluster-autoscaler/node-template/label/ラベルキー:ラベル値 に変更され、テイントの形式は k8s.io/cluster-autoscaler/node-template/taint/テイントキー/テイント値:テイント効果 に変更されます。

    对

    テイント

    ノードにテイントを追加します。テイント は、キー、および 効果 で構成されます。テイントキーにはプレフィックスを付けることができます。プレフィックス付きのテイントキーを指定する場合は、プレフィックスとキーの残りのコンテンツの間にスラッシュ(/)を追加します。詳細については、「テイントと許容」をご参照ください。テイントには次の制限が適用されます。

    • キー: キーは 1 ~ 63 文字で、文字、数字、ハイフン(-)、アンダースコア(_)、およびピリオド(.)を含めることができます。キーは文字または数字で始まり、文字または数字で終わる必要があります。

      プレフィックス付きのキーを指定する場合、プレフィックスはサブドメイン名である必要があります。サブドメイン名は、ピリオド(.)で区切られた DNS ラベルで構成され、長さは 253 文字以下にする必要があります。スラッシュ(/)で終わる必要があります。サブドメイン名の詳細については、「DNS サブドメイン名」をご参照ください。

    • : 値は 63 文字以下で、文字、数字、ハイフン(-)、アンダースコア(_)、およびピリオド(.)を含めることができます。値は文字または数字で始まり、文字または数字で終わる必要があります。値を空にすることもできます。

    • テイントには次の 効果 を指定できます: [noschedule][noexecute][prefernoschedule]

      • NoSchedule: ノードに 効果NoSchedule のテイントがある場合、システムはそのノードにポッドをスケジュールしません。

      • NoExecute: このテイントを許容しないポッドは、このテイントがノードに追加された後にエビクションされます。このテイントを許容するポッドは、このテイントがノードに追加された後もエビクションされません。

      • PreferNoSchedule: システムは、ポッドが許容しないテイントを持つノードへのポッドのスケジューリングを回避しようとします。

    对

    ノードラベル

    ノードにラベルを追加します。ラベルはキーと値のペアです。ラベルキーにはプレフィックスを付けることができます。プレフィックス付きのラベルキーを指定する場合は、プレフィックスとキーの残りのコンテンツの間にスラッシュ(/)を追加します。ラベルには次の制限が適用されます。

    • キー: 名は 1 ~ 63 文字で、文字、数字、ハイフン(-)、アンダースコア(_)、およびピリオド(.)を含めることができます。文字または数字で始まり、文字または数字で終わる必要があります。

      プレフィックス付きのラベルキーを指定する場合、プレフィックスは サブドメイン名 である必要があります。サブドメイン名は、ピリオド(.)で区切られた DNS ラベルで構成され、長さは 253 文字以下にする必要があります。スラッシュ(/)で終わる必要があります。

      次のプレフィックスは主要な Kubernetes コンポーネントによって使用されるため、ノードラベルでは使用できません。

      • kubernetes.io/

      • k8s.io/

      • kubernetes.io/ または k8s.io/ で終わるプレフィックス。例: test.kubernetes.io/

        ただし、次のプレフィックスは使用できます。

        • kubelet.kubernetes.io/

        • node.kubernetes.io

        • kubelet.kubernetes.io/ で終わるプレフィックス。

        • node.kubernetes.io で終わるプレフィックス。

    • 値: 値は 63 文字以下で、文字、数字、ハイフン(-)、アンダースコア(_)、およびピリオド(.)を含めることができます。値は文字または数字で始まり、文字または数字で終わる必要があります。値を空にすることもできます。

    对

    コンテナイメージの高速化

    containerd バージョン 1.6.34 以降を使用するクラスタのみがこの構成をサポートしています。

    このオプションを選択すると、新しいノードはコンテナイメージがオンデマンド読み込みをサポートしているかどうかを自動的に検出します。サポートされている場合、コンテナの起動はオンデマンド読み込みを使用して高速化されます。

    对

    CPU ポリシー

    kubelet ノードの CPU 管理ポリシー です。

    • なし: デフォルトの CPU 管理ポリシーです。

    • 静的: このポリシーでは、ノード上の特定のリソース特性を持つポッドに、強化された CPU アフィニティと排他性を付与できます。

    对

    カスタムノード名

    カスタムノード名 を使用するかどかを指定します。カスタムノード名を使用することを選択した場合、ノード名、ECS インスタンス名、および ECS インスタンスのホスト名が変更されます。

    説明

    Windows インスタンスでカスタムノード名を使用する場合、インスタンスのホスト名は IP アドレスに固定されます。IP アドレスのピリオド(.)をハイフン(-)に置き換える必要があります。また、IP アドレスにはプレフィックスまたはサフィックスを使用できません。

    カスタムノード名は、プレフィックス、IP 部分文字列、およびサフィックスで構成されます。

    • カスタムノード名は 2 ~ 64 文字にする必要があります。名前は小文字または数字で始まり、小文字または数字で終わる必要があります。

    • プレフィックスとサフィックスには、文字、数字、ハイフン(-)、およびピリオド(.)を含めることができます。プレフィックスとサフィックスは文字で始める必要があり、ハイフン(-)またはピリオド(.)で終わることはできません。プレフィックスとサフィックスには、連続したハイフン(-)またはピリオド(.)を含めることはできません。

    • ECS の制限によりプレフィックスは必須ですが、サフィックスはオプションです。

    たとえば、ノードの IP アドレスが 192.XX.YY.55、プレフィックスが aliyun.com、サフィックスが test であるとします。

    • ノードが Linux ノードの場合、ノード名、ECS インスタンス名、および ECS インスタンスのホスト名は aliyun.com192.XX.YY.55test です。

    • ノードが Windows ノードの場合、ECS インスタンスのホスト名は 192-XX-YY-55、ノード名と ECS インスタンス名は aliyun.com192.XX.YY.55test です。

    错

    ワーカー RAM ロール

    ACK マネージドクラスター がサポートされています。

    ワーカー Resource Access Management(RAM)ロールをノードプールに割り当てて、クラスタ内のすべてのノード間でワーカー RAM ロールを共有する潜在的なリスクを軽減できます。

    • デフォルトロール: ノードプールは、クラスタによって作成されたデフォルトのワーカー RAM ロールを使用します。

    • カスタム: ノードプールは、指定されたロールをワーカー RAM ロールとして使用します。このパラメータを空のままにすると、デフォルトロールが使用されます。詳細については、「カスタムワーカー RAM ロールを使用する」をご参照ください。

    对

    事前定義されたカスタムデータ

    この機能を使用するには、クォータセンターコンソール で申請を送信してください。

    ノードは、クラスタに追加される前に事前定義されたスクリプトを自動的に実行します。ユーザーデータスクリプトの詳細については、「ユーザーデータスクリプト」をご参照ください。

    たとえば、echo "hello world" と入力すると、ノードは次のスクリプトを実行します。

    #!/bin/bash
    echo "hello world"
    [ノード初期化スクリプト]

    对

    ユーザーデータ

    ノードは、クラスタに追加された後にユーザーデータスクリプトを自動的に実行します。ユーザーデータスクリプトの詳細については、「ユーザーデータスクリプト」をご参照ください。

    たとえば、echo "hello world" と入力すると、ノードは次のスクリプトを実行します。

    #!/bin/bash
    [ノード初期化スクリプト]
    echo "hello world"
    説明

    クラスタを作成するかノードを追加した後、ノードでのユーザーデータスクリプトの実行が失敗する可能性があります。ノードにログインして grep cloud-init/var/log/messages コマンドを実行し、実行ログを表示して、ノードでの実行が成功したか失敗したかを確認することをお勧めします。

    对

    Cloudmonitor エージェント

    CloudMonitor をインストールすると、CloudMonitor コンソール でノードに関する監視情報を表示できます。

    このパラメータは、新しく追加されたノードにのみ有効であり、既存のノードには有効ではありません。既存の ECS ノードに CloudMonitor エージェントをインストールする場合は、CloudMonitor コンソール にアクセスしてください。

    对

    パブリック IP

    各ノードに IPv4 アドレスを割り当てるかどうかを指定します。チェックボックスをオフにすると、パブリック IP アドレスは割り当てられません。チェックボックスをオンにした場合は、[帯域幅の課金方法][ピーク帯域幅] パラメータを設定する必要があります。

    このパラメータは、新しく追加されたノードにのみ有効であり、既存のノードには有効ではありません。既存のノードがインターネットにアクセスできるようにするには、EIP を作成し、EIP をノードに関連付ける必要があります。詳細については、「EIP を ECS インスタンスに関連付ける」をご参照ください。

    对

    カスタムセキュリティグループ

    [基本セキュリティグループ] または [詳細セキュリティグループ] を選択できますが、選択できるセキュリティグループタイプは 1 つだけです。ノードプールのセキュリティグループを変更したり、セキュリティグループのタイプを変更したりすることはできません。セキュリティグループの詳細については、「概要」をご参照ください。

    重要
    • 各 ECS インスタンスは最大 5 つのセキュリティグループをサポートしています。ECS インスタンスのセキュリティグループのクォータが十分であることを確認してください。ECS インスタンスのセキュリティグループの制限と、ECS インスタンスのセキュリティグループのクォータ制限を増やす方法の詳細については、「セキュリティグループの制限」をご参照ください。

    • 既存のセキュリティグループを選択した場合、システムはセキュリティグループルールを自動的に設定しません。これにより、クラスタ内のノードにアクセスするときにエラーが発生する可能性があります。セキュリティグループルールを手動で設定する必要があります。セキュリティグループルールを管理する方法の詳細については、「セキュリティグループルールを設定して ACK クラスタのアクセス制御を実施する」をご参照ください。

    错

    RDS ホワイトリスト

    ノードの IP アドレスを ApsaraDB RDS インスタンスのホワイトリストに追加します。

    对

    デプロイメントセット

    最初に ECS コンソールで デプロイメントセットを作成 し、次に ACK コンソールでノードプールを作成するときにデプロイメントセットを指定する必要があります。デプロイメントセットは、クラスタの作成後は変更できません。

    デプロイメントセットを使用して、ECS インスタンスをさまざまな物理サーバーに分散し、高可用性を確保し、基盤となるディザスタリカバリを実装できます。ECS インスタンスを作成するときにデプロイメントセットを指定すると、インスタンスは、指定されたリージョン内でデプロイメントセットに事前設定したデプロイメント戦略に基づいて作成および分散されます。詳細については、「デプロイメントセットをノードプールに関連付けるためのベストプラクティス」をご参照ください。

    重要

    デプロイメントセットを選択すると、ノードプールで作成できるノードの最大数が制限されます。デフォルトでは、デプロイメントセットでサポートされるノードの最大数は 20 × ゾーン数 です。ゾーンの数は vSwitch の数によって異なります。デプロイメントセットを選択する際には注意が必要です。ノード作成の失敗を避けるために、選択したデプロイメントセットの ECS クォータが十分であることを確認してください。

    错

    プライベートプールタイプ

    有効な値: [オープン][使用しない][指定]

    • オープン: システムはオープンなプライベートプールを自動的に照合します。一致するものが見つからない場合は、パブリックプールのリソースが使用されます。

    • 使用しない: プライベートプールは使用されません。パブリックプールのリソースのみが使用されます。

    • 指定: ID でプライベートプールを指定します。指定されたプライベートプールが使用できない場合、ECS インスタンスは起動に失敗します。

    詳細については、「プライベートプール」をご参照ください。

    对

  2. [注文の確認] をクリックします。

    ノードプールリストで、ノードプールの [ステータス] 列に [初期化中] と表示されている場合、ノードプールは作成中です。ノードプールが作成されると、ノードプールの [ステータス] 列に [アクティブ] と表示されます。

ノードプールの変更

ノードプールを作成した後、ACK コンソールでノードプールの構成を変更できます。たとえば、ノードプールが使用する課金方法、vSwitch、インスタンスの仕様、およびシステムディスクを変更できます。また、ノードプールの自動スケーリングを有効または無効にすることもできます。変更可能なパラメータの詳細については、「ノードプールの作成」をご参照ください。

重要
  • ノードプールを変更しても、クラスタの他のノードプールにデプロイされているノードとアプリケーションには影響しません。

  • ほとんどのシナリオでは、ノードプールを変更した後、変更された構成は新しく追加されたノードにのみ適用されます。ECS タグラベルとテイント などの既存のノードを更新するなど、特定のシナリオでは、変更された構成はノードプール内の既存のノードにも適用されます。

  • ノードプールの構成を更新した後、ノードプールに後で追加されるノードは、変更された構成を使用します。

  • ノードプール構成を変更するには、次の手順を参照してください。他の方法でノードに変更を加えた場合、これらの変更はノードプールの更新時に上書きされます。

  1. [ノードプール] ページで、変更するノードプールを見つけ、[操作] 列の [編集] をクリックします。

  2. 表示されるダイアログボックスで、画面の指示に従ってノードプールの パラメータを変更します。

    [ノードプール] ページで、ノードプールの [ステータス] 列に [更新中] と表示されている場合、ノードプールは変更中です。ノードプールが更新されると、[ステータス] 列に [アクティブ化済み] と表示されます。

ノードプールの表示

ACK コンソールで、ノードプールの基本情報、モニタリングデータ、ノード情報、およびスケーリングイベントを表示できます。

管理するノードプールの名前をクリックすると、ノードプールの詳細ページで次の情報を表示できます。

  • [概要] タブをクリックして、クラスタ情報、ノードプール情報、およびノード構成を表示します。クラスタで自動スケーリングが有効になっている場合は、自動スケーリング構成も表示できます。

  • [モニター] タブをクリックして、Managed Service for Prometheus が提供するノードの監視情報を表示します。監視情報には、ノードプール内のリソースウォーターマーク(CPU 使用率、メモリ使用率、ディスク使用率、ノードあたりの平均 CPU 使用率またはメモリ使用率など)が含まれます。

  • [ノード] タブをクリックして、ノードプール内のノードのリストを表示します。ノードのドレイン、ノードのスケジューリング設定の構成、またはノードでの O&M 操作を実行できます。また、ノードプールからノードを削除することもできます。[エクスポート] をクリックして、ノードの詳細をカンマ区切り値(CSV)ファイルにエクスポートできます。

  • [スケーリングアクティビティ] タブをクリックして、ノードプールの最新のスケーリングイベントを表示します。各イベントレコードには、スケーリングアクティビティの説明と、スケーリングアクティビティの実行後の ECS インスタンスの数が表示されます。スケーリングの失敗の理由も表示できます。スケーリングの失敗の一般的なエラーコードの詳細については、「ノードプールを手動でスケーリングする」をご参照ください。

ノードプールの削除

ECS インスタンスの解放ルールは、インスタンスの課金方法によって異なります。ノードプールからノードを削除する場合は、次の表に記載されている操作を実行することをお勧めします。ノードプールを削除する前に、必要なノード数 パラメータがノードプールに設定されているかどうかを確認します。このパラメータは、ノードの解放プロセスに影響を与える可能性があります。

ノードプール

解放ルール

必要なノード数パラメータで構成されているノードプール

  • 従量課金ノード: ノードプールが削除された後に解放されます。

  • サブスクリプションノード: ノードプールが削除された後も保持されます。

    サブスクリプションノードを解放する場合は、参照してくださいインスタンスの課金方法をサブスクリプションから従量課金に変更する を参照してインスタンスの課金方法を従量課金に変更してから、ECS コンソール にログインしてインスタンスを解放します。

  • ノードプールを削除すると、ノードプール内のすべてのノードがクラスタの API サーバー から削除されます。

必要なノード数パラメータで構成されていないノードプール

  • 手動または自動でノードプールに追加されたノードとサブスクリプションノードは解放されません。その他のノードは、ノードプールを削除すると解放されます。

    サブスクリプションノードを解放する場合は、参照してくださいインスタンスの課金方法をサブスクリプションから従量課金に変更する を参照してインスタンスの課金方法を従量課金に変更してから、ECS コンソール にログインしてインスタンスを解放します。

  • 解放されたノードは、クラスタの API サーバー から削除されます。保持されたノードは、クラスタの API サーバー から削除されません。

  1. オプション: 管理するノードプールの名前をクリックします。[概要] タブで、必要なノード数 パラメータが設定されているかどうかを確認できます。ハイフン(-)が表示されている場合、必要なノード数 パラメータは設定されていません。

  2. 削除するノードプールを選択し、[操作][その他] > [削除] を選択します。ダイアログボックスの情報を読み、確認してから、[OK] をクリックします。

次のステップ

ノードプールが作成されたら、ノードプールの [操作] 列の操作をクリックするか、[操作] 列の [その他] をクリックして、次の操作を実行できます。

操作

説明

参照

ノードプールの同期

ノード情報に異常がある場合は、ノードプールを同期できます。

なし

詳細

ノードプールの詳細を表示します。

なし

編集

ノードプールの構成を変更します。たとえば、vSwitch、マネージドノードプールの設定、課金方法、インスタンスの仕様を変更できます。また、ノードプールの自動スケーリングを有効または無効にすることもできます。

ノードプールの変更

モニター

Managed Service for Prometheus が提供するノードの監視情報を表示します。監視情報には、ノードプール内のリソースウォーターマーク(CPU 使用率、メモリ使用率、ディスク使用率、ノードあたりの平均 CPU 使用率またはメモリ使用率など)が含まれます。

ノードプールの表示

スケーリング

手動スケーリングと 自動スケーリングがサポートされています。コンピューティングリソースは、ビジネス要件とポリシーに基づいて自動的に調整され、クラスタコストを削減します。

  • 手動: ACK は、[必要なノード数] パラメータの値に基づいて、ノードプール内のノード数を調整します。ノード数は常に [必要なノード数] パラメータの値と同じです。詳細については、「ノードプールを手動でスケーリングする」をご参照ください。

  • 自動: クラスタの容量計画がポッドスケジューリングの要件を満たせない場合、ACK は設定されたインスタンスの最小数と最大数に基づいてノードを自動的にスケールアウトします。デフォルトでは、Kubernetes 1.24 以降を実行するクラスタでは ノードインスタントスケーリング が有効になっています。デフォルトでは、Kubernetes 1.24 以降を実行するクラスタでは ノード自動スケーリング が有効になっています。詳細については、「ノードスケーリング」をご参照ください。

ログオンモード

ノードのログオンタイプを設定します。キーペアまたはパスワードを指定できます。

インスタンスとイメージ

マネージドノードプールを有効にする

ノードプールのノード O&M を自動化します。マネージドノードプール機能を有効にすると、ノードの修復、kubelet の更新、ランタイムの更新、OS の共通脆弱性と暴露(CVE)パッチ適用などの O&M タスクが自動的に実行されます。

基本構成

既存のノードを追加

既存の ECS インスタンスをワーカーノードとしてクラスタに追加します。この操作を実行して、以前にクラスタから削除したワーカーノードを追加できます。この操作には特定の制限と使用上の注意が適用されます。詳細については、ACK のドキュメントを参照してください。

既存の ECS インスタンスを ACK クラスタに追加する

複製

現在のノードプール構成に基づいて、必要な数のノードを含むノードプールを複製します。

なし

ノードの修復

マネージドノードプール内のノードで例外が発生すると、ACK はノードを自動的に修復します。ただし、複雑なノードの例外を手動で修正する必要がある場合があります。ノードステータスのチェック項目とノード例外の修復ソリューションの詳細については、ACK ドキュメントの関連トピックを参照してください。

ノードの自動修復を有効にする

CVE パッチ適用(OS)

ノードプール内の CVE 脆弱性にバッチでパッチを適用して、クラスタの安定性、セキュリティ、およびコンプライアンスを向上させます。ACK は、特定の脆弱性にパッチを適用するためにノードを再起動する必要がある場合があります。CVE パッチ適用と CVE パッチ適用の使用上の注意の詳細については、ACK ドキュメントの関連トピックを参照してください。

ノードプールの OS CVE 脆弱性にパッチを適用する

Kubelet の更新

ノードプール内のすべてのノードの kubelet パラメータをカスタマイズして、ノードの動作を管理します。たとえば、リソースの使用量を調整するためにリソース予約を変更する必要がある場合は、kubelet パラメータをカスタマイズできます。ACK コンソールで使用できない kubelet パラメータを CLI を使用してカスタマイズすることはお勧めしません。

ノードプールの kubelet パラメータをカスタマイズする

OS 構成

ノードプール内のすべてのノードの OS パラメータをカスタマイズして、OS のパフォーマンスを向上させます。ACK コンソールで使用できない OS パラメータを CLI を使用してカスタマイズすることはお勧めしません。

ノードプールの OS パラメータをカスタマイズする

オペレーティングシステムの変更

ノードプールのオペレーティングシステムを変更または更新します。

なし

Kubelet の更新

ノードプール内のすべてのノードの kubelet と containerd を更新します。

ノードプールを更新する

削除

ノードプールが使用されていない場合は、ノードプールを削除してコストを節約します。ノードプール内のノードの解放ルールは、ノードの課金方法と、必要なノード数パラメータがノードプールに設定されているかどうかによって異なります。

ノードプールの削除

FAQ

ECS インスタンスからカスタムイメージを作成し、そのイメージを使用してノードを作成するにはどうすればよいですか。

ECS インスタンスを作成した後、ソフトウェアのインストールやアプリケーション環境のデプロイなどの操作を実行して、インスタンスをカスタマイズできます。その後、インスタンスからカスタムイメージを作成できます。カスタムイメージから作成されたインスタンスには、カスタマイズされたすべての項目が含まれているため、新しいインスタンスごとにこれらの項目を設定する必要がなくなります。

  1. ECS インスタンスにログインし、次のコマンドを実行して指定されたファイルを削除します。ECS インスタンスへのログイン方法の詳細については、「Workbench を使用して SSH 経由で Linux インスタンスに接続する」をご参照ください。

    chattr -i /etc/acknode/nodeconfig-*
    rm -rf /etc/acknode
    systemctl disable ack-reconfig
    rm -rf /etc/systemd/system/ack-reconfig.service
    rm -rf /usr/local/bin/reconfig.sh
    rm -rf /var/lib/cloud
  2. ECS インスタンスからカスタムイメージを作成します。手順と使用上の注意の詳細については、「インスタンスからカスタムイメージを作成する」をご参照ください。

  3. ノードプールを作成します。ノードプールを作成するときに、[オペレーティングシステム] パラメータに [カスタムイメージ] を選択します。このトピックで前述した説明に基づいて、他のパラメータを設定します。

重要
  • ACK クラスタでサポートされているオペレーティングシステムに基づいてカスタムイメージを作成します。詳細については、「OS イメージ」をご参照ください。

  • ACK クラスタで実行中の ECS インスタンスにカスタムイメージを構築しないでください。これを行うには、最初にクラスタから ECS インスタンスを削除する必要があります。詳細については、「ノードを削除する」をご参照ください。

  • カスタムイメージの事前定義された動作ロジックは、クラスタノードの初期化、コンテナの起動、ノードの更新、マネージドノードプール内のノードの自動リカバリなどの操作に影響を与える可能性があります。本番環境で使用する前に、カスタムイメージがテストおよび検証済みであることを確認してください。

参照

  • ノードが使用されていない場合は、ノードを削除できます。詳細については、「ノードを削除する」をご参照ください。

  • ACK は、Kubernetes コンポーネントとシステムプロセスを実行するために一定量のノードリソースを予約します。詳細については、「リソース予約ポリシー」をご参照ください。

  • クラスタのリソース容量がポッドスケジューリングの要件を満たせない場合は、ノード自動スケーリング を有効にできます。詳細については、「ノードスケーリング」をご参照ください。

  • ワーカーノード上のポッドの最大数は、ネットワークプラグインによって異なり、ほとんどの場合調整できません。クラスタ内のポッドの最大数を増やすには、クラスタ内のノードプールをスケールアウトするか、クラスタで使用されているインスタンスの仕様をアップグレードするか、ポッド CIDR ブロックをリセットします。詳細については、「クラスタ内のポッドの最大数を増やす」をご参照ください。