k8s高可用集群搭建-前置条件2

上文讲述了机器及基本配置, 本文讲述机器的初始化。 整体步骤于网络整理, 并于多次搭建成功后整理脚本, 博文中均为拆解脚本。

1.初始机器安装必要软件

echo "------------------------------ 安装必要软件 install ------------------------------"
yum install -y wget vim net-tools epel-release

2. 关闭防火墙

echo "------------------------------ 关闭防火墙 stop frewalld ------------------------------"
systemctl disable firewalld
systemctl stop firewalld

3. 关闭selinux

echo "------------------------------ 关闭selinux ------------------------------"
setenforce 0
sed -i 's/SELINUX=permissive/SELINUX=disabled/' /etc/sysconfig/selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config

4. 禁用交换分区

echo "------------------------------ 禁用交换分区 ------------------------------"
swapoff -a
sed -i 's/.*swap.*/#&/' /etc/fstab
echo "vm.swappiness = 0">> /etc/sysctl.conf

sysctl -p

5. 禁用ipv6,配置内核参数,将桥接的IPv4流量传递到iptables的链

cat <<EOF >  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward=1
EOF

sysctl --system
sysctl -p /etc/sysctl.d/k8s.conf
modprobe br_netfilter

6. 加载模块

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

7. 修改权限

echo "-----------------------  修改权限-------------------------------"
chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4

8. 查看是否已经正确加载所需的内核模块

echo "-----------------------  查看是否已经正确加载所需的内核模块 -------------------------------"
lsmod | grep -e ip_vs -e nf_conntrack_ipv4
yum install ipset ipvsadm -y

9. 配置国内yum源

yum install -y wget
rm -rf  /etc/yum.repos.d/bak
mkdir /etc/yum.repos.d/bak && mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo
yum clean all && yum makecache && yum update -y && yum install vim tree -y

  1. 安装docker
    registry-mirrors 镜像地址, 可自行于阿里注册使用docker镜像加速
    exec-opts: native.cgroupdriver=cgroupfs/systemd
    作者前几次安装均为systemd 后续出现K8Smaster启动失败问题, 查证问题后修改为cgroupfs。
    并于后续新创建虚拟机搭建使用cgroupfs无错误。 集群搭建中遇到问题较多, 请具体问题具体分析并查证
echo "-----------------------安装docker-------------------------------"
sudo mkdir -p /etc/docker

cat > /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": ["https://n37ptxkx.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=cgroupfs"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "data-root": "/docker/"
}
EOF

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install -y docker-ce

systemctl enable docker
systemctl start docker

11. 设置iptables模式

echo "- 设置iptables模式 ------------"
iptables -P FORWARD ACCEPT

12. 同步时间

同步时间, 如果有内部自己的时间服务请用自己时间服务

echo "- 自己开发, 时间同步外部网络时间 ------------"
yum install ntpdate -y
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate ntp1.aliyun.com 

13. 机器基本初始化结束

1) 请查看docker是否正常启动

systemctl status docker

2)查看时间是否一致, 时间问题很重要。 时间不一致会出现node节点向master注册的时候报token失效问题, 有时也会影响etcd集群问题

date
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值