(2)Kubernetes kubeadm部署k8s集群

                 **kubeadm介绍**
kubeadm是Kubernetes项目自带的及集群构建工具,负责执行构建一个最小化的可用集群以及将其启动等的必要基本步骤, 
kubeadm是Kubernetes集群全生命周期的管理工具,可用于实现集群的部署、升级、降级及拆除。kubeadm部署Kubernetes集 
群是将大部分资源以pod的方式运行,例如(kube-proxy、kube-controller-manager、kube-scheduler、kube- 
apiserver、 flannel)都是以pod方式运行。

Kubeadm仅关心如何初始化并启动集群,余下的其他操作,例如安装Kubernetes Dashboard、监控系统、日志系统等必要的附 
加组件则不在其考虑范围之内,需要管理员自行部署。

Kubeadm集成了Kubeadm init和kubeadm join等工具程序,其中kubeadm init用于集群的快速初始化,其核心功能是部署 
Master节点的各个组件,而kubeadm join则用于将节点快速加入到指定集群中,它们是创建Kubernetes集群最佳实践的“快速 
路径”。另外,kubeadm token可于集群构建后管理用于加入集群时使用的认证令牌(token),而kubeadm reset命令的功能则 
是删除集群构建过程中生成的文件以重置回初始状态。

   **Kubeadm部署Kubernetes集群**

1591186563(1).jpg

1591186614(1).jpg

说明:下面初始化环境工作master节点和node节点都需要执行

1)关闭防火墙

# systemctl stop firewalld
# systemctl disable firewalld
2)关闭selinux

# sed -i 's/enforcing/disabled/' /etc/selinux/config
# setenforce 0
3)如需要关闭swap,(由于服务器本来配置就低,这里就不关闭swap,在后面部署过程中忽略swap报错即可)

# swapoff -a  #临时
# vim /etc/fstab    #永久
4)时间同步

# ntpdate 0.rhel.pool.ntp.org
5)host绑定

# vim /etc/hosts
192.168.1.31    k8s-master
192.168.1.32    k8s-node1
192.168.1.33    k8s-node2

6)安装ipvsadm
 modprobe ip_vs
 modprobe ip_vs_rr
 modprobe ip_vs_wrr
 modprobe ip_vs_sh
在所有的Kubernetes节点上执行以下脚本:

cat > /etc/sysconfig/modules/ipvs.modules <<EOF
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | 
 grep -e ip_vs -e nf_conntrack_ipv4

参考:https://www.cnblogs.com/yanjieli/p/11793073.html

我来吐槽

*

*