【kubernetes】Debian使用Kubeadm部署Kubernetes失败:Connection Refused

这篇具有很好参考价值的文章主要介绍了【kubernetes】Debian使用Kubeadm部署Kubernetes失败:Connection Refused。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这篇文章也可以在我的博客中查看

今天废话不多说直接解决一个阴间问题

问题

  1. 在部署kubernetes后(执行完kubeadm init后),执行任何kubectl命令,都会报以下错误:
The connection to the server xxx.xxx.xxx.xxx:6443 was refused - did you specify the right host or port?
  1. 此后执行kubectl get pods -A
    你会看到一些容器在无规律地被摧毁
  2. 在过一段时间后,Api-server直接开摆,你无法再连接上Kubernetes,直接Connection refused。

环境

如果你目前遇到类似问题,而且处于以下环境,那本文很可能可以帮你渡过难关:

  1. 你使用的是Debian系统(Debian12/11)
    • 我不确定其它系统会不会有相同错误,但不妨试试
  2. 你使用Kubeadm部署Kubernetes (目前的最新版,v1.28)
    • 我同样不确定其它的部署方式会不会有相同错误
  3. 你使用containerd作为container runtime
    • 如果你是通过Docker官方教程安装的Docker,那个教程会连带安装containerd
    • 所以如果你印象中没有专门安装过任何container runtime,那很可能就是containerd
  4. 你找过许多相同错误的解决方案,但最后都无法解决问题

原因

简单来说:containerdkubelet使用的cgourp driver版本对不上
Debian安装的conainerd的默认cgroup driver还是v1,但是kubelet使用的是v2

但说实话,详细的我也不太懂,也不太想去懂……
如果你对具体解释感兴趣,不妨查阅以下链接:

  • Why does etcd fail with Debian/bullseye kernel?
  • cgroups-k8s

解决

但要解决这个问题还是比较简单,只要指定containerd使用cgroup driver v2就可以:

打开containerd配置文件:

vi /etc/containerd/config.toml

加入以下内容,并保存退出:

version = 2
[plugins]
  [plugins."io.containerd.grpc.v1.cri"]
   [plugins."io.containerd.grpc.v1.cri".containerd]
      [plugins."io.containerd.grpc.v1.cri".containerd.runtimes]
        [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
          runtime_type = "io.containerd.runc.v2"
          [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
            SystemdCgroup = true

重启containerd

systemctl restart containerd

重启kubelet

systemctl restart kubelet

结束了哥们,这就完事儿了。

真不敢相信被这个问题折磨了将近两天文章来源地址https://www.toymoban.com/news/detail-736984.html

到了这里,关于【kubernetes】Debian使用Kubeadm部署Kubernetes失败:Connection Refused的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 【Kubernetes】Kubernetes之Kubeadm部署

    集群服务器主机名 服务器IP地址 集群服务器部署的服务 master(2C/4G,cpu核心数要求大于2) 192.168.145.15 docker、kubeadm、kubelet、kubectl、flannel node01(2C/2G) 192.168.145.30 docker、kubeadm、kubelet、kubectl、flannel node02(2C/2G) 192.168.145.45 docker、kubeadm、kubelet、kubectl、flannel 4.1 配置 master0

    2024年02月14日
    浏览(51)
  • Kubeadm 安装 Kubernetes:kubelet 状态失败的解决方案

    Kubeadm 安装 Kubernetes:kubelet 状态失败的解决方案 在使用 kubeadm 安装 Kubernetes 集群时,遇到 kubelet 状态失败的问题是比较常见的。这个问题主要出现在 kubelet 无法正常启动或者无法连接到控制平面节点上。本文将介绍一些常见的原因和解决方案,并提供相应的源代码。 首先,

    2024年02月07日
    浏览(46)
  • 云原生|kubernetes|使用cri-docker部署基于kubeadm-1.25.4的集群

    前言: kubernetes的部署从1.24版本开始后,弃用docker-shim,也就是说部署1.24版本后的集群不能使用docker-ce了。 比较清晰的解决方案有两个,一是使用containerd,这个是一个新的支持cri标准的shim,一个是使用cri-docker这样的中间插件形式, 一头通过CRI跟kubelet交互,另一头跟docker

    2024年02月07日
    浏览(79)
  • 【云原生|Kubernetes】02-Kubeadm安装部署Kubernetes集群

    前面简单介绍了Kubernetes的相关架构及其组件,这一章节我们将介绍如何快速搭建Kubernetes的集群,这里我们将使用官方支持的用于部署 Kubernetes 的工具— kubeadm。 主机名 ip地址 节点类型 系统版本 master.example.com 192.168.194.128 master,etcd centos7.x node1.example.com 192.168.194.130 node1 cent

    2024年02月03日
    浏览(46)
  • Kubernetes - kubeadm部署(二)

    先从一个报错开始吧 错误信息可以看到crictl连接的runtime是docker,并且连接失败。查看containerd启动信息(journalctl -exu containerd),containerd启动完成后监听的unix sock路径是:/run/containerd/containerd.sock。 创建crictl配置文件:/etc/crictl.yaml。修改crictl默认配置,把runtime-endpoint和image

    2024年02月16日
    浏览(44)
  • Kubernetes - kubeadm部署

    kubeadm官方推荐方案,也在大力发展。小问题比较多,扩展还是需要配合其它方案一起做。高可用上面还是需要自己花一些精力,如果只是玩玩,还是非常推荐的,但是想要正式环境使用,我还是推荐大家三思。 由于kubeadm更像是一套完整的脚本封装,所以想要扩展它,还是需

    2024年02月16日
    浏览(35)
  • Kubernetes一键部署利器:kubeadm

    使用 kubeadm 的第一步,是在机器上手动安装 kubeadm、kubelet 和 kubectl 这三个二进制文件。 当你执行 kubeadm init 指令后,kubeadm 首先要做的,是一系列的检查工作,以确定这台机器可以用来部署 Kubernetes。这一步检查,我们称为“Preflight Checks”,它可以为你省掉很多后续的麻烦。

    2024年02月11日
    浏览(38)
  • kubeadm极速部署Kubernetes 1.26版本集群

    1.1.1 主机操作系统说明 序号 操作系统及版本 备注 1 CentOS7u9 1.1.2 主机硬件配置说明 需求 CPU 内存 硬盘 角色 主机名 值 4C 8G 100GB master k8s-master01 值 4C 8G 100GB worker(node) k8s-worker01 值 4C 8G 100GB worker(node) k8s-worker02 1.1.3 主机配置 1.1.3.1 主机名配置 由于本次使用3台主机完成kubernetes集

    2024年02月03日
    浏览(43)
  • k8s(kubernetes)的两种部署方式(kubeadm)

    在开始之前,部署Kubernetes集群机器需要满足以下几个条件: 一台或多台机器,操作系统CentOS7.x-86_x64 硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多 可以访问外网,需要拉取镜像,如果服务器不能上网,需要提前下载镜像并导入节点禁止swap分区 角色 IP master 192.168.1.11 node1 192.16

    2024年02月22日
    浏览(58)
  • 云原生Kubernetes:Kubeadm部署K8S单Master架构

    目录 一、理论 1.kubeadm 2.Kubeadm部署K8S单Master架构 3.环境部署 4.所有节点安装docker 5.所有节点安装kubeadm,kubelet和kubectl 6.部署K8S集群 7.安装dashboard 8.安装Harbor私有仓库 9.内核参数优化方案 二、实验 1.Kubeadm部署K8S单Master架构 2. 部署流程  3.环境部署 4.所有节点安装docker 5.所有节

    2024年02月10日
    浏览(60)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包