12.6. 正常なクラスターへのプライマリーコントロールプレーンノードのインストール
この手順では、プライマリーコントロールプレーンノードを正常な OpenShift Container Platform クラスターにインストールする方法について説明します。
クラスターが正常でない場合、管理する前に追加の操作が必要になります。詳細は 、関連情報 を参照してください。
前提条件
手順
CSR の確認して承認します。
CertificateSigningRequests
(CSR) を確認します。oc get csr | grep Pending
$ oc get csr | grep Pending
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
csr-5sd59 8m19s kubernetes.io/kube-apiserver-client-kubelet system:serviceaccount:openshift-machine-config-operator:node-bootstrapper <none> Pending csr-xzqts 10s kubernetes.io/kubelet-serving system:node:worker-6 <none> Pending
csr-5sd59 8m19s kubernetes.io/kube-apiserver-client-kubelet system:serviceaccount:openshift-machine-config-operator:node-bootstrapper <none> Pending csr-xzqts 10s kubernetes.io/kubelet-serving system:node:worker-6 <none> Pending
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 保留中の 全 CSR を承認します。
oc get csr -o go-template='{{range .items}}{{if not .status}}{{.metadata.name}}{{"\n"}}{{end}}{{end}}' | xargs --no-run-if-empty oc adm certificate approve
$ oc get csr -o go-template='{{range .items}}{{if not .status}}{{.metadata.name}}{{"\n"}}{{end}}{{end}}' | xargs --no-run-if-empty oc adm certificate approve
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要インストールを完了するには、CSR を承認する必要があります。
プライマリーノードが
Ready
ステータスであることを確認します。oc get nodes
$ oc get nodes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記機能する Machine API を使用してクラスターを実行する場合、
etcd-operator
に、新しいノードを参照するMachine
カスタムリソース (CR) が必要です。Machine
CR をBareMetalHost
およびNode
にリンクします。一意の
.metadata.name
の値を使用してBareMetalHost
CR を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <filename>
$ oc create -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow BareMetalHost
CR を適用します。oc apply -f <filename>
$ oc apply -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 一意の
.machine.name
値を使用してMachine
CR を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <filename>
$ oc create -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Machine
CR を適用します。oc apply -f <filename>
$ oc apply -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow link-machine-and-node.sh
スクリプトを使用して、BareMetalHost
、Machine
、およびNode
をリンクします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow bash link-machine-and-node.sh custom-master3 worker-5
$ bash link-machine-and-node.sh custom-master3 worker-5
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
etcd
メンバーを確認します。oc rsh -n openshift-etcd etcd-worker-2
$ oc rsh -n openshift-etcd etcd-worker-2 etcdctl member list -w table
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow etcd-operator
設定がすべてのノードに適用されていることを確認します。oc get clusteroperator etcd
$ oc get clusteroperator etcd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME VERSION AVAILABLE PROGRESSING DEGRADED SINCE MESSAGE etcd 4.11.5 True False False 5h54m
NAME VERSION AVAILABLE PROGRESSING DEGRADED SINCE MESSAGE etcd 4.11.5 True False False 5h54m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow etcd-operator
の正常性を確認します。oc rsh -n openshift-etcd etcd-worker-0
$ oc rsh -n openshift-etcd etcd-worker-0 etcdctl endpoint health
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
192.168.111.26 is healthy: committed proposal: took = 11.297561ms 192.168.111.25 is healthy: committed proposal: took = 13.892416ms 192.168.111.28 is healthy: committed proposal: took = 11.870755ms
192.168.111.26 is healthy: committed proposal: took = 11.297561ms 192.168.111.25 is healthy: committed proposal: took = 13.892416ms 192.168.111.28 is healthy: committed proposal: took = 11.870755ms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ノードの正常性を確認します。
oc get Nodes
$ oc get Nodes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ClusterOperators
の正常性を確認します。oc get ClusterOperators
$ oc get ClusterOperators
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ClusterVersion
を確認します。oc get ClusterVersion
$ oc get ClusterVersion
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.11.5 True False 5h57m Cluster version is 4.11.5
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.11.5 True False 5h57m Cluster version is 4.11.5
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 古いコントロールプレーンノードを削除します。
BareMetalHost
CR を削除します。oc delete bmh -n openshift-machine-api custom-master3
$ oc delete bmh -n openshift-machine-api custom-master3
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Machine
が正常でないことを確認します。oc get machine -A
$ oc get machine -A
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Machine
CR を削除します。oc delete machine -n openshift-machine-api test-day2-1-6qv96-master-0
$ oc delete machine -n openshift-machine-api test-day2-1-6qv96-master-0 machine.machine.openshift.io "test-day2-1-6qv96-master-0" deleted
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Node
CR の削除を確認します。oc get nodes
$ oc get nodes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
etcd-operator
ログをチェックして、etcd
クラスターのステータスを確認します。oc logs -n openshift-etcd-operator etcd-operator-8668df65d-lvpjf
$ oc logs -n openshift-etcd-operator etcd-operator-8668df65d-lvpjf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
E0927 07:53:10.597523 1 base_controller.go:272] ClusterMemberRemovalController reconciliation failed: cannot remove member: 192.168.111.23 because it is reported as healthy but it doesn't have a machine nor a node resource
E0927 07:53:10.597523 1 base_controller.go:272] ClusterMemberRemovalController reconciliation failed: cannot remove member: 192.168.111.23 because it is reported as healthy but it doesn't have a machine nor a node resource
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 物理マシンを削除して、
etcd-operator
がクラスターメンバーを調整できるようにします。oc rsh -n openshift-etcd etcd-worker-2
$ oc rsh -n openshift-etcd etcd-worker-2 etcdctl member list -w table; etcdctl endpoint health
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow