Container Service for Kubernetes (ACK) は、ノードをグループで管理するためのノードプールを提供します。ノードプールとは、インスタンスの仕様、オペレーティングシステム、ラベル、テイントなど、同じ構成を持つノードのグループです。ACK クラスタには、異なるタイプと構成のノードプールを 1 つ以上作成できます。ノードプールを作成すると、ノードプール内のノードを一元的に管理できます。
ノードプールを作成する前に、ノードプールを読んで、ノードプールの基本情報、ユースケース、関連機能、および課金ルールをよく理解しておくことをお勧めします。
コンソール操作
ACK コンソールの管理対象クラスタの [ノードプール] ページで、ノードプールを作成、編集、または削除できます。また、ノードプールの詳細を表示することもできます。
ACK コンソールにログインします。左側のナビゲーションウィンドウで、[クラスタ] をクリックします。
[クラスタ] ページで、管理するクラスタを見つけて、その名前をクリックします。左側のナビゲーションウィンドウで、 を選択します。
ノードプールを作成する
ACK コンソールでノードプールを作成する際に、基本設定、ネットワーク設定、ストレージ設定を構成できます。一部のノードプールパラメータ、特にノードプールの可用性とネットワークに関連するパラメータは、ノードプール作成後は変更できません。次の表に、これらのパラメータを示します。クラスタにノードプールを作成しても、クラスタの他のノードプールにデプロイされているノードとアプリケーションには影響しません。
ACK API を呼び出すか、Terraform を使用してノードプールを作成することもできます。詳細については、「CreateClusterNodePool」または「Terraform を使用して自動スケーリングが有効なノードプールを作成する」をご参照ください。
[ノードプール] ページで、[ノードプールを作成] をクリックします。[ノードプールを作成] ダイアログボックスで、ノードプールパラメータを設定します。
ノードプールを作成した後、[ノードプールを編集] ページでノードプールパラメータを変更できます。次の表の [変更可能] 列は、対応するパラメータをノードプール作成後に変更できるかどうかを示しています。
は、パラメータを変更できないことを示します。
は、パラメータを変更できることを示します。基本設定
パラメータ
説明
変更可能
ノードプール名
ノードプール名を指定します。

Confidential Computing
説明機密コンピューティングを使用するには、チケットを送信して、ホワイトリストに追加申請してください。
このパラメータは、[コンテナランタイム] パラメータに containerd を選択した場合にのみ使用できます。
機密コンピューティングを有効にするかどうかを指定します。ACK は、ハードウェア暗号化技術に基づくオールインワンのクラウドネイティブ機密コンピューティングソリューションを提供します。機密コンピューティングは、データのセキュリティ、整合性、および機密性を確保します。信頼できるアプリケーションや機密性の高いアプリケーションの開発と配信を簡素化し、コストを削減します。詳細については、「TEE ベースの機密コンピューティング」をご参照ください。

コンテナランタイム
Kubernetes のバージョンに基づいて コンテナランタイムを指定します。コンテナランタイムの選択方法の詳細については、「Docker、containerd、および Sandboxed-Container の比較」をご参照ください。
containerd: すべての Kubernetes バージョンで containerd をお勧めします。
Sandboxed-Container: Kubernetes 1.31 以前をサポートしています。
Docker (非推奨): Kubernetes 1.22 以前をサポートしています。

スケーリングモード
手動スケーリングと 自動スケーリングがサポートされています。コンピューティングリソースは、ビジネス要件とポリシーに基づいて自動的に調整され、クラスタコストを削減します。
手動: ACK は、[予想ノード数] パラメータの値に基づいて、ノードプール内のノード数を調整します。ノード数は常に [予想ノード数] パラメータの値と同じです。詳細については、「ノードプールを手動でスケーリングする」をご参照ください。
自動: クラスタの容量計画がポッドスケジューリングの要件を満たせない場合、ACK は設定された最小インスタンス数と最大インスタンス数に基づいてノードを自動的にスケールアウトします。デフォルトでは、Kubernetes 1.24 以降を実行しているクラスタでは ノードインスタントスケーリング が有効になり、Kubernetes 1.24 より前のバージョンを実行しているクラスタでは ノード自動スケーリング が有効になります。詳細については、「ノードスケーリング」をご参照ください。

