Kubernetes Docker集群搭建过程
2017-01-18 16:09
756 查看
一、环境准备
两台设备,IP分别为95.211(作为Master)和95.217。两台设备的操作系统都是Centos7.3。
二、K8s获取
如果设备还在“墙内”的话,请不用使用通过源码编译的方式;因为肯定不会成功。可以直接下载Release版本(https://github.com/kubernetes/kubernetes/releases)。
三、安装etcd和flannel
在安装K8s之前必需要先安装etcd和flannel。
Etcd的下载地址:https://github.com/coreos/etcd/releases/
Flannel的下载地址:https://github.com/coreos/flannel/releases
下载成功后分别解压,然后将程序加入到系统路径:
cp etcd etcdctl/usr/bin/
cpflanneld mk-docker-opts.sh /usr/bin
在95.211上运行如下命令:
nohup etcd -nameinfra0 -initial-advertise-peer-urls http://172.20.95.211:2380 -listen-peer-urlshttp://172.20.95.211:2380 -listen-client-urlshttp://172.20.95.211:2379,http://127.0.0.1:2379
-advertise-client-urlshttp://172.20.95.211:2379 -discoveryhttps://discovery.etcd.io/8ce4b3c7db5cb5c899ea2bbcad019d24 --data-dir /opt/logs/ >> /opt/logs/etcd.log &
在95.217上运行如下命令:
nohupetcd -name infra1 -initial-advertise-peer-urls http://172.20.95.217:2380-listen-peer-urls http://172.20.95.217:2380 -listen-client-urlshttp://172.20.95.217:2379,http://127.0.0.1:2379
-advertise-client-urlshttp://172.20.95.217:2379 -discoveryhttps://discovery.etcd.io/8ce4b3c7db5cb5c899ea2bbcad019d24 --data-dir/opt/logs/ >> /opt/logs/etcd.log&
这里有两个要点。
1.两台设备的“-name”值不同。
2. -discovery参数后的一串随机数是通过访问“https://discovery.etcd.io/new?size=2“得来的。而且“size=2”表示集群内有2台设备。
正常的话,etcd就启动成功了,如果有错,请看日志文件。
然后在211上执行
etcdctlset /coreos.com/network/config '{ "Network":"172.17.0.0/16" }'
然后在两台设备上都运行:
flanneld>> /opt/logs/flanneld.log &
mk-docker-opts.sh-i
source/run/flannel/subnet.env
rm/var/run/docker.pid
servicedocker restart //然后重启docker
四、安装K8s
1. 解压
2. 进入kubernetes/server目录(cd kubernetes/server);
3. 解压kubernetes-server-linux-amd64(tarzxvf kubernetes-server-linux-amd64.tar.gz);
4. 将目录kubernetes/server/bin/加入到PATH之中。或者装用到的二进制程序复制到/usr/bin目录下。
5. 依次在211上运行下面的命令:
kube-apiserver--address=0.0.0.0 --insecure-port=8080--service-cluster-ip-range='172.20.95.211/24'--log_dir=/usr/local/kubernete_test/logs/kube --kubelet_port=10250 --v=0--logtostderr=false
--etcd_servers=http://172.20.95.211:2379--allow_privileged=false
kube-controller-manager --v=0 --logtostderr=false--log_dir=/opt/logs/kube --master=172.20.95.211:8080
kube-scheduler --master='172.20.95.211:8080' --v=0 --log_dir=/opt/logs/kube
kube-proxy--logtostderr=false --v=0 --master=http://172.20.95.211:8080
kubelet--logtostderr=false --v=0 --allow-privileged=false --address=0.0.0.0 --port=10250--hostname_override=172.20.95.211 --api_servers=http://172.20.95.211:8080
如此一来,Master节点就算运行起来了。
可以通过“kubectl get componentstatuses”命令来查看运行状态。
6. 在217上运行如下命令
kube-proxy--logtostderr=false --v=0 --master=http://172.20.95.211:8080
kubelet--logtostderr=false --v=0 --allow-privileged=false --address=0.0.0.0 --port=10250 --hostname_override=172.20.95.217 --api_servers=http://172.20.95.211:8080
如此一来,集群他建完毕。
可以通过“kubectl getnodes”命令来查看。
参考文章: http://www.linuxidc.com/Linux/2016-01/127784.htm http://www.linuxidc.com/Linux/2015-12/125770.htm http://www.linuxidc.com/Linux/2015-12/125735.htm
两台设备,IP分别为95.211(作为Master)和95.217。两台设备的操作系统都是Centos7.3。
二、K8s获取
如果设备还在“墙内”的话,请不用使用通过源码编译的方式;因为肯定不会成功。可以直接下载Release版本(https://github.com/kubernetes/kubernetes/releases)。
三、安装etcd和flannel
在安装K8s之前必需要先安装etcd和flannel。
Etcd的下载地址:https://github.com/coreos/etcd/releases/
Flannel的下载地址:https://github.com/coreos/flannel/releases
下载成功后分别解压,然后将程序加入到系统路径:
cp etcd etcdctl/usr/bin/
cpflanneld mk-docker-opts.sh /usr/bin
在95.211上运行如下命令:
nohup etcd -nameinfra0 -initial-advertise-peer-urls http://172.20.95.211:2380 -listen-peer-urlshttp://172.20.95.211:2380 -listen-client-urlshttp://172.20.95.211:2379,http://127.0.0.1:2379
-advertise-client-urlshttp://172.20.95.211:2379 -discoveryhttps://discovery.etcd.io/8ce4b3c7db5cb5c899ea2bbcad019d24 --data-dir /opt/logs/ >> /opt/logs/etcd.log &
在95.217上运行如下命令:
nohupetcd -name infra1 -initial-advertise-peer-urls http://172.20.95.217:2380-listen-peer-urls http://172.20.95.217:2380 -listen-client-urlshttp://172.20.95.217:2379,http://127.0.0.1:2379
-advertise-client-urlshttp://172.20.95.217:2379 -discoveryhttps://discovery.etcd.io/8ce4b3c7db5cb5c899ea2bbcad019d24 --data-dir/opt/logs/ >> /opt/logs/etcd.log&
这里有两个要点。
1.两台设备的“-name”值不同。
2. -discovery参数后的一串随机数是通过访问“https://discovery.etcd.io/new?size=2“得来的。而且“size=2”表示集群内有2台设备。
正常的话,etcd就启动成功了,如果有错,请看日志文件。
然后在211上执行
etcdctlset /coreos.com/network/config '{ "Network":"172.17.0.0/16" }'
然后在两台设备上都运行:
flanneld>> /opt/logs/flanneld.log &
mk-docker-opts.sh-i
source/run/flannel/subnet.env
rm/var/run/docker.pid
servicedocker restart //然后重启docker
四、安装K8s
1. 解压
2. 进入kubernetes/server目录(cd kubernetes/server);
3. 解压kubernetes-server-linux-amd64(tarzxvf kubernetes-server-linux-amd64.tar.gz);
4. 将目录kubernetes/server/bin/加入到PATH之中。或者装用到的二进制程序复制到/usr/bin目录下。
5. 依次在211上运行下面的命令:
kube-apiserver--address=0.0.0.0 --insecure-port=8080--service-cluster-ip-range='172.20.95.211/24'--log_dir=/usr/local/kubernete_test/logs/kube --kubelet_port=10250 --v=0--logtostderr=false
--etcd_servers=http://172.20.95.211:2379--allow_privileged=false
kube-controller-manager --v=0 --logtostderr=false--log_dir=/opt/logs/kube --master=172.20.95.211:8080
kube-scheduler --master='172.20.95.211:8080' --v=0 --log_dir=/opt/logs/kube
kube-proxy--logtostderr=false --v=0 --master=http://172.20.95.211:8080
kubelet--logtostderr=false --v=0 --allow-privileged=false --address=0.0.0.0 --port=10250--hostname_override=172.20.95.211 --api_servers=http://172.20.95.211:8080
如此一来,Master节点就算运行起来了。
可以通过“kubectl get componentstatuses”命令来查看运行状态。
6. 在217上运行如下命令
kube-proxy--logtostderr=false --v=0 --master=http://172.20.95.211:8080
kubelet--logtostderr=false --v=0 --allow-privileged=false --address=0.0.0.0 --port=10250 --hostname_override=172.20.95.217 --api_servers=http://172.20.95.211:8080
如此一来,集群他建完毕。
可以通过“kubectl getnodes”命令来查看。
参考文章: http://www.linuxidc.com/Linux/2016-01/127784.htm http://www.linuxidc.com/Linux/2015-12/125770.htm http://www.linuxidc.com/Linux/2015-12/125735.htm
相关文章推荐
- [Kubernetes]Kubernetes集群和Docker私有库搭建(CentOS 7)
- Docker Kubernetes1.5.2集群环境搭建(CentOS)
- docker集群管理工具kubernetes初步搭建
- Kubernetes管理Docker集群之路(3.搭建私有仓库)
- Kubernetes集群搭建过程中遇到的问题
- kubernetes工作记录(1)——kubernetes1.7.4版集群的离线安装搭建过程记录
- Kubernetes--学习笔记-4-Kubernetes 集群搭建过程中常用命令
- 基于Kubernetes的Docker集群搭建过程详解(原创)
- 基于Mesos+Marathon+Zookeeper的Docker集群管理环境搭建过程分享
- Kubernetes集群搭建过程中遇到的问题
- Hadoop2.2.0集群搭建过程
- Mongodb集群搭建过程及常见错误
- Hadoop2.2.0安装配置手册!完全分布式Hadoop集群搭建过程
- 复制虚拟机vmware centos搭建集群节点过程中网络配置eth0和eth1遇到的问题以及NAT模式下虚拟机静态IP配置方法
- Hadoop2.2.0安装配置手册!完全分布式Hadoop集群搭建过程~(心血之作啊~~)
- docker搭建linux集群,搭建mpi环境,并使用MTT benchmark测试集群性能
- hadoop集群搭建过程中所遇问题总结
- Hadoop2.2.0 HA + Jdk1.8.0 + Zookeeper3.4.5 + Hbase0.98 集群搭建详细过程(服务器集群)
- 最近在研究postgresql的主从集群。记录一下搭建过程
- Hadoop2.2.0安装配置手册!完全分布式Hadoop集群搭建过程~(心血之作啊~~)