k8s安装
k8s集群master节点的安装
安装etcd
- yum install etcd -y
- /etc/etcd/etcd.conf --核心配置文件
安装master节点
- yum install kubernetes-master.x86_64 -y
- /etc/kubernetes/apiserver --master核心配置文件
- /etc/kubernetes/config --master核心配置文件
启动master节点服务
- systemctl start kube-apiserver.service
- systemctl start kubu-controller-manager.service
- systemctl start kube-scheduler.service
master节点服务设置开机自启动
- systemctl enable kube-apiserver.service
- systemctl enable kubu-controller-manager.service
- systemctl enable kube-scheduler.service
k8s集群node节点的安装
安装node节点
- yum install kubernetes-node.x86_64 -y
- /etc/kubernetes/config --master核心配置文件
- /etc/kubernetes/kubelet --node核心配置文件
启动node节点服务
- systemctl start kubelet.service
- systemctl start kube-proxy.service
- 注:kubelet启动的时候会顺便把docker服务启动起来
node节点服务设置开机自启动
- systemctl enable kubelet.service
- systemctl enable kube-proxy.service
所有node节点配置flannel网络插件
node节点安装flannel
- yum install flannel -y
- /etc/sysconfig/flanneld --核心配置文件
- etcdctl set /atomic.io/network/config '{"Network":"172.16.0.0/16"}' --master节点etcd创建key
启动flanneld
- systemctl start flanneld.service
- systemctl enable flanneld.service
- ifconfig --检查网络信息
- systemctl restart docker --重启docker,让flanneld生效
测试跨宿主机容器之间的互通性
- 所有节点执行 docker run -it busybox,可以上传镜像包,然后docker load -i 镜像包名 加载镜像
- 所有节点ifconfig
- 节点之间互ping
容器间ping不通解决办法
vim /usr/lib/systemd/system/docker.service
ExecStartPost=/usr/sbin/iptables -P FORWARD ACCEPT
systemctl daemon-reload