6.2.5. クラスターからのノードの削除
OpenShift Container Platform クラスターからノードを削除するには、該当する MachineSet オブジェクトをスケールダウンします。
クラスターがクラウドプロバイダーと統合されている場合、ノードを削除するには対応するマシンを削除する必要があります。このタスクに oc delete node コマンドは使用しないでください。
CLI を使用してノードを削除する場合、ノードオブジェクトは Kubernetes で削除されますが、ノード自体にある Pod は削除されません。レプリケーションコントローラーで管理されていないベア Pod は、OpenShift Container Platform からアクセスできなくなります。レプリケーションコントローラーで管理されるベア Pod は、他の利用可能なノードに再スケジュールされます。ローカルのマニフェスト Pod は削除する必要があります。
ベアメタルでクラスターを実行している場合、MachineSet オブジェクトを編集してノードを削除することはできません。コンピュートマシンセットは、クラスターがクラウドプロバイダーに統合されている場合にのみ利用できます。代わりに、ノードを手作業で削除する前に、ノードをスケジュール解除し、drain (Pod の退避) を実行する必要があります。
手順
次のコマンドを実行して、クラスター内のコンピュートマシンセットを表示します。
$ oc get machinesets -n openshift-machine-apiコンピュートマシンセットは、
<cluster-id>-worker-<aws-region-az>の形式で一覧表示されます。次のいずれかの方法で、コンピュートマシンセットをスケールダウンします。
次のコマンドを実行して、スケールダウンするレプリカの数を指定します。
$ oc scale --replicas=2 machineset <machine-set-name> -n openshift-machine-api次のコマンドを実行して、コンピュートマシンセットのカスタムリソースを編集します。
$ oc edit machineset <machine-set-name> -n openshift-machine-api出力例
apiVersion: machine.openshift.io/v1beta1 kind: MachineSet metadata: # ... name: <machine-set-name> namespace: openshift-machine-api # ... spec: replicas: 2 # ...各項目の説明:
spec.replicas- スケールダウンするレプリカの数を指定します。