6.6.7. 新しい etcd メンバーの追加
新しい etcd メンバーをクラスターに追加して、新しいコントロールプレーンノードの追加を完了します。
手順
単一の bash シェルセッションで次の手順を実行して、新しい etcd メンバーをクラスターに追加します。
次のコマンドを実行して、新しいコントロールプレーンノードの IP を見つけます。
$ oc get nodes -owide -l node-role.kubernetes.io/control-plane後で使用するために、ノードの IP アドレスをメモしておきます。
次のコマンドを実行して、etcd Pod をリスト表示します。
$ oc get -n openshift-etcd pods -l k8s-app=etcd -o wide次のコマンドを実行して、実行中の etcd Pod の 1 つに接続します。新しいノード上の etcd Pod は
CrashLoopBackOff状態になっている必要があります。$ oc rsh -n openshift-etcd <running_pod><running_pod>は、前の手順で示された実行中の Pod の名前に置き換えます。次のコマンドを実行して、etcd メンバーのリストを表示します。
sh-4.2# etcdctl member list -w table次のコマンドを実行して、新しいコントロールプレーン etcd メンバーを追加します。
sh-4.2# etcdctl member add <new_node> --peer-urls="https://<ip_address>:2380"各項目の説明:
<new_node>- 新しいコントロールプレーンノードの名前を指定します
<ip_address>- 新しいノードの IP アドレスを指定します。
次のコマンドを実行して rsh シェルを終了します。
sh-4.2# exit
次のコマンドを実行して、etcd の再デプロイメントを強制します。
$ oc patch etcd cluster -p='{"spec": {"forceRedeploymentReason": "single-master-recovery-'"$( date --rfc-3339=ns )"'"}}' --type=merge次のコマンドを実行して、etcd クォーラムガードを再度オンにします。
$ oc patch etcd/cluster --type=merge -p '{"spec": {"unsupportedConfigOverrides": null}}'次のコマンドを実行して、クラスター Operator のロールアウトを監視します。
$ watch oc get co