K8S:K8S部署常见错误及解决方法

这篇具有很好参考价值的文章主要介绍了K8S:K8S部署常见错误及解决方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1、node节点kubelet服务起不来

2、安装cni网络插件时 kubectl get node master和node一直noready①有延时,需要等待10分钟左右,超过15分钟则有问题

3、部署报错kubectl get nodes No resources found

4、k8s部署报错error:kubectl get csr No resources found


1、node节点kubelet服务起不来

问题:node节点kublet起不来服务器内存资源不足,node节点kubelet服务启动不了也不保存

解决方法:top命令然后按shift 加M可按内存排序,然后找到对应进程使用lsof | grep 进程查看进程运行的是什么内容,将不需要的进程关闭。或者添加内存

2、安装cni网络插件时 kubectl get node master和node一直noready ①有延时,需要等待10分钟左右,超过15分钟则有问题

②查看kubelet的服务 状态中有此报错failed to find plugin"flannel" in path [/opt/cni/bin]],是由于在/opt/cni/bin下缺少可 执行的flannel。

解决方法:重新上传cni插件包或者重新网络源下载
 

K8S:K8S部署常见错误及解决方法

③ kubcectl  get -n kube-system查看pod信息上发现kube-flannel-ds开头的三个都为0/1则是网络安装cni网络插件拉取镜像失败。使用kubectl describe pod kube-flannel-ds-rxh5w(pod名称) -n kube-system可以查看日志。

 解决方法:使用命令手动拉取镜像   docker pull quay.io/coreos/flannel:v0.14.0

                   拉取完毕后修改镜像命   docker tar  源名称   目的名称(改为没有拉取成功的名称)

K8S:K8S部署常见错误及解决方法

K8S:K8S部署常见错误及解决方法 

3、部署报错kubectl get nodes No resources found

kubectl  get nodes 
#查看节点信息
报错问题:kubectl get nodes No resources found

排查思路:
所有节点:
1.关闭防火墙: 
systemctl stop firewalld
systemctl disable firewalld 

2.关闭selinux: 
sed -i 's/enforcing/disabled/' /etc/selinux/config 
setenforce 0 

3.关闭swap:  
swapoff -a 临时 
vim /etc/fstab 永久 

4.添加主机名与IP对应关系(记得设置主机名): 
cat /etc/hosts 
master 192.168.30.11
node1 192.168.30.12
node2 192.168.30.13

5.node节点
vim /usr/lib/systemd/system/docker.service
#在[Service]区域下增加一行
......
[Service]
ExecStartPost=/usr/sbin/iptables -P FORWARD ACCEPT
......

systemctl daemon-reload 
systemctl restart docker

4、k8s部署报错error:kubectl get csr No resources found

kubectl get csr
#查看csr节点申请信息
No resources found.
#报错信息
报错原因方法:因为原来的ssl证书在重启后失效了,不删除的话,即重启kubelet也无法与master通讯
解决方法:
node节点:删除所有证书
cd /opt/kubernetes/ssl
ls
kubelet-client-2023-05-11-08-41-36.pem  kubelet-client-current.pem  kubelet.crt  kubelet.key
# 删除所有的证书
rm -rf *
# 关闭开启的kubelet
systemctl stop kubelet
master节点: 删除证书重新创建
kubectl delete clusterrolebinding kubelet-bootstrap
clusterrolebinding.rbac.authorization.k8s.io "kubelet-bootstrap" deleted

kubectl create clusterrolebinding kubelet-bootstrap --clusterrole=system:node-bootstrapper --user=kubelet-bootstrap
clusterrolebinding.rbac.authorization.k8s.io/kubelet-bootstrap created
node节点:重新执行kubelet安装
#node01
bash kubelet.sh 192.168.30.11
#node02
bash kubelet.sh 192.168.30.12
master节点:测试是否成功
kubectl get csr

 文章来源地址https://www.toymoban.com/news/detail-490685.html