自動 O&M 設定
ACK は、マネージドノードプール設定に以下のオプションを提供します。これらのオプションは、さまざまなレベルの 自動 O&M 機能を提供します。
自動モード: このオプションを有効にすると、ACK はノードプール内のワークロードのリソース要件に基づいて動的にスケーリングします。この場合、ACK は OS のアップグレード、ソフトウェアのアップグレード、脆弱性のパッチ適用などの O&M の責任を引き受けます。
このオプションは、自動モードが有効になっているクラスタでのみ使用できます。
マネージドノードプール: このオプションを使用すると、自動 O&M 機能の以下のパラメータを設定できます。また、自動 O&M タスクを実行するためのメンテナンスウィンドウを設定することもできます。
無効: 自動 O&M 機能を無効にします。このオプションを選択した場合は、ノードとノードプールを手動で保守する必要があります。
さまざまなマネージドノードプール設定の違いと使用上の注意については、「マネージドノードプール設定の比較」をご参照ください。
ネットワーク設定
パラメータ
説明
変更可能
ネットワーク設定
VPC
デフォルトでは、クラスタが存在する仮想プライベートクラウド (VPC) が選択されています。VPC は変更できません。

vSwitch
ノードプールがスケールアウトされると、[スケーリングポリシー] パラメータに選択したポリシーに基づいて、選択した vSwitch のゾーンに新しいノードが作成されます。使用するゾーンの vSwitch を選択できます。
使用可能な vSwitch がない場合は、[vSwitch を作成] をクリックして作成します。詳細については、「vSwitch の作成と管理」をご参照ください。

インスタンスとイメージ
パラメータ
説明
変更可能
課金方法
ノードプールで ECS インスタンスがスケーリングされるときに使用されるデフォルトの課金方法。[従量課金]、[サブスクリプション]、または [スポットインスタンス] を選択できます。
[サブスクリプション] 課金方法を選択した場合は、[期間] パラメータを設定し、[自動更新] を有効にするかどうかを選択する必要があります。
スポットインスタンス: ACK は、保護期間のある スポットインスタンスのみをサポートしています。また、[現在のインスタンス仕様の上限価格] パラメータを設定する必要があります。
選択したインスタンスタイプのリアルタイムの市場価格がこのパラメーターの値より低い場合、このインスタンスタイプの スポットインスタンス が作成されます。 保護期間 (1 時間) が終了すると、システムは 5 分ごとにインスタンスタイプのスポット価格とリソースの可用性をチェックします。 リアルタイムの市場価格が入札価格を超えた場合、またはリソースの在庫が不十分な場合、スポットインスタンスはリリースされます。 詳細については、「スポットインスタンスベースのノードプールのベストプラクティス」をご参照ください。
ノードプール内のすべてのノードが同じ課金方法を使用するように、ACK では、ノードプールの課金方法を [従量課金] または [サブスクリプション] から [スポットインスタンス] に変更したり、[スポットインスタンス] から [従量課金] または [サブスクリプション] に変更したりすることはできません。
重要ノードプールの課金方法を変更した場合、変更は新しく追加されたノードにのみ適用されます。ノードプール内の既存のノードは、引き続き元の課金方法を使用します。ノードプール内の既存のノードの課金方法を変更する方法の詳細については、「従量課金からサブスクリプションに課金方法を変更する」をご参照ください。
すべてのノードが同じ課金方法を使用するように、ACK では、ノードプールの課金方法を [従量課金] または [サブスクリプション] から [プリエンプティブインスタンス] に変更したり、[プリエンプティブインスタンス] から [従量課金] または [サブスクリプション] に変更したりすることはできません。

