部署K3s/k8s和KubeSphere

发布时间 2023-10-11 11:17:24作者: 路遥漫漫

1.如何安装官方文档已经有详细的步骤,我就不赘述了

1.1)All in one 环境安装参考:

https://kubesphere.io/zh/docs/v3.3/quick-start/all-in-one-on-linux/

1.2)边缘节点安装参考:

https://kubesphere.io/zh/docs/v3.3/installing-on-linux/on-premises/install-kubesphere-and-k3s/

 

我只谈谈可能遇到的问题(安装前必读)

1.首先要注意docker的版本,如果linux或Ubuntu本身已经安装了docker,请注意docker版本不宜过低,建议不低于2.0,否则后续有些镜像会拉去失败,下一篇博客我会讲解如何升级docker版本

2.检查docker的cgroupdriver,因为k8s和k3s要求的cgroupdriver=cgroupfs

2.1)查看cgroupdriver信息

docker info | grep -i cgroup

2.2)修改cgroups driver

方法一

查看docker cgroupsystemd修改为cgroupfs

 

方法二

如果找不到上面的配置可以在/etc/docker/daemon.json 文件中插入没有就新建

{  

    "exec-opts": ["native.cgroupdriver=cgroupfs"]  

}

刷新配置Systemctl daemon-reload

重启docker服务Service docker restart 

 

3.安装后出现 登录提示api-server异常

request to http://ks-apiserver/oauth/token failed, reason: getaddrinfo EAI_AGAIN ks-apiserver

3.1)方法一:修改/etc/sysctl.conf文件,添加net.ipv4.tcp_tw_recycle = 0 (亲测有效)

3.2)方法二:(其他方法)

kubectl -n kube-system edit cm coredns -o yaml
#会进入编辑状态,注释掉
# forward . /etc/resolv.conf {
# max_concurrent 1000
#}

#查询pod的id
kubectl get pods -n kube-system | grep coredns
#删除pod
kubectl delete pod coredns-b5648d655-lm2qf -n kube-system
kubectl delete pod coredns-b5648d655-lxgxm -n kube-system

4.如果安装后忘记管理员密码

使用如下命令重置

kubectl patch users admin -p '"spec":"password":"123456"' --type='merge' && kubectl annotate users admin iam.kubesphere.io/password-encrypted-