Kubernetes クラスター上の ECS インスタンスの再起動またはリリースを行う前に、クラスターから ECS ノードを削除する必要があります。 このトピックでは、Kubernetes クラスターからノードを削除する方法を説明します。

始める前に

このタスクについて

  • ノードの削除によりポッドの移行が発生します。 これにより、ノード上で実行中のポッドにより提供されているサービスが影響を受けることがあります。 そのため、必要なサービスが最小限のときのみに、ノードの削除を行うことを推奨します。
  • ノードの削除により想定外のリスクが起こる可能性があります。 まずお使いのデータをバックアップし、この操作の実行中は想定外のリスクの発生に注意することを推奨します。
  • ワーカーノードのみ削除することができます。

手順

  1. 以下のコマンドを実行し、対象となるノード上のポッドを他のノードへ移行します:
    Kubernetes クラスターの他のノードが、移行したいポッドを実行するのに十分なリソースを持っていることを確認してください。
    kubectl drain node-name
    パラメーター node-nameyour-region-name.node-id の形式である必要があります。
    • your-region-name はクラスターのあるリージョン名です。
    • node-id は削除されるノードのある ECS インスタンスの ID です。 例として、cn-hanghzou.i-xxx となります。
  2. 削除するノードを、スケジューリングされていないノードとして設定します。

    方法 1: コマンドを使う

    • 以下のコマンドを実行し、削除するノードをスケジューリングされていないノードとして設定します:
      kubectl cordon node-name

    方法 2: Container Service コンソールを使う

    詳しくは、ノードのスケジューリングの設定をご参照ください。

  3. Kubernetes で、左側のナビゲーションウィンドウから [クラスター] > [ノード] をクリックします。
  4. 対象のクラスターから、対象となるノードを選択し、アクション列から [その他] > [削除] をクリックします。
    同時に複数のノードを削除する場合、ノードリストページの対象となるクラスターを選択し、削除するすべてノードを選択した後、[削除] をクリックします。
  5. オプション: [ECS を同時にリリース] チェックボックスをオンにすると、ノードのある ECS インスタンスを完全にリリースします。
    • 従量課金 ECS インスタンスのみリリースされます。
    • サブスクリプション ECS インスタンスは、サブスクリプションの期限切れ後に自動的にリリースされます。
    • [ECS を同時にリリース] チェックボックスをオフにした場合、ノードのある ECS インスタンスに対する課金は継続します。
  6. [OK] をクリックします。