标签: #KubeVirt
用亲手运行、亲手测量的数据来写 Kubernetes、DevOps 与 MLOps · 5 篇
带有 #KubeVirt 标签的文章共 5 篇,最新一篇发布于 2026-10-28。
常一起出现的标签: #오픈소스 5 #오픈소스 기여 5 #오픈소스 기여 기록 5 #CDI 3 #문서 2
当文档仍在第一行使用两年前已废弃的 spec.running 时:KubeVirt 用户指南 PR 在十天内合并的背后
KubeVirt 的 VirtualMachine 字段 spec.running 自 v1.4.0(2024-09 合并)起已被废弃,API 服务器在每次创建或修改包含该字段的 VM 时都会返回警告。然而,用户指南的 Run Strategies 页面依然将 Running 作为首选设置来介绍,用于开启和关闭 VM,且从未提及过废弃信息。架构页面将示例 VM 改为了 runStrategy: Halted,但周围的文本却依然提到了 s
2026-10-28 · 14 分钟阅读 #오픈소스#오픈소스 기여#KubeVirt#쿠버네티스#문서请求 10Gi 结果 PVC 却是 11381663335 字节:为 CDI 文件系统预留空间编写文档
CDI 文档在使用 spec.storage 时,只说明了“会请求一个大到足以容纳镜像和文件系统元数据的 PVC”,但并未说明最终 PVC 和磁盘镜像各自会达到多少字节。我们读到这句话时猜测,如果请求 10Gi,客机磁盘会变小约 6%,即约 9.4GiB;但实际上,客机磁盘正好是 10GiB,而 PVC 变大了 1.06 倍。根据在 TT Lab 集群中测得的三组 PVC 大小、qemu-img 输出以及 CDI 源码中的两个计算函数,
2026-10-28 · 13 分钟阅读 #오픈소스#오픈소스 기여#KubeVirt#CDI#문서日志中打印的指针地址:CDI 的两行日志修改在 2 天 19 小时内被合并的全过程
在 CDI 中根据存储类(Storage Class)选择文件系统预留空间的函数里,有两行日志提示“未找到存储类”。因为两行都直接将 string 类型的存储类名称传给了 klog.V(3).Info,所以打印出来的是指针地址而不是名称,并且前后的空格也消失了。这是因为 fmt.Sprint 规则只在非字符串类型的值旁边添加空格。在撰写“阅读 KubeVirt 源代码”系列文章时发现了这一点,于是提交了一个两行的 PR(containe
2026-10-28 · 11 分钟阅读 #오픈소스#오픈소스 기여#KubeVirt#CDI#GoCDI 不了解 local-path:关闭沉睡 2 年 11 个月之久的 Issue 的十二行代码
由于 KubeVirt 的磁盘助手 CDI 无法识别作为 k3s 和 kind 默认存储的 local-path-provisioner(rancher.io/local-path),使用该 provisioner 的 StorageClass 的 StorageProfile 总是为空,并显示为“未识别的 provisioner”。我们在 TT Lab 集群的两个 local-path 类中确认了这一点,从 provisioner 源
2026-10-28 · 16 分钟阅读 #오픈소스#오픈소스 기여#KubeVirt#CDI#스토리지寻找无人使用的 Webhook、每6秒查询一次的 Operator:KubeVirt 主仓库 PR 在 2 天 16 小时内合并的过程
统计 TT Lab 集群的 virt-operator 在 59 天内向 API Server 发送的请求,发现寻找不存在的 Webhook 的 GET 请求有 843,995 次,全部返回 404。这个数字与 reconcile(调谐)的次数完全吻合,占 operator 总请求的 5.4%,且几乎占了所有非 2xx 响应的全部。原因是当 ContainerPathVolumes 功能门控关闭时,如果在 Informer 缓存中找不到
2026-10-28 · 16 分钟阅读 #오픈소스#오픈소스 기여#KubeVirt#쿠버네티스#오퍼레이터