Docker
kubernetes

Kubernetesでクラスタ環境構築手順(2) - nodeの作成

More than 1 year has passed since last update.


概要

Kubernetesのnodeの構築手順です。

手順で特に指定がないものは、全てnodeサーバーで実行してください。

こちらの記事の続きです。

Kubernetesでクラスタ環境構築手順(1) - masterの作成


目次


  1. Kubernetesでクラスタ環境構築手順(1) - masterの作成

  2. Kubernetesでクラスタ環境構築手順(2) - nodeの作成


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


/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


/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


/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


/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の数だけ繰り返してください。


参考