场景
k8s集群部署的工具
需要多少台物理服务器
物理服务器硬件配置有哪些
每台服务器部署什么组件
部署之后怎么测试集群可用性
二进制源码包进行部署
获取源码包
部署在各个节点
启动服务 Master Worker
生成证书 http/https
使用kubeadam部署
推荐使用
安装软件,kubelet kubeadm kubectl
初始化集群
添加node到集群
证书自动生成
使用kubeadam部署
使用kubeadam部署单Master节点k8s集群。当然,生产环境时多Master节点的。
同步时间
安装
yum -y install ntpdate
配置
crontab -e 进行编辑
0 */1 * * * ntpdate time1.aliyun.com
永久关闭swap分区
kubernetes的想法是将实例紧密包装到尽可能接近100%。 所有的部署应该与CPU /内存限制固定在一起。 所以如果调度程序发送一个pod到一台机器,它不应该使用交换。 设计者不想交换,因为它会减慢速度。
所以关闭swap主要是为了性能考虑。
vi /etc/fstab
把分区给注释一下。
然后
free -m 应该是没有swap分区了
对比截图
添加网桥过滤
vi /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
vm.swappiness = 0
加载桥的过滤模块
modprobe br_netfilter
验证
lsmod | grep br_netfilter
加载网桥过滤配置文件
sysctl -p /etc/sysctl.d/k8s.conf
开启ipvs
yum -y install ipset ipvsadm
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
安装指定的docker-ce
k8s不能直接的管理容器。
systemctl enable docker 开机启动
systemctl start docker 启动docker
包含了服务器版本