5.5. ノードを正常に再起動する


Windows Machine Config Operator (WMCO) は、可能な限りノードの再起動を最小限に抑えます。しかし、特定の操作および更新を行う際には、変更が正しくセキュアに適用されるように、再起動を実行する必要があります。Windows ノードを安全に再起動するには、グレースフル再起動プロセスを使用します。標準の OpenShift Container Platform ノードのグレースフル再起動を実行する方法は、「ノード」ドキュメントの「ノードのグレースフル再起動」を参照してください。

ノードを再起動する前に、ノードでのデータ損失を回避するために、etcd データをバックアップすることを推奨します。

注記

シングルノード OpenShift クラスターの場合、クラスターを管理するために kubeconfig ファイルに証明書を含めるのではなく、ユーザーが oc login コマンドを実行する必要があります。そのため、ノードをスケジューリング対象から除外してドレインした後、oc adm コマンドが使用できなくなる可能性があります。これは、スケジューリング対象から除外する操作が原因で、openshift-oauth-apiserver Pod が実行されなくなるためです。以下の手順で示したように、SSH を使用してノードにアクセスできます。

シングルノード OpenShift クラスターでは、スケジューリング対象からの除外時およびドレイン時に Pod を再スケジューリングすることはできません。しかし、そうすることで、Pod、特にワークロード Pod が適切に停止し、関連するリソースを解放する時間を得ることができます。

手順

ノードのグレースフル再起動を実行するには、次の手順を実行します。

  1. ノードをスケジューリング対象外としてマークします。

    $ oc adm cordon <node1>
    Copy to Clipboard
  2. ノードをドレインして、実行中のすべての Pod を削除します。

    $ oc adm drain <node1> --ignore-daemonsets --delete-emptydir-data --force
    Copy to Clipboard

    カスタムの Pod Disruption Budget (PDB) に関連する Pod を削除できないというエラーが表示される場合があります。

    エラーの例

    error when evicting pods/"rails-postgresql-example-1-72v2w" -n "rails" (will retry after 5s): Cannot evict pod as it would violate the pod's disruption budget.
    Copy to Clipboard

    この場合、drain コマンドを再度実行し、disable-eviction フラグを追加し、PDB チェックを省略します。

    $ oc adm drain <node1> --ignore-daemonsets --delete-emptydir-data --force --disable-eviction
    Copy to Clipboard
  3. Windows ノードに SSH で接続し、次のコマンドを実行して PowerShell に入ります。

    C:\> powershell
    Copy to Clipboard
  4. 次のコマンドを実行してノードを再起動します。

    C:\>  Restart-Computer -Force
    Copy to Clipboard
  5. Amazon Web Services (AWS) 上の Windows ノードは、EC2 インスタンスのメタデータルートと Host Network Service (HNS) ネットワークとの不整合が原因で、グレースフル再起動後に READY 状態に戻りません。

    再起動後、AWS 上の任意の Windows ノードに SSH で接続し、シェルプロンプトで次のコマンドを実行してルートを追加します。

    C:\> route add 169.254.169.254 mask 255.255.255.0 <gateway_ip>
    Copy to Clipboard

    ここでは、以下のようになります。

    169.254.169.254
    EC2 インスタンスメタデータエンドポイントのアドレスを指定します。
    255.255.255.255
    EC2 インスタンスメタデータエンドポイントのネットワークマスクを指定します。
    <gateway_ip>

    Windows インスタンス内のゲートウェイに対応する IP アドレスを指定します。これは、次のコマンドを実行して見つけることができます。

    C:\> ipconfig | findstr /C:"Default Gateway"
    Copy to Clipboard
  6. 再起動が完了したら、以下のコマンドを実行して、ノードをスケジューリング可能な状態にします。

    $ oc adm uncordon <node1>
    Copy to Clipboard
  7. ノードの準備ができていることを確認します。

    $ oc get node <node1>
    Copy to Clipboard

    出力例

    NAME    STATUS  ROLES    AGE     VERSION
    <node1> Ready   worker   6d22h   v1.18.3+b0068a8
    Copy to Clipboard

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat