R-Car/k8s-draft
Heading text
3.1. k8sクラスタ構成手順
HAProxy用1台、master node 用 2台、worker node 用 2台 をそれぞれ設定し、k8sクラスタを構成する手順を説明する。 事前にすべてのR-Carを起動し、同一ネットワークに接続しておく。 (本手順は環境にもよるが20~30分以上かかる。)
HAProxy設定
R-Car (HAProxy) の設定手順を説明する。本手順はR-Car (HAProxy)上で実施する。
/etc/haproxy/haproxy.cfg を開いて、最後尾に以下の設定を追記する。 master1, master2 のIPアドレスは環境に合わせて変更する。
・・・ #--------------------------------------------------------------------- # main frontend which proxys to the backends #--------------------------------------------------------------------- frontend kubernetes bind *:6443 option tcplog mode tcp default_backend kubernetes-master-nodes #--------------------------------------------------------------------- # round robin balancing between the various backends #--------------------------------------------------------------------- backend kubernetes-master-nodes mode tcp balance roundrobin option tcp-check server master1 192.168.179.48:6443 check server master2 192.168.179.49:6443 check
HAProxy を起動する
systemctl start haproxy
master1設定
WARNING!
デフォルトではブロックデバイス上(/var/lib/etcd) にデータストアが作成されるが、データストアへアクセス時のタイムアウトエラーが多く発生して動作が安定しない。本手順では、アクセス速度を速くするために、データストアの場所をRAM上に変更する(tmpfsでマウントする)。kubeadm の --config オプションを使ってデータストアのパス変更もできるが、--config オプションは他のオプションと併用できない為、今回は上記の方法を取る。
R-Car (master1) の設定手順を説明する。本手順はR-Car (master1)上で実施する。
Kubernetes のデータストア(etcd)をRAM上にマウントする。
mount -t tmpfs tmpfs /var/lib/etcd