生产环境不要使用一主多从,要使用多主多从。这里使用三台主机进行测试一台 Master(172.16.20.111),两台 Node(172.16.20.112 和 172.16.20.113)
CentOS7 安装完成之后,设置固定 ip,三台主机做相同设置
vi /etc/sysconfig/network-scripts/ifcfg-ens33
#在最下面ONBOOT改为yes,新增固定地址IPADDR,172.16.20.111,172.16.20.112,172.16.20.113
ONBOOT=yes
IPADDR=172.16.20.111
三台主机 ip 分别设置好之后,修改 hosts 文件,设置主机名
#master 机器上执行
hostnamectl set-hostname master
#node1 机器上执行
hostnamectl set-hostname node1
#node2 机器上执行
hostnamectl set-hostname node2
vi /etc/hosts
172.16.20.111 master
172.16.20.112 node1
172.16.20.113 node2
开启 chronyd 服务
systemctl start chronyd
设置开机启动
systemctl enable chronyd
测试
date
systemctl stop firewalld
systemctl disable firewalld
systemctl stop iptables
systemctl disable iptables
vi /etc/selinux/config
SELINUX=disabled
注释掉 /dev/mapper/centos-swap swap
vi /etc/fstab
# 注释掉
# /dev/mapper/centos-swap swap
vi /etc/sysctl.d/kubernetes.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
#重新加载配置
sysctl -p
#加载网桥过滤模块
modprobe br_netfilter
#查看网桥过滤模块
lsmod | grep br_netfilter
安装 ipset 和 ipvsadm
yum install ipset ipvsadm -y
添加需要加载的模块(整个执行)
cat < /etc/sysconfig/modules/ipvs.modules
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
添加执行权限
chmod +x /etc/sysconfig/modules/ipvs.modules
执行脚本
/bin/bash /etc/sysconfig/modules/ipvs.modules
查看是否加载成功
lsmod | grep -e -ip_vs -e nf_conntrack_ipv4
以上完成设置之后,一定要执行重启使配置生效
reboot
这里只是使用三台服务器举例说明,集群环境中肯定不止三台服务器,如果有多台服务器,那么依次按照以上步骤设置即可。