多节点Kubernetes安装
环境:两台机器,一台既是master也是minion,还有一台minion。系统:ubuntu 14.04 LTS前期准备:docker(1.10.2), etcd(2.3.0), flannel(0.5.5).一、安装Docker参见官方文档:Docker安装(ubuntu)注意:一定要在每台机子上都事先安装Docker,否则安装启动Kubectl的时候会出现
环境:两台机器,一台既是master也是minion,还有一台minion。
系统:ubuntu 14.04 LTS
前期准备:docker(1.10.2), etcd(2.3.0), flannel(0.5.5).
一、安装Docker
参见官方文档:Docker安装(ubuntu)
注意:一定要在每台机子上都事先安装Docker,否则安装启动Kubelet的时候会出现问题。
二、安装etcd
下载地址:https://github.com/coreos/etcd/releases
1.把tar包下下来,解压,然后把etcd和etcdctl复制到usr/bin目录下
#cp etcd etcdctl /usr/bin
#etcd &
三、安装flannel
1.下载tar包:https://github.com/coreos/flannel/releases
把flanneld文件复制到/usr/bin目录下
2.启动flannel server
把k8s的server当做flannel的server,向etcd注册flannel服务
#curl -L http://127.0.0.1:4001/v2/keys/coreos.com/network/config -XPUT -d value='{ "Network": "10.100.0.0/16"}‘
启动flannel server,端口为1234
# flanneld –listen=0.0.0.0:1234 &
把k8s的minions当做client
# flanneld –remote=master_ip:1234 &
注:master_ip为你的k8s的master的实际ip,也是flannel server的ip。
4.配置docker0的网络配置
minion的网络如下:
flannel0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.100.70.0 P-t-P:10.100.70.0 Mask:255.255.0.0
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1472 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
然后根据上边的参数,修改master的docker0配置:
# ifconfig docker0 10.100.70.1 netmask 255.255.255.0 mtu 1472
重启docker,完成配置。
四、安装kubernetes
1.在master节点上下载tar包,并解压:https://github.com/kubernetes/kubernetes/releases
然后进入解压出来的kubernetes/server目录中,解压kubernetes-server-linux-amd64.tar.gz这个包
#cd kubernetes/server
#tar xzvf kubernetes-server-linux-amd64.tar.gz
将kube-apiserver,kube-controller-manager,kubectl,kubelet,kube-scheduler复制到/usr/bin目录
3.启动k8s的master服务
# kube-apiserver --etcd-servers=http://127.0.0.1:2379 --insecure-bind-address=0.0.0.0 --insecure-port=8080 --logtostderr=true --service-cluster-ip-range=<u>10.100.70.0</u>/24 --v=2 &
# kube-controller-manager --logtostderr=true --master=http://127.0.0.1:8080 --v=2 &
# kube-scheduler --master=http://127.0.0.1:8080 --v=2 &
注:下划线的ip要根据docker0中的ip段进行设置。
4.启动k8s的minions上的服务(只以一台举例,其他只需更改个别参数)
首先需要将kubernetes的tar包同样下载到每台minion上,将/kubernetes/server/kubernetes/server/bin中的kubelet和kubectl复制到/usr/bin目录下。
然后启动服务:
# kubelet --address=0.0.0.0 --port=10250 --hostname_override=your_hostname1 --enable_server=true --v=0 --api-servers=http://master_ip:8080
# kubelet --address=0.0.0.0 --port=10250 --hostname_override=your_hostname2 --enable_server=true --v=0 --api-servers=http://master_ip:8080
# kubelet --address=0.0.0.0 --port=10250 --hostname_override=your_hostname3 --enable_server=true --v=0 --api-servers=http://master_ip:8080
5.查看进程
master上:
root 16476 0.4 0.5 104992 85112 ? Sl Mar07 5:13 kube-apiserver --etcd-servers=http://127.0.0.1:2379 --insecure-bind-address=0.0.0.0 --insecure-port=8080 --logtostderr=true --service-cluster-ip-range=10.100.70.0/24 --v=2
root 16484 0.2 0.1 36260 18416 ? Sl Mar07 3:10 kube-controller-manager --logtostderr=true --master=http://127.0.0.1:8080 --v=2
root 16598 0.0 0.0 18568 10772 ? Sl Mar07 0:15 kube-scheduler --master=http://127.0.0.1:8080 --v=2
root 16888 0.7 0.2 880676 39244 ? Sl Mar07 8:56 kubelet --address=0.0.0.0 --port=10250 --hostname_override=umq2 --enable_server=true --v=0 --api-servers=http://x.x.x.x:8080
root 18717 0.0 0.0 11740 928 pts/5 S+ 13:27 0:00 grep --color=auto kube
minions上:
root 2859 0.7 0.2 750700 39064 ? Sl Mar07 9:14 kubelet --address=0.0.0.0 --port=10250 --hostname_override=umq3 --enable_server=true --v=0 --api-servers=http://x.x.x.x:8080
root 4527 0.0 0.0 11744 916 pts/2 R+ 13:27 0:00 grep --color=auto kube
安装完成,测试使用再另写一篇吧。
更多推荐
所有评论(0)