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

Container Service for Kubernetes:クラスターまたはノードプールからのノードの削除

最終更新日:Jun 19, 2026

ワーカーノードをノードプールまたは ACK クラスターから削除し、オプションで Pod をドレインしてインスタンスをリリースします。

ユースケース

  • [ECS インスタンスの置換]:既存の Elastic Compute Service (ECS) インスタンスをノードプールから削除し、新しいインスタンスを追加します。

  • ノードプール間でのノードの移動:現在のノードプールからノードを削除し、ターゲットのノードプールに追加します。

  • インスタンス設定または課金方法の変更:ノードを削除し、ECS コンソールで変更を加え、ノードをノードプールに再追加します。

  • ノードの異常の修正:ノードを削除して再追加することで、再初期化をトリガーします。この操作はシステムディスクを交換してノードをリセットするため、事前にシステムディスクのデータをバックアップしてください。

  • フリーノードの管理:ノードプール機能がリリースされる前に作成されたクラスターには、フリーノードが含まれている場合があります。これらを削除するか、ノードプールに移動して一元管理します。

  • スケールイン対象の制御:手動または自動スケールアウトが有効になっているノードプールをスケールインする際に、特定の ECS インスタンスを削除してコストを削減します。

前提条件

以下の点を確認してください。

  • クラスター内の他のノードに、退去する Pod をホストするための十分なリソースがあること。

  • Pod アフィニティルールとスケジューリングポリシーが、他のノードへの再スケジューリングを許可していること。

仕組み

ACK コンソールでノードを削除すると、システムは以下の処理を順に実行します。

  1. ドレイン ([ノードのドレイン] が選択されている場合) :ACK は、PodDisruptionBudget (PDB) の設定に従って、他の利用可能なノードに Pod を退去させます。Pod のグレースフルシャットダウン期間は、terminationGracePeriodSeconds に関係なく、最大 30 分です。この期間内に Pod が終了しない場合、ドレインは失敗し、後続のステップはスキップされるため、手動で再試行する必要があります。

  2. 削除:ノードがクラスターまたはノードプールから削除されます。

  3. リリース ([ECS インスタンスのリリース] が選択されている場合) :ECS インスタンスとアタッチされたデータディスクがリリースされます。

[期待されるノード数] が設定されている場合、ノードプールは削除後に期待される数を維持するために自動的にスケールアウトします。

注意事項

  • ノードは ACK コンソールから削除してください。 kubectl delete node 、ECS コンソール、Auto Scaling コンソール、または API を使用して ECS インスタンスを削除またはリリースしないでください。

  • サブスクリプションの ECS インスタンスは、有効期限が切れる前に更新してください。有効期限が切れたり、リリースされたりしたインスタンスは、ノードが停止し、ACK コンソールから削除される原因となります。

  • [期待されるノード数] が設定されている場合、ノードプールは削除後に期待される数を維持するために自動的にスケールアウトします。システムディスクとデータディスクのライフサイクルはノードに紐づいています。削除時にノードがリリースされると、アタッチされたディスクもリリースされ、すべてのデータは完全に削除され、復旧できません。ノードのライフサイクルを超えてデータを永続化するには、PersistentVolume (PV) を使用してください。

ノードプールからのノードの削除

重要

