自定义 RKE2/K3s 证书有效期

RKE2/K3s 生成的证书默认有效期为一年,通过 CATTLE_NEW_SIGNED_CERT_EXPIRATION_DAYS 可以自定义有效期。

Read more

通过 Target Allocator 收集 Service/Pod Monitor Metrics

场景:SUSE O11y Agent 默认不会收集 Service/Pod Monitor 获取的 Metrics,最简单的方法是通过 Prometheus remote write 的方式将这些 Metrics 传输到 SUSE O11y Server 的 VictoriaMetrics。但集群中共同存在 Prometheus 和 VictoriaMetrics 很耗费资源,这时候可以借助 Open Telemetry 的 Target Allocator 能力,代替 Prometheus 收集这些指标。

参考文档:

  1. https://github.com/open-telemetry/opentelemetry-operator/blob/main/cmd/otel-allocator/README.md#target-allocator
  2. https://opentelemetry.io/docs/platforms/kubernetes/operator/troubleshooting/target-allocator/
Read more

SUSE EIB 使用随记

Edge Image Builder(EIB)是一款用于生成定制化可引导(CRB)镜像的工具,可用于机器引导,即使在完全离线的环境中也能使用。EIB 可创建适用于 SUSE Edge 三种部署模式的镜像,支持从简单的设置(如添加用户、配置时区)到复杂的定制(如配置网络、部署多节点 Kubernetes 集群、分发工作负载,并通过 Rancher/Elemental 和 SUSE Manager 注册到集中管理平台)。EIB 以容器形式运行,便于跨平台使用,所有依赖均已打包,对宿主系统影响极小。

参考文档:https://documentation.suse.com/suse-edge/3.1/html/edge/quickstart-eib.html

Read more

Terraform Provider Rancher2 使用随记

Terraform 是一种基础架构即代码(Infrastructure as Code, IaC)工具,可用于安全、高效地构建、更改和版本化管理云资源及本地资源。

通过不同的 Provider,可以以声明式方式管理各类资源。本文基于 Rancher2 Provider 进行实践记录。

Read more

Rancher 私有 CA 证书安装

参考文档:https://ranchermanager.docs.rancher.com/getting-started/installation-and-upgrade/install-upgrade-on-a-kubernetes-cluster

Rancher Management Server 默认需要 SSL/TLS 配置来保证访问的安全性,可以从以下三种证书来源中选择一种,用于在 Rancher Server 中终止 TLS:

  • Rancher 生成的 TLS 证书。
  • Let’s Encrypt 下发的 TLS 证书。
  • 使用已有的 CA 颁发的公有或私有证书。

此处测试第三种方式,即使用私有 CA 证书签名的证书安装 Rancher。

Read more

RKE2 使用 Custom CA 部署

参考文档:https://docs.rke2.io/zh/security/certificates#using-custom-ca-certificates

在注册首台 RKE2 节点时,rke2 进程会检查 /var/lib/rancher/rke2/server/tls 目录中是否已存在相关证书文件;若不存在,就会生成相关证书供 Kubernetes 使用。

如果有自定义证书的需求,也可以提前将生成好的证书放置到该目录中。rke2 会检测到证书已存在,从而跳过证书生成流程,直接使用这些自定义证书。

Read more

通过 Nginx 实现 RKE2 高可用部署

在 RKE2 高可用部署中,需要在多个 Server 节点前提供一个固定的访问入口,作为节点注册和 Kubernetes API 访问地址。

RKE2 Server 默认监听以下端口:

  • 9345:RKE2 Supervisor 端口,用于新节点注册和集群内部通信
  • 6443:Kubernetes API Server 端口,用于 Kubernetes API 访问

因此,负载均衡器需要同时转发 93456443 两个端口。建议使用 Layer 4 TCP Load Balancer、DNS 或 VIP 作为固定入口,并在 RKE2 配置中通过 tls-san 添加 LB 的 IP 或域名,避免通过 LB 访问时出现证书校验错误。

参考文档:https://ee.docs.rancher.cn/docs/installation/kubernetes-cluster-setup/high-availability%20/rke2-ha-install-for-nginx

部署架构示意图:

Read more

Harvester VM OOM 问题排查

Harvester 版本:v1.3.2

问题现象:环境中的 VM 发生 OOM,对应的 virt-launcher Pod 重启。

Read more