インスタンス関連のパラメータ
インスタンスタイプまたは属性に基づいて、ワーカーノードプールが使用する ECS インスタンスを選択します。vCPU、メモリ、インスタンスファミリ、アーキテクチャなどの属性で インスタンスファミリ をフィルタリングできます。ACK でサポートされていないインスタンスの仕様とノードの設定方法の詳細については、「ACK クラスタの ECS 仕様の推奨事項」をご参照ください。
ノードプールがスケールアウトされると、選択したインスタンスタイプの ECS インスタンスが作成されます。ノードプールのスケーリングポリシーによって、スケールアウトアクティビティ中に新しいノードの作成に使用されるインスタンスタイプが決まります。ノードプールのスケールアウト操作の成功率を向上させるには、複数のインスタンスタイプを選択します。
インスタンスタイプが利用できない、またはインスタンスが在庫切れのためにノードプールのスケールアウトに失敗した場合、ノードプールにインスタンスタイプを追加で指定できます。 ACK コンソールは、ノードプールのスケーラビリティを自動的に評価します。 ノードプールの作成時または作成後に、ノードプールのスケーラビリティを確認することができます。

オペレーティングシステム
パブリックイメージ: ACK が提供するオペレーティングシステムのパブリックイメージ。Alibaba Cloud Linux 3 ACK 最適化、ContainerOS、Alibaba Cloud Linux 3、Ubuntu、Windows など。 詳細については、「OS イメージ」をご参照ください。
カスタムイメージ: カスタムオペレーティングシステムイメージを使用します。詳細については、「既存の ECS インスタンスに基づいてカスタムイメージを作成し、それを使用してノードを作成するにはどうすればよいですか?」をご参照ください。
説明オペレーティングシステムをアップグレードまたは変更する方法の詳細については、「オペレーティングシステムを変更する」をご参照ください。

セキュリティ強化
クラスタのセキュリティ強化を有効にします。このパラメータは、クラスタ作成後は変更できません。
無効: ECS インスタンスのセキュリティ強化を無効にします。
MLPS セキュリティ強化: Alibaba Cloud は、ベースラインとベースラインチェック機能を提供し、お客様が Alibaba Cloud Linux 2 イメージと Alibaba Cloud Linux 3 イメージの Multi-Level Protection Scheme (MLPS) 2.0 のレベル 3 標準への準拠性を確認できるよう支援します。 MLPS セキュリティ強化は、OS イメージの互換性とパフォーマンスを損なうことなく OS イメージのセキュリティを強化し、GB/T 22239-2019 Information Security Technology - Baseline for Classified Protection of Cybersecurity の要件を満たします。 詳細については、「MLPS に基づく ACK のセキュリティ強化」をご参照ください。
重要MLPS Security Hardening を有効にすると、ルートユーザーの SSH 経由でのリモートログインは禁止されます。ECS コンソールから VNC を使用して OS にログインし、SSH 経由でのログインが許可されている一般ユーザーを作成できます。詳細については、「VNC を使用してインスタンスに接続する」をご参照ください。
OS セキュリティ強化: システムイメージが Alibaba Cloud Linux 2 または Alibaba Cloud Linux 3 イメージの場合にのみ、Alibaba Cloud Linux セキュリティ強化 を有効にできます。

ログオンタイプ
[MLPS セキュリティ強化] を選択した場合、[パスワード] オプションのみがサポートされます。
[オペレーティングシステム] を ContainerOS に設定した場合、有効な値は [キーペア] と [後ほど] です。キーペアを使用するには、管理コンテナを再起動して設定を適用します。詳細については、「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 AutoPL、エンタープライズ SSD (ESSD)、ESSD エントリ、SSD、ウルトラディスク がサポートされています。選択できるデータディスクタイプは、選択した インスタンスファミリ によって異なります。ドロップダウンリストに表示されていない ディスク タイプは、選択したインスタンスタイプではサポートされていません。
データディスクのタイプを指定するときに、すべてのディスクタイプに [暗号化] を選択できます。デフォルトでは、[デフォルトサービス CMK] を使用してデータディスクが暗号化されます。KMS で BYOK を使用して生成された既存の CMK を使用することもできます。
コンテナイメージの高速化と大規模言語モデル (LLM) の高速読み込みが必要なシナリオでは、スナップショットを使用してデータディスクを作成することもできます。これにより、システムの応答速度が向上し、処理能力が向上します。
ノードの作成中に、最後のデータディスクが自動的にフォーマットされます。システムは
/var/lib/containerをこのディスクにマウントし、/var/lib/kubeletと/var/lib/containerdを/var/lib/containerにマウントします。マウントポイントをカスタマイズするには、データディスクの初期化設定を変更します。コンテナランタイムディレクトリとして選択できるデータディスクは 1 つだけです。使用方法については、ACK ノードプールでデータディスクをカスタムディレクトリにマウントできますか? をご参照ください。
説明ECS インスタンスには最大 64 個のデータディスクを接続できます。 ECS インスタンスに接続できるディスクの数は、インスタンスタイプによって異なります。各インスタンスタイプでサポートされているデータディスクの最大数を照会するには、DescribeInstanceTypes オペレーションを呼び出し、レスポンスの DiskQuantity パラメータを照会します。
[データディスクタイプを追加] パラメータを設定できます。このパラメータを使用すると、システムディスクとは異なるディスクタイプを設定できるため、スケーリングの成功率が向上します。インスタンスを作成するときに、システムはインスタンス作成のディスクタイプの指定された順序に基づいて、最初に一致するディスクタイプを選択します。

