Skip to main content

Command Palette

Search for a command to run...

kubeadm 踩坑记

Published
•1 min read•View as Markdown

Kubeadm 是个让我爱恨交加的东西,一方面,我不认为一个生产集群应该使用这样一个第三方工具进行在线安装,尤其是在目前这种网络环境之下;而另外一方面,Kubeadm 这一工具是随 Kubernetes 同步更新的,其中包含了大量的集群配置方面的最佳实践,是追新的最佳参考,所以这个讨厌的东西的运行是必须需要得到保障的。kubeadm 的执行过程沉默到令人发指,因此下面分享几个使用过程中遇到的一些问题和解决的思路和方法,希望对同行们有所帮助。

下面的例子是基于 kubeadm 1.6.6 + Centos 7 的执行过程记录的。

  • 写入 yum repo 并进行安装之后,利用 systemctl enable kubelet 启用 kubelet 服务之后,只要运行一下 systemctl daemon-reload即可,这一服务的启动需要 kubeadm 生成的证书和配置文件等的支持,因此无需进行启动。
  • kubeadm init过程首先会检查代理服务器,确定跟 kube-apiserver 的 https 连接方式,如果有代理设置,会提出警告。
  • 接下来会对 sysctl 进行检查,我这里需要执行 sysctl net.bridge.bridge-nf-call-iptables=1 ,对这一参数进行调整,解决他的警告。
  • 接下来进入最抓狂的一个等待时间,屏幕显示为[apiclient] Created API client, waiting for the control plane to become ready,这一过程中会遇到大多数的坑,我一般会另外启动一个连接或者 tmux 窗口,进行观察和除错:
    • 这里已经做好运行 kubelet 服务的准备,因此这一时间内,我们可以利用systemctl statusl -l kubelet对服务的启动状况进行检查,目前比较容易遇到的是 kubectl 和 docker 两个服务的cgroup-driver不一致的问题,这里编辑文件/etc/systemd/system/kubelet.service.d/10-kubeadm.conf,修改这一参数值为跟 docker 一致的cgroupfs即可。这一步可以在 kubeadm init 之前执行完成
    • kubelet 启动之后,会尝试运行系统组件的 Pod,这里我们可以通过观察docker images的镜像列表来观察是否能够顺利进行下载。
    • 镜像下载完成之后就会开始运行各个系统组件,因此也是事故最为集中的阶段,我们可以使用docker ps、docker logs、docker inspect几个命令,逐个查看组件的运行情况,对失败组件的原因进行排除,之前提过的resolv.conf的故障就是在这一阶段发现并排除的。

More from this blog

AI Agent 的“莫兰迪时刻”

一个新范式真正走向大众,往往不是从所有人都正确理解它开始,而是从它开始被反复引用、简化、误读,甚至滥用开始。 今天的 AI Agent,可能正走到这样一个时刻。 这篇文章的念头,来自我最近收听《大内密谈》vol.1434《审美升级or消费主义?从莫兰迪在中国聊起》时的一些联想。节目从莫兰迪色在中国的走红,谈到作品价格、知识产权、商业流量与消费主义。[9] 我听着听着想到另一个熟悉的技术史问题:为

Oct 5, 20263 min read

FDE 是传统运维产品厂商的出路吗?

很多传统运维产品厂商,已经不缺产品了。 从 ITSM、CMDB、监控、自动化,到 IAM、数据中心管理和各类大屏,一个成熟厂商往往都能拿出一张很完整的产品地图。销售材料上看,客户运维部门的日常工作几乎都被覆盖了。 但项目一落地,味道就变了。 产品越多,集成越重;模块越全,边界越模糊;客户越大,定制越深。到了后期,项目成功本身也会变成麻烦:现场改出来的东西回不到主干,配置越来越像黑箱,谁都不敢轻易升

Jun 29, 20263 min read

绵里藏针才是 AIOps 的本质?

Agent 让运维编排变得柔性、可变、甚至自演进;但真正敢进入生产环境的 AIOps,仍然离不开坚实、受控、可审计、可回退的自动化底座。 从 Gartner 提出 AIOps 概念到现在,也大概有十年了。这么多年来,这个领域好像发生了很多变化,又好像没什么“本质”的变化。技术上,我们经历了传统机器学习、深度学习和神经网络、以及大模型和智能体这样“翻天覆地”的变化;业务上,我们面对的是更多品种、更大

May 31, 20263 min read

龙虾恐慌:AIOps 又要改名了?

ChatGPT 开始,把 AI 拉近到普罗大众的面前,让无数人感受到 AI 的亲民魅力。而龙虾,则把大模型驱动的自动化能力,突然间变得水灵灵、活泼泼地走进千家万户。它不只是“风口上的猪”,而是风口本身。热度高到让 Mac mini 一度断货,不知道这在不在库克的预料之内。 每代人都有每代人的鸡蛋,春节期间,我就领了我的鸡蛋。翻出古老的 MacBook Air M1,充值各种大模型。当然了,这个工具

Mar 9, 20261 min read
【

【伪】架构师

346 posts