概要
Kubernetesのnodeの構築手順です。
手順で特に指定がないものは、全てnodeサーバーで実行してください。
こちらの記事の続きです。
Kubernetesでクラスタ環境構築手順(1) - masterの作成
目次
node環境
- CentOS7.1
- Kubernetes v1.5.2
- flanneld 0.7.1
- Docker version 1.12.6, build 88a4867/1.12.6
host名の設定
Kubernetesは、node間通信で、マシンのホスト名を利用できるように、
/etc/hostsにIPアドレスとホスト名を登録します。
$ sudo vi /etc/hosts
192.168.33.11 node01
インストール
kubernetes, docker, flannelをインストールします。
$ sudo yum -y install kubernetes docker flannel
/etc/kubernetes/config
KUBE_MASTERにmasterのIPアドレスを設定します。
$ sudo vi /etc/kubernetes/config
KUBE_MASTER="--master=http://192.168.33.10:8080"
Kubeletの設定
KUBELET_ADDRESS
にはnodeのIPアドレス、
KUBELET_HOSTNAME
には、nodeの /etc/hosts
に設定したホスト名を、
KUBELET_API_SERVER
にはAPIサーバーのIPアドレス(今回はmasterと同居しているのでmasterのIPアドレス)
をそれぞれ設定してください。
$ sudo vi /etc/kubernetes/kubelet
# The address for the info server to serve on (set to 0.0.0.0 or "" for all interfaces)
KUBELET_ADDRESS="--address=192.168.33.11"
# You may leave this blank to use the actual hostname
KUBELET_HOSTNAME="--hostname-override=node01"
# location of the api-server
KUBELET_API_SERVER="--api-servers=http://192.168.33.10:8080"
flannelの設定
MasterとNodeの通信をするために、flannelの設定をします。
etcdをインストールしたサーバーのIPアドレスを指定します。今回の場合はmasterのIPアドレスになります。
$ sudo vi /etc/sysconfig/flanneld
FLANNEL_ETCD_ENDPOINTS="http://192.168.33.10:2379"
色々起動
設定を反映するために、色々起動します。
$ sudo systemctl start kubelet
$ sudo systemctl start flanneld
$ sudo systemctl start docker
$ sudo systemctl start kube-scheduler
$ sudo systemctl start kube-proxy
自動起動設定
$ sudo systemctl enable kubelet
$ sudo systemctl enable flanneld
$ sudo systemctl enable kube-scheduler
$ sudo systemctl enable kube-proxy
masterがnodeを認識している確認
こちらはmasterサーバーで実行してください。
node01が認識されていることを確認できればOKです。
$ kubectl get nodes
NAME STATUS AGE
master Ready 1h
node01 Ready 5m
nodeを複数作成する場合は、以上の手順をnodeの数だけ繰り返してください。