安装k8s

此文章主要供自己参考使用,不建议读者按照此文档操作,但是此博客经过安装试错后的总结,具有一定参考意义。
安装的k8s三大件kubeadm kubelet kubectl,版本为1.23.6。
其中master节点是centos系统,所使用docker版本是20.10.22,安装链接: 安装docker20.10.22,因为k8s提示所支持的最高版本docker为20.10
node节点使用的ubuntu系统,使用的docker版本是较高版本,似乎不受影响,正常加入了集群

一、在master和node节点上执行初始条件

1、不同节点设置不同的hostname

hostnamectl set-hostname master-ndsc
bash #刷新主机名

修改/etc/hosts文件

202.202.2.23 master-ndsc
202.202.2.2 node02
202.202.2.3 node03
202.202.2.4 node04
202.202.2.5 node05
202.202.2.6 node06

2、关闭防火墙

systemctl stop firewalld && systemctl disable firewalld

3、关闭selinux

setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

4、关闭swap

swapoff -a
sed -i '/swap/s/^\(.*\)$/#\1/g' /etc/fstab
free -m #查看是否关闭swap

5、配置iptables的ACCEPT规则

iptables -F && iptables -X && iptables -F -t nat && iptables -X -t nat && iptables -P FORWARD ACCEPT

设置系统参数

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

sysctl --system

6、设置时间同步

sudo apt install -y chrony
sudo systemctl restart chrony
sudo systemctl status chrony
chronyc sources

7、安装docker

二、在master节点(centos)上安装k8s三大件

1、添加阿⾥云 YUM 源

cat > /etc/yum.repos.d/kubernetes.repo << EOF
[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
EOF

2、安装 kubeadm kubelet kubectl

yum install -y kubelet-1.23.6 kubeadm-1.23.6 kubectl-1.23.6
systemctl enable kubelet

3、初始化master节点

kubeadm init \
--apiserver-advertise-address=202.202.2.23 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.23.6 \
--service-cidr=10.10.0.0/12 \
--pod-network-cidr=172.17.0.0/16 \
--ignore-preflight-errors=all
#–apiserver-advertise-address #集群通告地址(master 机器IP)
#–image-repository #由于默认拉取镜像地址k8s.gcr.io国内无法访问,这里指定阿里云镜像仓库地址
#–kubernetes-version #K8s版本,与上面安装的一致
#–service-cidr #集群内部虚拟网络,Pod统一访问入口
#–pod-network-cidr #Pod网络,与下面部署的CNI网络组件yaml中保持一致

三、在node节点上安装k8s三大件

node节点使用的是ubuntu系统

# 安装基础环境
apt-get install -y ca-certificates curl software-properties-common apt-transport-https curl
curl -s https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -
# 执行配置k8s阿里云源  
vim /etc/apt/sources.list.d/kubernetes.list
#加入以下内容
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
# 执行更新
apt-get update -y
#查看kubeadm kubelet kubectl有哪些版本,以及版本安装时的具体名称,例如1.23.6是错误的,要是1.23.6-00
apt-cache madison kubeadm kubelet kubectl
#安装指定版本的kubeadm kubelet kubectl
sudo apt update && \
sudo apt-get -y install kubelet=1.23.6-00 kubeadm=1.23.6-00 kubectl=1.23.6-00     # 安装的时候需要指定版本,否则会安装最新版本,node节点可以不需要安装kubectl
sudo apt-mark hold kubelet kubeadm kubectl        #阻止软件自动更新
systemctl start kubelet 
systemctl enable kubelet

查看安装的情况以及版本
kubectl version --client && kubeadm version

四、遇到的问题

1、master节点初始化失败,以及node节点加入集群失败的话
需要运行命令进行重置

kubeadm reset

然后再重新加入

2、修改docker的Cgroup Driver

1、修改docker的Cgroup Driver
修改/etc/docker/daemon.json文件

{
“exec-opts”: [“native.cgroupdriver=systemd”]
}

2、重启docker

systemctl daemon-reload
systemctl restart docker

参考博客: 修改Docker及kubelet的Cgroup Driver

参考博客

链接: 【云原生-K8s】kubeadm搭建安装k8s集群v1.25版本完整教程【docker、网络插件calico、中间层cri-docker】

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值