2021 K8s集群部署
集群所需硬件条件:互联网,centos7虚拟机两台,每台虚拟机cpu不低于2,内存不低于2048MB
首先更改主机名,具体操作
hostnamectl set-hostname ,
可以使用hostname 查看主机名
然后 vi /etc/hosts将图示位置改成对应的主机名
reboot重启。
然后检查一下centos内核版本
cat /etc/redhat-release
如果比7.9低,升级一下
yum update 会久一点
关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
setenforce 0 临时关闭seliunx
然后 vi /etc/fstab
将swap一行前面注释了,加个#就行
swapoff -a
通过free -h确认关闭没有
全是0就对了
vi /etc/hosts
添加ip 与对应的主机名
例如这样的
vi /etc/sysctl.d/k8s.conf
将这两个粘贴进去,将桥接的IPv4流量传递到iptables的链
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
sysctl --system 配置生效
安装时间同步
yum install ntpdate -y
ntpdate time.windows.com
安装docker
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
yum -y install docker-ce(这里下载应该是 20.10.8,如果不是请指定版本)
systemctl enable docker && systemctl start docker
指定镜像加速
vi /etc/docker/daemon.json
{
“registry-mirrors”: [“https://b9pmyelo.mirror.aliyuncs.com”]
}
粘进去
systemctl restart docker #重启生效
安装kubernetes
kubelet kubeadm kubectl
配置阿里yum源
vi /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
粘进去
yum install -y kubelet-1.21.0 kubeadm-1.21.0 kubectl-1.21.0
systemctl enable kubelet
到这里,作为节点就可以了,主机的话还需要初始化
创建集群
只有master执行,只有master执行,只有master执行。
kubeadm init --apiserver-advertise-address=[master-ip] --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.21.0 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=all
这里可能会有很多奇奇怪怪的bug,不过我没有遇到。然后上述命令一定麻烦把ip改了,一定要指定master主机的ip。
形如address=192.168.xx.xxx
若init执行成功,
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown (id−u):(id -u):(id−u):(id -g) $HOME/.kube/config
执行就行。
这样主机搭建好了以后,还需要其他节点加入,加入的话比较简单。
在master机上执行
kubeadm token create --print-join-command
会生成一段指令
例如这样的,将下面的生成指令复制到节点机中,执行即可。
稍等一分钟左右,在master输入
kubectl get node ,即可查看节点。
也可以使用加强版 添加 -o wide
至此,集群搭建完毕。