标签: 运维

趣说kubernetes架构

Kubernetes (k8s) 是一个用于部署和管理容器的容器编排系统。它的设计受到了谷歌内部集群管理系统 Borg 的影响。 Kubernetes 集群由称为节点的运行容器化应用程序的工作机器组成。每个集群至少有一个工作节点,用于托管 Pod——应用程序工作负载的组成部分。控制平面负责管理节点和 Pod。在生产环境中,为了实现容错和高可用性,控制平面通常运行在多台计算机上。 控制平面组件– API 服务器 – 与所有 Kubernetes 组件通信并处理所有 Pod 操作– 调度器 – 监视 Pod 工作负载并将其分配给节点– 控

继续阅读 >>

掌握Kubernetes流量管理新利器——Gateway API全面解析(一)

gateway-api 是一个 Kubernetes 项目,旨在为 Kubernetes 提供一个灵活、可扩展的 API 来管理和配置 API 网关。它的目标是简化服务网格和 API 网关的管理,使开发者能够更加方便地定义路由、流量管理、安全控制等功能,而不必依赖于具体的 API 网关实现(比如 Istio、NGINX、Traefik 等)。 主要特点: 核心组件: 应用场景: 与其他 API 网关的比较: 与传统的 API 网关(如 Kong、NGINX、Traefik)不同,gateway-api 的目标是通过标准化的 Kubernetes API 来实现流量控制和路由,而不是固定绑定到某

继续阅读 >>

ceph19.2 squid版本容器化OSD 使用独立 db 盘,data盘损坏后的更换硬盘重建流程

​假设: 1️⃣ 确认集群状态 确认问题 OSD(例如 osd.2)处于 down/in 或 down/out 状态。 2️⃣ 下线并清理旧 OSD (1) 从 CRUSH map 移除 (2) 停止并删除 daemon (3) 从 OSD map 移除 此时,集群会触发数据重平衡,只要副本数 ≥2,数据不会丢失。 3️⃣ 清理旧磁盘数据 清理数据盘: 清理 db 盘对应的 LV: 如果 db 盘上还有其他 OSD 的 RocksDB,请只清理对应分区/LV,不要全盘销毁。 4️⃣ 重新部署 OSD 使用 orchestrator: 5️⃣ 验证 OSD 状态 确认新 OSD 已经创建并 up

继续阅读 >>

Ceph Jewel vs Ceph Octopus+ 更换坏盘步骤对比表(二)

📌 Ceph 更换坏盘步骤对比 操作环节 Jewel 版本 (ceph-disk) Octopus 及以后 (ceph-volume + cephadm/rook) 部署工具 ceph-disk ceph-volume lvm + ceph orch OSD 元数据位置 全在 数据盘 上,日志盘只存 journal/WAL 数据 数据盘 + DB/WAL 盘(LVM LV 上保存 OSD 的元信息:osd_fsid、whoami 等) 坏掉的是数据盘 – OSD 报废 | 坏掉的是 journal/DB 盘 | – OSD 无法启动 ✅ 一句话总结

继续阅读 >>

Docker、ctr 与 crictl:容器生态工具对比

背景与演进技术演进背景Docker与Kubernetes的分道扬镳早期Kubernetes依赖Docker座位容器运行时,但是Docker的封闭生态与Kubernetes的开源理念逐渐产生冲突,2016年,Kubernetes退出CRI(Container Runtime Interface)标准表容器运行时接口,解耦对Docker的依赖关键事件:2022年Kubernetes1.24版本正式移除Dockershim,转而通过CRI对接containerd、CRI-O等轻量级运行时现状:Docker扔可间接支持Kubernetes(通过cri-cokerd适配层),但生产环境推荐直接使用con

继续阅读 >>