Red Hat OpenShift の問題のトラブルシューティング
このトラブルシューティング情報を使用して、Red Hat® OpenShift® の問題の診断や修正を行ってください。
RHEL サブスクリプション
サブスクリプションに問題が発生した場合は、次のコマンドを使用して照会を実行することができます。
subscription-manager list --available --all
ロード・バランサー
ロード・バランシングが機能していることを確認するには、bastion ノードから次のコマンドを使用します。 結果として一連のヘッダー全体が得られれば、ロード・バランシングは正常に行われています。
wget --no-check-certificate https://api.ocp.dallas.ibm.local:6443
Red Hat CoreOS
SSHでノードに接続する必要はありませんが、必要であれば、バスターノード経由で接続できます。 次の例では、次のコマンドを使用してブートストラップ・サーバーに接続します。
ssh core@192.168.133.9
エラーが発生した場合は、指紋の検査を無効にする以下のコマンドを試してみてください。
ssh -o StrictHostKeyChecking=no core@192.168.133.9
この例では、ログを表示し、読み取り可能にするためにパーミッションを変更するために、バスターノードからコントロールプレーンノードに接続する方法を示しています。 ディレクトリー名は異なる場合があります。
ssh -i /root/.ssh/id_rsa core@192.168.133.12
sudo su
chmod 777 /var/log/pods/b2810e842791d83d48a4684295b7cd01/etcd-member/0.log
この例は、ログを bastionノードにダウンロードしてからジャンプ・サーバーまたはリモート・デバイスにダウンロードすることによって、ログを読み取り可能にして解析できるようにする方法を示しています。 ディレクトリー名は異なる場合があります。
scp -i /root/.ssh/id_rsa core@192.168.133.10:/var/log/pods/b2810e842791d83d48a4684295b7cd01/etcd-member/0.log 0.log
Red Hat OpenShift
ノードとその状況のリストを取得します。
oc get nodes
kubectl を使用する場合は、優先して使用される kubeconfig ファイルは次の順序で決まります。
--kubeconfig
フラグを使用する (指定した場合)。- KUBECONFIG 環境変数を使用する (指定した場合)。
$HOME/.kube/config
ファイルを使用する。
Red Hat OpenShift インストーラーによって作成された kubeconfig を環境変数にエクスポートするには、以下のコマンドを使用してください。
export KUBECONFIG=/opt/ocpinstall/auth/kubeconfig
デプロイメントの削除
Terraform デプロイメントに問題が発生した場合は、次のコマンドを使用してデプロイメントを削除できます。
terraform destroy
場合によっては、自動化の終了時に Terraform で問題が発生することがあります。 そのような場合は、vCenter を使用し、Terraform 状態ファイルを削除して、手動でデプロイメントを削除する必要があります。
- vCenter で、
ocp
フォルダーとそのコンテンツを削除します。 ocp
リソース・グループを削除します。rm /opt/ocpinstall/installer/upi/vsphere/terraform.tfstate
Terraform 状態ファイルを削除します。
これらの手順を実行した後、デプロイメントの問題を解決して、Red Hat OpenShift プラットフォームを再デプロイすることができます。
新しい Ignition ファイルの生成
Ignition ファイルは 24 時間有効です。 以下の手順を実行して、.ign
ファイルを生成できます。
-
以下のように、古い状態ファイル、構成ファイル、
ign
ファイルを削除します。cd /opt/ocpinstall rm -R .openshift_install.log .openshift_install_state.json auth *.ign metadata.json
-
以下のように Red Hat OpenShift の
install-config
のバックアップを yaml にコピーします。cp install-config.bak install-config.yaml openshift-install create ignition-configs --dir=/opt/ocpinstall/
-
bootstrap.ign を nginx ホーム・フォルダーにコピーします。
cp bootstrap.ign /usr/share/nginx/html
-
terraform.tfvars
のプライマリセクションcat master.ign
とワーカーセクションcat worker.ign
を置き換えます。nano /opt/ocpinstall/installer/upi/vsphere/terraform.tfvars
:// Ignition config for the control plane machines. You should copy the contents of the master.ign generated by$ control_plane_ignition = <<END_OF_MASTER_IGNITION <replace with new master.ign> END_OF_MASTER_IGNITION // Ignition config for the compute machines. You should copy the contents of the worker.ign generated by the i$ compute_ignition = <<END_OF_WORKER_IGNITION <replace with new worker.ign> END_OF_WORKER_IGNITION
Red Hat OpenShift のスナップショットの作成
開発中またはテスト中に、Red Hat OpenShift クラスター VM をいったん停止してから再開することができます。 スナップショットを取る前に、以下の点を考慮する必要があります。
Red Hat OpenShift 4.x クラスターのインストール時に、コントロール・プレーン・ノードで使用するブートストラップ証明書が作成され、kubelet クライアント証明書の証明書署名要求 (CSR) が作成されます (ノードまたは kubelet ごとに 1 つ)。 どのノードでも、この証明書を使用して各 kubelet を識別します。 この証明書は取り消しができないので、クラスターのインストールから 24 時間後という短い有効期限が設定されます。 コントロール・プレーン・ノード以外のすべてのノードには、取り消し可能なサービス・アカウント・トークンがあります。 ブートストラップ証明書が有効なのは、クラスターのインストール後 24 時間に限られます。 最初の 24 時間が経過すると、証明書の有効期限は 30 日ごとに切れます。
コントロール・プレーンにある最初の kubelet の有効期限は 24 時間で、その後に再作成されます。 デプロイメントの直後にスナップショットを取る場合、コントロール・プレーンの kubelet にはまだ 30 日間のクライアント証明書がありません。 その後、紛失したkubeletクライアント証明書の更新ウィンドウにより、クラスターが使用できなくなります。クラスターがバックアップ状態にある場合、ブートストラップ認証情報を使用できないためです。 実際には、インストール後 25 時間以上 Red Hat OpenShift 4 クラスターが実行されていないと、このプロセスをシャットダウンできません。
デプロイメント後に bastion ホストで次のコマンドを実行して、証明書の有効期間を確認できます。
ssh -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no core@192.168.133.10 -- sudo openssl x509 -text -noout -in /var/lib/kubelet/pki/kubelet-client-current.pem
次のコマンドを実行して、出力の証明書の存続期間を確認します。
Warning: Identity file id_rsa_crc not accessible: No such file or directory.
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
6a:73:78:19:f3:1e:8f:0c:a9:51:b8:53:f4:eb:29:8d:49:fa:7e:fd
Signature Algorithm: sha256WithRSAEncryption
Issuer: CN = kube-csr-signer_@1573016574
Validity
Not Before: Nov 6 08:22:00 2019 GMT
Not After : Dec 6 04:57:43 2019 GMT
インストール後のクラスターのシャットダウンに関する詳細は 、「 Red Hat OpenShift 4クラスターのクラスターVMの停止と再開の有効化 」を参照してください。
最初の24時間証明書の更新後、クラスタのスナップショットは、次の30日間の任意の時点で再開できるようになります。 30 日が経過すると、証明書の有効期間によってクラスター・スナップショットが使用できなくなります。