6.2. ノードの使用


管理者は、複数のタスクを実行して、クラスターを効率化できます。

6.2.1. Pod のノードからの退避

特定のノードから Pod を削除 (退避) することができます。Pod の退避機能を使用すると、すべての Pod または選択した Pod を他のノードに移行できます。

レプリケーションコントローラーによってバックアップされている Pod のみを退避させることができます。レプリケーションコントローラーは、他のノードに新しい Pod を作成し、指定されたノードから既存の Pod を削除します。

ベア Pod、つまりレプリケーションコントローラーが管理していない Pod はデフォルトで影響を受けません。Pod セレクターを指定することで、一部の Pod を退避させることができます。Pod セレクターはラベルに基づいて動作するため、指定されたラベルを持つすべての Pod が空にされます。

手順

  1. Pod の退避を実行する前に、ノードをスケジュール不可としてマークしてください。

    1. 次のコマンドを実行して、ノードをスケジュール対象外としてマークします。

      $ oc adm cordon <node1>

      出力例

      node/<node1> cordoned

    2. 次のコマンドを実行して、ノードの状態が 準備完了、スケジューリング無効 になっていることを確認してください。

      $ oc get node <node1>

      出力例

      NAME        STATUS                     ROLES     AGE       VERSION
      <node1>     Ready,SchedulingDisabled   worker    1d        v1.29.4

  2. 以下のいずれかの方法を使用して、Pod から避難してください。

    • oc adm drain コマンドを実行して、1 つまたは複数のノード上のすべての Pod または選択した Pod を退避させます。

      $ oc adm drain <node1> <node2> [--pod-selector=<pod_selector>]
    • oc adm drain コマンドに --force オプションを使用することで、ベア Pod の削除を強制できます。true に設定すると、レプリケーションコントローラー、レプリカセット、ジョブ、デーモンセット、またはステートフルセットによって管理されていない Pod が存在する場合でも、削除が続行されます。

      $ oc adm drain <node1> <node2> --force=true
    • oc adm drain コマンドで --grace-period オプションを使用することで、各 Pod が正常に終了するまでの時間を秒単位で設定できます。負の値の場合には、Pod に指定されるデフォルト値が使用されます。

      $ oc adm drain <node1> <node2> --grace-period=-1
    • oc adm drain コマンドで --ignore-daemonsets=true オプションを使用すると、デーモンセットによって管理されている Pod を無視できます。

      $ oc adm drain <node1> <node2> --ignore-daemonsets=true
    • oc adm drain コマンドの --timeout オプションを使用して、処理を諦めるまでの待機時間を設定します。値が 0 の場合は、無限の時間を表します。

      $ oc adm drain <node1> <node2> --timeout=5s
    • oc adm drain コマンドで --delete-emptydir-data=true オプションを設定することで、emptyDir ボリュームを使用している Pod が存在する場合でも Pod を削除できます。ノードがドレインされると、ローカルデータは削除されます。

      $ oc adm drain <node1> <node2> --delete-emptydir-data=true
    • oc adm drain コマンドで --dry-run=true オプションを使用することで、実際に避難処理を実行せずに移行されるオブジェクトをリスト表示します。

      $ oc adm drain <node1> <node2>  --dry-run=true

      特定のノード名 (例: <node1> <node2>) を指定する代わりに、oc adm drain コマンドで --selector=<node_selector> オプションを使用すると、選択したノード上の Pod を退避させることができます。

  3. 完了したら、以下のコマンドを使用してノードをスケジュール可能としてマークしてください。

    $ oc adm uncordon <node1>
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る