インスタンス数量
パラメータ
説明
変更可能
予想ノード数
ノードプール内の予想ノード数。クラスタコンポーネントが期待どおりに動作するように、少なくとも 2 つのノードを設定することをお勧めします。[予想ノード数] パラメータを設定して、ノードプール内のノード数を調整できます。詳細については、「ノードプールをスケーリングする」をご参照ください。
ノードプールにノードを作成したくない場合は、このパラメータを 0 に設定します。後でこのパラメータを手動で変更してノードを追加できます。

詳細設定
[詳細オプション (オプション)] をクリックして、ノードスケーリングポリシー、リソースグループ、ECS タグ、およびテイントを設定します。
[確認] をクリックします。
このページで、左下隅にある [コンソールからコードへ] をクリックすると、ノードプール設定に一致する Terraform または SDK のサンプルパラメータが表示されます。
[確認] をクリックします。その後、ノードプールリストに以下が表示されます。
初期化中 ステータスは、ノードプールが作成中であることを示します。
アクティブ ステータスは、作成が成功したことを示します。
ノードプールを変更する
ノードプールを作成した後、ACK コンソールでノードプールの設定を変更できます。たとえば、ノードプールが使用する課金方法、vSwitch、インスタンスの仕様、システムディスクを変更できます。また、ノードプールの自動スケーリングを有効または無効にすることもできます。変更可能なパラメータの詳細については、「ノードプールを作成する」をご参照ください。
ノードプールを変更しても、クラスタの他のノードプールにデプロイされているノードとアプリケーションには影響しません。
ほとんどのシナリオでは、ノードプールを変更した後、変更された設定は新しく追加されたノードにのみ適用されます。特定のシナリオ、たとえば [ECS タグ] または [ラベルとテイント] を更新する場合など、変更された設定はノードプール内の既存のノードにも適用されます。
スケーリングモード を変更する場合、次の点に注意してください。
[手動] から [自動] への切り替え: 自動スケーリングを有効にし、最小インスタンス数と最大インスタンス数を設定します。
[自動] から [手動] への切り替え: 自動スケーリングを無効にし、最小インスタンス数を 0 に、最大インスタンス数を 2000 に設定します。 [予期されるノード数] の値は、ノードプール内の現在のノード数に自動的に設定されます。
ノードプールの構成を更新した後、ノードプールに追加されるノードは、変更された構成を使用します。
ノードプール構成を変更するには、次の手順をご参照ください。他の方法でノードに変更を加えた場合、ノードプールが更新されるとこれらの変更は上書きされます。
[ノードプール] ページで、変更するノードプールを見つけ、[アクション] 列の [編集] をクリックします。
表示されるダイアログボックスで、画面上の指示に基づいてノードプールの設定を変更します。
[ノードプール] ページで、ノードプールの [ステータス] 列に [更新中] と表示されている場合、ノードプールは変更中です。ノードプールが更新されると、[ステータス] 列に [有効] と表示されます。
ノードプールの表示
ACK コンソールで、ノードプールの基本情報、モニタリングデータ、ノード情報、およびスケーリングイベントを表示できます。
管理するノードプールの名前をクリックすると、ノードプールの詳細ページで次の情報が表示されます。
[概要] タブをクリックすると、クラスタ情報、ノードプール情報、およびノード構成が表示されます。 クラスタで自動スケーリングが有効になっている場合は、自動スケーリング構成も表示できます。
[モニター] タブをクリックすると、Managed Service for Prometheus によって提供されるノードのモニタリング情報が表示されます。 モニタリング情報には、ノードプール内のリソースウォーターマーク(CPU 使用率、メモリ使用量、ディスク使用率、ノードごとの平均 CPU 使用率またはメモリ使用率など)が含まれます。
[ノード] タブをクリックすると、ノードプール内のノードのリストが表示されます。 ノードのドレイン、ノードのスケジューリング設定の構成、またはノードでの O&M 操作を実行できます。 ノードプールからノードを削除することもできます。 [エクスポート] をクリックすると、ノードの詳細をカンマ区切り値(CSV)ファイルにエクスポートできます。
[スケーリングアクティビティ] タブをクリックすると、ノードプールの最新のスケーリングイベントが表示されます。 各イベントレコードには、スケーリングアクティビティの説明と、スケーリングアクティビティの実行後の ECS インスタンスの数が表示されます。 スケーリングの失敗の理由も表示できます。 スケーリングの失敗に関する一般的なエラーコードの詳細については、「ノードプールを手動でスケーリングする」をご参照ください。
ノードプールの削除
ECS インスタンスのリリースルールは、インスタンスの課金方法によって異なります。ノードプールからノードを削除する場合は、次の表に示す操作を実行することをお勧めします。ノードプールを削除する前に、[予期されるノード数] パラメーターがノードプールに設定されているかどうかを確認します。このパラメーターは、ノードのリリースプロセスに影響を与える可能性があります。
ノードプール | リリースルール |
[予期されるノード数] パラメーターが設定されているノードプール |
|
[予期されるノード数] パラメーターが設定されていないノードプール |
|
オプション:管理するノードプールの名前をクリックします。[概要] タブで、[予期されるノード数] パラメーターが設定されているかどうかを確認できます。ハイフン(-)が表示されている場合、[予期されるノード数] パラメーターは設定されていません。
削除するノードプールを見つけ、[操作] 列で
> [削除] を選択します。 ダイアログボックスの情報を読んで確認し、[OK] をクリックします。
次のステップ
ノードプールが作成された後、以下の操作を実行できます。
アクション | 説明 | 参照 |
[ノードプールの同期] | ノード情報に異常がある場合は、ノードプールを同期できます。 | なし |
[詳細] | ノードプールの詳細を表示します。 | なし |
スケール | [手動] スケーリングと [自動] スケーリングがサポートされています。クラスター コストを削減するために、ビジネス要件とポリシーに基づいてコンピューティング リソースが自動的に調整されます。
| |
[編集] | ノードプールの構成を変更します。たとえば、vSwitch、マネージドノードプールの設定、課金方法、インスタンスの仕様を変更できます。また、ノードプールの自動スケーリングを有効または無効にすることもできます。 | |
[監視] | Managed Service for Prometheus によって提供されるノード監視情報を表示します。監視情報には、ノードプール内のリソース ウォーターマーク(CPU 使用率、メモリ使用率、ディスク使用率、ノードごとの平均 CPU またはメモリ使用率など)が含まれます。 | |
[既存のノードを追加] | 既存の ECS インスタンスをワーカーノードとしてクラスターに追加します。この操作を実行して、以前にクラスターから削除したワーカーノードを追加できます。この操作には、特定の制限と使用上の注意が適用されます。詳細については、ACK ドキュメントを参照してください。 | |
[ログインモード] | ノードのログオン タイプを構成します。キーペアまたはパスワードを指定できます。 | |
[マネージドノードプールの構成] | ノードプールに対してノードの O&M を自動化します。マネージドノードプール機能を有効にすると、ノードの修復、kubelet の更新、ランタイムの更新、OS の Common Vulnerabilities and Exposures (CVE) パッチ適用などの O&M タスクが自動的に実行されます。 | |
[複製] | 現在のノードプール構成に基づいて、予期されるノード数を含むノードプールを複製します。 | なし |
[削除] | ノードプールが使用されていない場合は、コストを節約するためにノードプールを削除します。ノードプール内のノードの解放ルールは、ノードの課金方法と、ノードプールに対して [予期されるノード数] パラメーターが構成されているかどうかによって異なります。 | |
[Kubelet 構成] | ノードプール内のすべてのノードの kubelet パラメーターをカスタマイズして、ノードの動作を管理します。たとえば、リソースの予約を変更してリソース使用量を調整する必要がある場合は、kubelet パラメーターをカスタマイズできます。ACK コンソールで使用できない kubelet パラメーターを CLI を使用してカスタマイズすることはお勧めしません。 | |
[Containerd 構成] | ノードプール内のすべてのノードの containerd パラメーターをカスタマイズします。例:
| |
[OS 構成] | ノードプール内のすべてのノードの OS パラメーターをカスタマイズして、OS パフォーマンスを向上させます。ACK コンソールで使用できない OS パラメーターを CLI を使用してカスタマイズすることはお勧めしません。 | |
[Kubelet 更新] | ノードプール内のすべてのノードの kubelet と containerd を更新します。 | |
[オペレーティングシステムの変更] | ノードプールのオペレーティングシステムを変更または更新します。 | なし |
[CVE パッチ適用 (OS)] | クラスターの安定性、セキュリティ、コンプライアンスを向上させるために、ノードプール内の CVE 脆弱性にバッチでパッチを適用します。ACK は、特定の脆弱性にパッチを適用するためにノードを再起動する必要がある場合があります。 CVE パッチ適用と CVE パッチ適用の使用上の注意の詳細については、ACK ドキュメントの関連トピックを参照してください。 | |
[ノードの修復] | マネージドノードプール内のノードで例外が発生した場合、ACK はノードを自動的に修復します。ただし、複雑なノードの例外を手動で修正する必要がある場合があります。ノードの状態のチェック項目とノードの例外の解決策の詳細については、ACK ドキュメントの関連トピックを参照してください。 |
マネージドノードプール 構成 の比較
構成 | 無効 | マネージドノードプール | 自動モード | |
ノードプール | インスタンスタイプ | 手動構成 | 手動構成 | 構成可能です。ACK は、インスタンスタイプについてインテリジェントな推奨事項を提供します。 |
課金方式 | 手動構成 | 手動構成 | 従量課金のみがサポートされています。 | |
OS | 手動構成 | 手動構成 | ContainerOS のみサポートされています。 | |
システムディスク | 手動構成 | 手動構成 | 推奨構成が自動的に適用されます。これは 20 GiB です。 | |
データディスク | 手動構成 | 手動構成 | 構成可能です。データディスクは、ContainerOS オペレーティングシステムの一時ストレージに使用されます。 | |
自動スケーリング | 手動構成ではオプション | 手動構成ではオプション | ノードインスタントスケーリング 機能はデフォルトで有効になっています。手動構成もサポートされています。 | |
ECS システムイベントへの自動応答 | サポートされていません | デフォルトで有効 | デフォルトで有効 | |
ノードの自動修復 | サポートされていません | 手動構成ではオプション | デフォルトで有効 | |
kubelet とランタイムバージョンの自動アップグレード | サポートされていません | 手動構成ではオプション | デフォルトで有効 | |
OS CVE 脆弱性自動修復 | サポートされていません | 手動構成ではオプション | デフォルトで有効 | |
ノードプールで自動モードを有効にすると、ワークロード要件に基づいてノードが動的にスケーリングされます。デフォルトの最大容量は 200 ノードです。ノードプールのスケーリング機能を使用して、インスタンスの最大数を変更できます。
ノードプールで自動モードを有効にすると、ACK は OS のアップグレード、ソフトウェアのアップグレード、脆弱性のパッチ適用などの運用保守の責任を引き継ぎます。これらの責任には、ソフトウェアバージョンのアップグレード、ソフトウェア構成の変更、再起動、ドレインエビクションなどのタスクが含まれます。自動モードポリシーとの競合を防ぐため、ノードプール内の ECS ノードで、ノードにログインして再起動、データディスクのマウント、構成の変更などの手動操作を実行することは避けてください。ワークロードに適切なレプリカ数を設定し、PreStop 安全停止戦略を実装し、PodDisruptionBudget ポリシーを確立して、ビジネスを中断することなくメンテナンスのためにノードをドレインできるようにすることをお勧めします。
ノードプールで自動モードを有効にすると、ACK は不変のルートファイルシステムを採用している ContainerOS オペレーティングシステムに基づいてノードのセキュリティを強化します。永続ストレージとして、ノードシステムパスストレージ(HostPath など)ではなく PVC を使用することをお勧めします。
ノードプールで自動モードを有効にした後、ARM、GPU、オンプレミスディスク、その他のインスタンスタイプはサポートされません。ACK には、ほとんどのシナリオでアプリケーションのニーズを満たすことができる推奨されるデフォルトのインスタンスタイプがあり、実際のビジネス要件に基づいてコンソールで調整できます。ノードプールの回復力を高め、スケーリングの失敗を回避するために、十分な数のインスタンスタイプを設定することをお勧めします。
自動モードは、Kubernetes クラスタに自動化されたインテリジェントな運用保守機能を提供することを目的としています。ただし、特定のシナリオでは、まだいくつかの義務を果たす必要があります。詳細については、「責任共有モデル」をご参照ください。
よくある質問
ECS インスタンスからカスタムイメージを作成し、そのイメージを使用してノードを作成するにはどうすればよいですか?
ECS インスタンスを作成した後、ソフトウェアのインストールやアプリケーション環境のデプロイなどの操作を実行して、インスタンスをカスタマイズできます。その後、インスタンスからカスタムイメージを作成できます。カスタムイメージから作成されたインスタンスには、カスタマイズされたすべての項目が含まれているため、新しいインスタンスごとにこれらの項目を構成する必要はありません。
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 systemctl stop kubelet systemctl disable kubelet rm -rf /etc/systemd/system/kubelet.service rm -rf /etc/systemd/system/kubelet.service.d/10-kubeadm.confECS インスタンスからカスタムイメージを作成します。手順と使用上の注意の詳細については、「インスタンスからカスタムイメージを作成する」をご参照ください。
ノードプールを作成します。ノードプールを作成するときは、オペレーティングシステム パラメーターで [カスタムイメージ] を選択します。このトピックで前述した説明に基づいて、他のパラメーターを構成します。
ACK クラスタでサポートされているオペレーティングシステムに基づいてカスタムイメージを作成します。詳細については、「OS イメージ」をご参照ください。
ACK クラスタ内の実行中の ECS インスタンスにカスタムイメージを構築しないでください。これを行うには、まずクラスタから ECS インスタンスを削除する必要があります。詳細については、「ノードを削除する」をご参照ください。
カスタムイメージの事前定義された動作ロジックは、クラスタノードの初期化、コンテナーの起動、ノードの更新、マネージドノードプール内のノードの自動回復などの操作に影響を与える可能性があります。本番環境で使用する前に、カスタムイメージがテストおよび検証されていることを確認してください。
参考文献
ノードが使用されなくなった場合は、ノードを削除できます。詳細については、「ノードを削除する」をご参照ください。
ACK は、Kubernetes コンポーネントとシステムプロセスを実行するために一定量のノードリソースを予約します。詳細については、「リソース予約ポリシー」をご参照ください。
クラスタのリソース容量がポッドスケジューリングの要件を満たせない場合は、ノードスケーリング を有効にできます。詳細については、「ノードスケーリング」をご参照ください。
ワーカーノード上のポッドの最大数は、ネットワークプラグインによって異なり、ほとんどの場合調整できません。クラスタ内のポッドの最大数を増やすには、クラスタ内のノードプールをスケールアウトするか、クラスタで使用されるインスタンスの仕様をスペックアップするか、ポッド CIDR ブロックをリセットできます。詳細については、「クラスタ内のポッドの最大数を増やす」をご参照ください。