记录一次公网搭建K8S
个人搭建环境配置
云:阿里云和腾讯云混合
机器:3台具备公网IP的Linux CentOS 7.6云服务器,主节点2C8G、从节点分别为1C2G和2C2G
Kubernetes版本:1.20.9
———————————————————————————————————
开始部署
注:部署过程中遇到的一些问题写在文章底部,如有错误的地方请评论指出,谢谢。
- 三台机器分别设置主机名
hostnamectl set-hostname master
hostnamectl set-hostname node1
hostnamectl set-hostname node2
-
三台机器分别修改/etc/hosts
[Public IP] master
[Public IP] node1
[Public IP] node2
重启后生效 -
三台机器分别开放端口
10250/10260 #TCP端口:给kube-schedule、kube-controll,kube-proxy、kubelet等使用
6443 #TCP端口:给kube-apiserver使用
2379 2380 2381 #TCP商品:ETCD使用
8472 #UDP端口,或干脆全开放,个人测试机
阿里云开放端口:
腾讯云开放端口:
-
三台机器分别配置系统环境
永久关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
永久关闭SELinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
永久关闭Swap
sed -ri 's/.*swap.*/#&/' /etc/fstab
安装、配置时间同步
yum install ntpdate -y
ntpdate time.windows.com
创建/etc/sysctl.d/k8s.conf配置文件,将桥接的 IPv4 流量传递到 iptables 的链
cat > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
- 三台机器分别yum下载安装配置相同版本的docker、kubectl、kubelet、kubeadm
下载docker源
wget https://mirrors.aliyun.com/dock