ノードを削除すると、Pod が他のノードに移行するため、一時的にサービスが中断される可能性があります。ノードのデータをバックアップし、オフピーク時に削除を実行してください。

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

  2. [クラスター] ページで、対象のクラスターをクリックします。左側メニューで、 [ノード] > [ノードプール] を選択します。

  3. ノードを含むノードプールの名前をクリックします。 [ノード] タブで、削除するノードを選択し、ページ下部の [一括削除] をクリックします。

  4. 削除オプションを設定します。

    • [ノードのドレイン]:ACK は削除前に Pod を他のノードに退去させます。すでにノードをドレインした場合にのみ、このチェックボックスをオフにしてください。

      Pod のグレースフルシャットダウン期間が 30 分を超える場合は、まず手動でノードをドレインし、次に [ノードのドレイン] のチェックボックスをオフにしてから続行してください。

      kubectl drain <nodeName> [options]

      プレースホルダー

      説明

      <nodeName>

      ノード名 (<region-id>.<instance-id> 形式)

      cn-hangzhou.i-bp1asavedmte377c3****

      [options]

      オプションのドレインフラグ

      --force --ignore-daemonsets --delete-local-data

      すべてのオプションを確認するには、 kubectl drain --help を実行してください。

    • [ECS インスタンスのリリース]:選択した場合、ECS インスタンスとアタッチされたデータディスクがリリースされます。この方法でリリースできるのは、従量課金のインスタンスのみです。選択しない場合、インスタンスは削除後も課金され続けます。サブスクリプションのインスタンスは、有効期限が切れると自動的にリリースされます。Auto Mode が有効なノードプールでは、システムが自動的にノードのライフサイクルを管理し、ワークロードの需要に基づいてノードをスケーリングし、ノードが削除されると基盤の ECS リソースも完全に削除されます。サブスクリプションのインスタンスを有効期限前にリリースするには、返金をリクエストするか、課金方法を従量課金に変更してからリリースしてください。

  5. 画面の指示に従って、削除を完了します。

  6. ノードが削除されたことを確認します。

    kubectl get nodes

    削除されたノードは出力に表示されなくなります。

クラスターからのノードの削除

重要

ノードを削除すると、Pod が他のノードに移行するため、一時的にサービスが中断される可能性があります。ノードのデータをバックアップし、オフピーク時に削除を実行してください。

  1. ACK コンソールにログインします。左側メニューで [クラスター] をクリックします。

  2. [クラスター] ページで、対象のクラスターをクリックします。左側メニューで、 [ノード] > [ノード] を選択します。

  3. 削除するノードを選択し、ページ下部の [一括削除] をクリックします。

  4. 削除オプションを設定します。

    • [ノードのドレイン]:ACK は削除前に Pod を他のノードに退去させます。すでにノードをドレインした場合にのみ、このチェックボックスをオフにしてください。

      Pod のグレースフルシャットダウン期間が 30 分を超える場合は、まず手動でノードをドレインし、次に [ノードのドレイン] のチェックボックスをオフにしてから続行してください。

      kubectl drain <nodeName> [options]

      プレースホルダー

      説明

      <nodeName>

      ノード名 (<region-id>.<instance-id> 形式)

      cn-hangzhou.i-bp1asavedmte377c3****

      [options]

      オプションのドレインフラグ

      --force --ignore-daemonsets --delete-local-data

      すべてのオプションを確認するには、 kubectl drain --help を実行してください。

    • [ECS インスタンスのリリース]:選択した場合、ECS インスタンスとアタッチされたデータディスクがリリースされます。この方法でリリースできるのは、従量課金のインスタンスのみです。選択しない場合、インスタンスは削除後も課金され続けます。サブスクリプションのインスタンスは、有効期限が切れると自動的にリリースされます。サブスクリプションのインスタンスを有効期限前にリリースするには、返金をリクエストするか、課金方法を従量課金に変更してからリリースしてください。

  5. 画面の指示に従って、削除を完了します。

  6. ノードが削除されたことを確認します。

    kubectl get nodes

    削除されたノードは出力に表示されなくなります。

削除後、ノードをクラスターに再追加できます。

トラブルシューティング

ノード削除の失敗

ノードの削除は、通常、Pod が 30 分のグレースフルシャットダウン期間を超えた場合、または PodDisruptionBudget (PDB) が退去をブロックした場合に失敗します。

ノードを手動でドレインし、[ノードのドレイン] のチェックボックスをオフにしてから削除してください。

kubectl drain <nodeName> --force --ignore-daemonsets --delete-local-data

<nodeName><region-id>.<instance-id> 形式のノード名 (例: cn-hangzhou.i-bp1asavedmte377c3****) に置き換えます。

PDB がドレインをブロックする場合は、中断の許容範囲に合わせて PDB の設定を更新してから、再試行してください。

次のステップ