到了这里,关于K8S:K8S部署常见错误及解决方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • k8s master节点高可用方案部署

    使用的是堆叠方案,即etcd与控制平面被部署在同一节点当中,之所以最少使用三个master节点是因为ETCD的RAFT算法,集群中节点超过半数可用,集群才可用,所以一般使用奇数master节点,比如3、5等 每台机器都做 至少2cpu,4g机器环境 关闭防火墙、关闭selinux、关闭交换分区 (1)

    2023年04月08日
    浏览(45)
  • K8s基础2——部署单Master节点K8s集群、切换containerd容器运行时、基本命令

    两种部署方式: kubeadm工具部署 。Kubeadm 是一个K8s 部署工具,提供 kubeadm init 和kubeadm join,用于快速部署 Kubernetes集群。 kubeadm 工具功能: kubeadm init:初始化一个 Master 节点。 kubeadm join:将工作节点加入集群。 kubeadm upgrade:升级 K8s 版本。 kubeadm token:管理 kubeadm join 使用的令

    2024年02月12日
    浏览(54)
  • k8s单节点部署,容器运行时使用containerd

    环境 系统 : entOS Linux release 7.9.2009 (Core IP:192.168.44.177 硬件要求:控制平面最少需要 2c2g 安装前环境准备 如果是集群部署还需要配置时间同步 关闭防火墙 关闭selinux 关闭swap分区 如果没有开启swap分区可以跳过这步 删除掉 /etc/fstab 有关swap分区的信息 设置主机名 开始安装容器

    2024年04月12日
    浏览(55)
  • K8S1.23.6版本详细安装教程以及错误解决方案(包括前置环境,使用部署工具kubeadm来引导集群)

    一台兼容的 Linux 主机。Kubernetes 项目为基于 Debian 和 Red Hat 的 Linux 发行版以及一些不提供包管理器的发行版提供通用的指令。 每台机器 2 GB 或更多的 RAM(如果少于这个数字将会影响你应用的运行内存)。 CPU 2 核心及以上。 集群中的所有机器的网络彼此均能相互连接(公网和

    2024年03月14日
    浏览(43)
  • k8s删除node节点的方法

    2024年02月16日
    浏览(45)
  • k8s集群部署 | 三节点(复用)高可用集群过程参考

    1.1.1 实验架构图 1.1.2 系统版本说明 OS 版本:CentOS Linux release 7.9.2009 (Core) 初始内核版本:3.10.0-1160.71.1.el7.x86_64 配置信息:2C2G 150G硬盘 文件系统:xfs 网络:外网权限 k8s 版本:1.25.9 1.1.3 环境基本信息 K8s集群角色 IP地址 主机名 组件信息 控制节点1(工作节点1) 192.168.204.10 k8

    2024年02月04日
    浏览(52)
  • 解决K8S节点NotReady状态

    问题场景 使用 kubectl get node 指令查看节点状态 检查kubeadm的文件,检查k8s初始化信息,情况正常 查看系统中的pod,发现少了一个flannel的pod 出现pod的NotReady这个问题的情况不一样,有的人是flannel有但是状态是Error: ErrImagePull,这种情况下可以删除后重试,删除指令: kubectl de

    2024年02月11日
    浏览(46)
  • k8s从节点加入主节点[preflight] Running pre-flight checks卡住(已解决)k8s常用问题解决

    部署k8s时,主节点部署成功了,从节点1执行kubeadm join也成功了,从节点2执行kubeadm join一直卡在[preflight] Running pre-flight checks不动! 网上查的资料,不管是时间同步,还是重新生成token都尝试了,结果还是不行。 kubeadm token list 查看token也并没有 过期。 kubeadm token create --ttl 0 -

    2024年02月09日
    浏览(38)
  • 【云原生】二进制部署k8s集群(中)搭建node节点

    在上文已经成功部署了etcd分布式数据库、master01节点, 本文将承接上文的内容,继续部署Kubernetes集群中的 worker node 节点和 CNI 网络插件 kubelet 采用 TLS Bootstrapping 机制,自动完成到 kube-apiserver 的注册,在 node 节点量较大或者后期自动扩容时非常有用。   Master apiserver 启用 T

    2024年02月09日
    浏览(59)
  • nodejs前端项目部署到k8s,导致线上故障的排查与解决方法

    因我们的前后端项目都部署在k8s集群中,前端项目采用npm和node管理 事故背景: 某天前端同事在测试环境更新完一个前端服务后,访问正常,然后按照正常流程上线到生产环境,但是,在生产环境更新完成后,测试同事反馈访问报502错误,我就去服务器排查刚才发布的服务,检查pod状态

    2024年02月02日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包