クラスタワーカーノードの管理
    • PDF

    クラスタワーカーノードの管理

    • PDF

    Article Summary

    VPC環境で利用できます。

    クラスタ内のワーカーノードリストを確認し、各ワーカーノードを管理できます。Graceful Terminationが必要な場合、kubectlコマンドを使用してワーカーノードから Podを安全に退避できます。

    ワーカーノードリストの確認

    クラスタのワーカーノードリストを確認する方法は、次の通りです。

    1. NAVERクラウドプラットフォームコンソールの VPC環境で、 Services > Containers > Ncloud Kubernetes Service メニューを順にクリックします。
    2. クラスタリストで、個別クラスタの行をクリックします。
    3. クラスタ詳細情報タブで、ノードプール領域の下にある [ワーカーノードを見る] ボタンをクリックします。
      • クラスタ名をクリックすると、他のクラスタのノードリストを確認できます。
      • 正常なノードは、ノード状態が Ready と表示されます。Kubeletが動作しない、またはその他の理由で正常に動作しないノードは、ノードの状態が Not Ready と表示されます。
      • コンソールで Services > Containers > Ncloud Kubernetes Service > Nodes を順にクリックする方法でもこのリストを確認できます。

    ワーカーノードの詳細情報を見る

    クラスタ内の各ワーカーノードの詳細情報を確認するには、ワーカーノードリストから確認したいノードの名前をクリックします。

    Kubectlによるワーカーノードのメンテナンス

    安定的なサービス運用のために介入が必要な場合、Kubectlを使用してワーカーノードから Podを安全に退避することで、その Pod内のコンテナを Graceful Terminationの形で終了できます。

    ワーカーノード状態の確認

    ワーカーノードの状態を確認するには、以下のコマンドを実行してください。

    $ kubectl --kubeconfig $KUBE_CONFIG describe node $NODENAME
    

    以下は、正常な状態のノードの例です。

    "conditions": [
      {
        "type": "Ready",
        "status": "True",
        "reason": "KubeletReady",
        "message": "kubelet is posting ready status",
        "lastHeartbeatTime": "2019-06-05T18:38:35Z",
        "lastTransitionTime": "2019-06-05T11:41:27Z"
      }
    ]
    
    • ノードの状態は JSONオブジェクトで返されます。
    • ノードのコンディションのうち、status値が5分以上 Unknownまたは Falseで維持される場合、ノード上のすべての Podはノードコントローラーにより削除されるようにスケジュールされます。
      (NAVERクラウドプラットフォームの Ncloud Kubernetes Serviceでは、pod-eviction-timeoutが5分に指定されています)。

    ワーカーノードから Podを退避

    ノードに対するカーネルアップデートやインフラのメンテナンスなど様々なタスクを行う前に、kubectl drainコマンドを使用してノードから Podを安全に退避できます。安全に退避された Podのコンテナは Graceful Terminationの形で終了できます。

    注意

    ノード内の特定システムの Podは、kubectl drainコマンドで削除できません。
    削除できない Podに関する詳細内容は、kubectl drainをご参照ください。

    kubectl drainコマンドを用いてワーカーノードから Podを退避する方法は、次の通りです。

    1. 以下のコマンドを実行して Podを退避したいノードを確認します。
    $ kubectl --kubeconfig $KUBE_CONFIG get nodes
    
    1. 確認したノードのうち、Podを退避する対象のワーカーノードの名前を入力して以下のコマンドを実行します。
    $ kubectl --kubeconfig $KUBE_CONFIG drain $NODENAME
    
    1. クラスタのメンテナンスを行った後、以下のコマンドを使用してそのワーカーノードに Podが再度スケジューリングされるように設定します。
    $ kubectl --kubeconfig $KUBE_CONFIG uncordon $NODENAME
    

    この記事は役に立ちましたか?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.