3.2. クラスターの再起動
クラスターの正常なシャットダウン後にクラスターを再起動できます。
前提条件
-
cluster-adminロールを持つユーザーとしてクラスターにアクセスできる。 - この手順では、クラスターを正常にシャットダウンしていることを前提としています。
手順
コントロールプレーンノードをオンにします。
クラスターインストール時の
admin.kubeconfigを使用しており、API 仮想 IP アドレス (VIP) が稼働している場合は、次の手順を実行します。-
KUBECONFIG環境変数をadmin.kubeconfigパスに設定します。 クラスター内の各コントロールプレーンノードに対して次のコマンドを実行します。
$ oc adm uncordon <node>
-
admin.kubeconfigの認証情報にアクセスできない場合は、次の手順を実行します。- SSH を使用してコントロールプレーンノードに接続します。
-
localhost-recovery.kubeconfigファイルを/rootディレクトリーにコピーします。 そのファイルを使用して、クラスター内の各コントロールプレーンノードに対して次のコマンドを実行します。
$ oc adm uncordon <node>
- 外部ストレージや LDAP サーバーなどのクラスターの依存関係すべてをオンにします。
すべてのクラスターマシンを起動します。
クラウドプロバイダーの Web コンソールなどでマシンを起動するには、ご使用のクラウド環境に適した方法を使用します。
約 10 分程度待機してから、コントロールプレーンノードのステータス確認に進みます。
すべてのコントロールプレーンノードが準備状態にあることを確認します。
$ oc get nodes -l node-role.kubernetes.io/master以下の出力に示されているように、コントロールプレーンノードはステータスが
Readyの場合、準備状態にあります。NAME STATUS ROLES AGE VERSION ip-10-0-168-251.ec2.internal Ready master 75m v1.27.3 ip-10-0-170-223.ec2.internal Ready master 75m v1.27.3 ip-10-0-211-16.ec2.internal Ready master 75m v1.27.3コントロールプレーンノードが準備状態に ない 場合、承認する必要がある保留中の証明書署名要求 (CSR) があるかどうかを確認します。
現在の CSR の一覧を取得します。
$ oc get csrCSR の詳細をレビューし、これが有効であることを確認します。
$ oc describe csr <csr_name>1 - 1
<csr_name>は、現行の CSR のリストからの CSR の名前です。
それぞれの有効な CSR を承認します。
$ oc adm certificate approve <csr_name>
コントロールプレーンノードが準備状態になった後に、すべてのワーカーノードが準備状態にあることを確認します。
$ oc get nodes -l node-role.kubernetes.io/worker以下の出力に示されているように、ワーカーノードのステータスが
Readyの場合、ワーカーノードは準備状態にあります。NAME STATUS ROLES AGE VERSION ip-10-0-179-95.ec2.internal Ready worker 64m v1.27.3 ip-10-0-182-134.ec2.internal Ready worker 64m v1.27.3 ip-10-0-250-100.ec2.internal Ready worker 64m v1.27.3ワーカーノードが準備状態に ない 場合、承認する必要がある保留中の証明書署名要求 (CSR) があるかどうかを確認します。
現在の CSR の一覧を取得します。
$ oc get csrCSR の詳細をレビューし、これが有効であることを確認します。
$ oc describe csr <csr_name>1 - 1
<csr_name>は、現行の CSR のリストからの CSR の名前です。
それぞれの有効な CSR を承認します。
$ oc adm certificate approve <csr_name>
コントロールプレーンとコンピュートノードの準備ができたら、次のコマンドを実行して、クラスター内のすべてのノードをスケジュール可能としてマークします。
$ for node in $(oc get nodes -o jsonpath='{.items[*].metadata.name}'); do echo ${node} ; oc adm uncordon ${node} ; doneクラスターが適切に起動していることを確認します。
パフォーマンスが低下したクラスター Operator がないことを確認します。
$ oc get clusteroperatorsDEGRADED条件がTrueに設定されているクラスター Operator がないことを確認します。NAME VERSION AVAILABLE PROGRESSING DEGRADED SINCE authentication 4.14.0 True False False 59m cloud-credential 4.14.0 True False False 85m cluster-autoscaler 4.14.0 True False False 73m config-operator 4.14.0 True False False 73m console 4.14.0 True False False 62m csi-snapshot-controller 4.14.0 True False False 66m dns 4.14.0 True False False 76m etcd 4.14.0 True False False 76m ...すべてのノードが
Ready状態にあることを確認します。$ oc get nodesすべてのノードのステータスが
Readyであることを確認します。NAME STATUS ROLES AGE VERSION ip-10-0-168-251.ec2.internal Ready master 82m v1.27.3 ip-10-0-170-223.ec2.internal Ready master 82m v1.27.3 ip-10-0-179-95.ec2.internal Ready worker 70m v1.27.3 ip-10-0-182-134.ec2.internal Ready worker 70m v1.27.3 ip-10-0-211-16.ec2.internal Ready master 82m v1.27.3 ip-10-0-250-100.ec2.internal Ready worker 69m v1.27.3クラスターが適切に起動しなかった場合、etcd バックアップを使用してクラスターを復元する必要がある場合があります。