Skip to main content

Command Palette

Search for a command to run...

#kubernetes

Articles tagged with #kubernetes

  1. 僭越了,有人在用 Rust 写 Kubernetes

    一个新语言问世,最爱做的事情之一,就是重写存量软件了。 云原生喝酒 SIG 重点扶持项目——rk8s(https://github.com/rk8s-dev/rk8s) 也可以归在这个范畴里,只不过这个项目重写的东西比较大,是 Kubernetes。 从 2025 年 1 月第一个 Commit 开始,到现在有了 200 多次 Commit,十几万行代码。当然距离 Kubernetes 的几百万行代码还差得远——老马就是喜欢整这种大无畏项目。 另外该项目也是国内第一个脱离 Cargo 转向使用 ...

    Sep 27, 20253 min read130
  2. 将 Kubernetes 服务注册为 MCP Tools

    前些天看到阿里云的一篇文章《Nacos 发布 MCP Registry,实现存量应用接口“0改动”升级到 MCP 协议》,深受启发,用服务注册发现结合网关设施,将存量服务转换为 MCP 工具的玩法,能非常有效地将存量服务装进 MCP 的新瓶子。那么按照我之前发表的《MCP 是一座桥》一文的思路,是不是可以更进一步,去除对特定厂商的依赖,用更通用的方式实现 MCP 的快速上车呢?下面讲讲我的尝试。 太长不看 总体流程如下图所示: sequenceDiagram participant Us...

    Apr 24, 20252 min read150
  3. IaC 杂感

    IaC 的起源 IaC 是配置管理领域的一种技术,全称 Infrastructure as Code,字面意义:基础设施即代码,是一种使用可读文本发放和管理基础设施资源的方法。通常情况下,软件定义的基础设施管理平台,会为用户提供命令行、WebUI 的方式,让用户能够用手工或者工具化的方式进行资源发放和管理工作。随着“基础设施”这一概念的不断扩展,使用频度的不断提高,越来越多的基础设施平台会提供各自的 API 为自动化打开方便之门。为了更快、更多的发放更多种类的基础设施,用一致的代码对这些基础设施...

    Sep 5, 20242 min read32
  4. 无需重启,使用 Shell Operator 对 Pod 进行垂直扩缩容

    通常情况下,要修改 Pod 的资源定义,是需要重启 Pod 的。在 Kubernetes 1.27 中,有一个 Alpha 状态的 InPlacePodVerticalScaling 开关,开启这一特性,就能在不重启 Pod 的情况下,修改 Pod 的资源定义。 要使用这个功能,需要在 kube-apiserver 的 featureGates 中显式地设置启用,启用这一特性之后,就可以进行测试了。 例如 Kind 集群,需要在配置中加入: featureGates: "InPlaceP...

    Sep 2, 20243 min read26
  5. Kubernetes 的小秘密——从 Secret 到 Bank Vault

    Kubernetes 提供了 Secret 对象用于承载少量的机密/敏感数据,在实际使用中,有几种常规或者非常规的方式能够获取到 Secret 的内容: Pod 加载(自己的或者不是自己的)Secret 为环境变量或者文件 使用 Kubernetes API(或者 kubectl)获取 Secret 对象内容 连接 ETCD 读取其中保存的 Secret 明文 在 CICD 工具中截获含有明文的 Secret 对象 YAML 在加载了 Secret 的容器中直接读取环境变量或者机密文件...

    Apr 4, 20244 min read62
  6. 不用 API Server 也能运行 Pod?

    遇到一个奇怪的需求:想复用 Pod 的 YAML,但是家境贫寒,不想搞个高可用 API Server;又惜字如金,不想上 Docker Compose。一顿 Google 猛如虎之后,得到了两个方案:静态 Pod 和 podman play kube。 静态 Pod Kubernetes 有个功能,就是 static pod,官网介绍大致如下: 静态 Pod 由特定节点上的 kubelet 守护进程直接管理的,API 服务器并不关注静态 Pod。通常说来,Pod 是由 Deployments ...

    Feb 21, 20243 min read7