14.2.6. CLI を使用してベアメタルホストの電源を切る
OpenShift CLI (oc) を使用してクラスターにパッチを適用することで、ベアメタルクラスターホストの電源をオフにすることができます。ホストの電源を切る前に、ノードをスケジュール不可としてマークし、ノードからすべての Pod とワークロードをドレインしてください。
前提条件
- クラスターで使用するために、ベアメタルインフラストラクチャーに RHCOS コンピュートマシンをインストールしている。
-
cluster-admin権限を持つユーザーとしてログインしている。 -
管理対象ホストを設定し、クラスターホストに Baseboard 管理コンソールの認証情報を追加しました。BMC 認証情報を追加するには、クラスターで
Secretカスタムリソース (CR) を適用するか、Web コンソールにログインして管理対象となるようにベアメタルホストを設定します。
手順
管理対象のベアメタルホストの名前を取得するには、次のコマンドを入力します。
$ oc get baremetalhosts -n openshift-machine-api -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.status.provisioning.state}{"\n"}{end}'出力例
master-0.example.com managed master-1.example.com managed master-2.example.com managed worker-0.example.com managed worker-1.example.com managed worker-2.example.com managed以下のコマンドを入力して、ノードをスケジュール不可としてマークします。
$ oc adm cordon <bare_metal_host>-
<bare_metal_host>: シャットダウンするホストの名前を指定します。たとえば、worker-2.example.com。
-
以下のコマンドを入力して、ノード上のすべての Pod をドレインします。
$ oc adm drain <bare_metal_host> --force=trueレプリケーションコントローラーでサポートされる Pod は、クラスター内の他の利用可能なノードに再スケジュールされます。
以下のコマンドを入力して、ベアメタルホストを安全に電源オフします。
$ oc patch <bare_metal_host> --type json -p '[{"op": "replace", "path": "/spec/online", "value": false}]'ホストの電源を入れた後、次のコマンドを入力して、ノードをワークロードのスケジュール対象にします。
$ oc adm uncordon <bare_metal_host>