标签: #오픈소스
用亲手运行、亲手测量的数据来写 Kubernetes、DevOps 与 MLOps · 13 篇
带有 #오픈소스 标签的文章共 13 篇,最新一篇发布于 2026-10-28。
常一起出现的标签: #오픈소스 기여 8 #오픈소스 기여 기록 7 #영어 6 #영어 표현 6 #오늘의 영어 표현 6
服务器听不见的麦克风:将 Gemini Live API WebSocket 示例更新为当前格式的历程
Gemini Cookbook 中的 WebSocket 版 Live API 入门示例使用已废弃的 mediachunks 发送麦克风声音和屏幕,在每个对话轮次结束时清空播放队列,并且只播放消息的第一片断。TT Lab 的语音对话中继使用的是相同的协议,即将 realtimeInput.audio 和 interrupted 信号作为同一协议使用,因此我提交了一个 PR (google-gemini/cookbook1433) 以使其
2026-10-28 · 16 分钟阅读 #오픈소스#오픈소스 기여#Gemini#Live API#Python当文档仍在第一行使用两年前已废弃的 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#쿠버네티스#문서提出两个修复方案并让负责人选择:Kubeflow Trainer 安装文档从 v2.1.0 升级到 v2.3.0 的过程
Kubeflow Trainer 的安装文档固定了 VERSION=v2.1.0,而在同一页面的下方,却要求使用该版本 Helm Chart 中并不存在的 --set runtimes. 和 --set crds.enabled。由于 2.1.0 版本的 Chart 既没有这两个键,也没有对应的值验证架构,Helm 会在没有报错的情况下忽略这些值,导致按照文档从上到下操作的人安装出来的环境里没有任何训练运行时。由于之前曾有过“仅升级版本
2026-10-28 · 12 分钟阅读 #오픈소스#오픈소스 기여#Kubeflow#Helm#문서请求 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#쿠버네티스#오퍼레이터Let me know if I'm missing something: 留出可能存在理解偏差的空间的一行代码
当你认为这是一个 Bug,但它可能是有意设计时,可以在句尾加上 Let me know if I'm missing something。它的意思是「如果我有什么漏掉的地方,请告诉我」,既表达了你的观点,又尊重了对方的上下文。本文将梳理 miss 的含义、使用现在进行时的原因、与 Correct me if I'm wrong 的区别,以及韩国人经常滥用的 Sorry if I'm wrong。
2026-10-27 · 5 分钟阅读 #영어#영어 표현#오픈소스#이슈#코드 리뷰Would you be open to ...?: 发送 PR 前征求方向的礼貌建议
在直接发送包含重大修改的 PR 之前,用来询问维护者意向的表达就是 Would you be open to ...?。因为它的意思是“您会有兴趣接受……吗?”,所以在提出建议的同时承认了决定权在对方手中。后面接动名词(-ing)或名词的语法、与 Can I ...? 和 Should I ...? 的区别,以及韩国人常犯的过度礼貌表达将在下文进行整理。
2026-10-27 · 5 分钟阅读 #영어#영어 표현#오픈소스#이슈#제안As far as I can tell: 在确信与谦逊之间,「据我所见」
当你找到了原因,但又无法 100% 确定时,可以在句首加上 As far as I can tell。它的意思是「在我确认的范围内是这样的,但我可能有所不知」,从而同时传达出你论点的依据与局限性。本文将总结缩写 AFAICT、它与 I-think 的区别,以及如何纠正韩国人经常滥用 In my opinion 的习惯。
2026-10-27 · 5 分钟阅读 #영어#영어 표현#오픈소스#이슈#코드 리뷰I can't reproduce this on ...: 无法重现时的温和表达技巧
当你在自己的环境中无法重现别人提出的 Bug 时,常用的表达就是 I can't reproduce this on ...。核心在于传达的不是“你错了”,而是“在我的环境中表现不同”,并在 on 后面加上你测试的环境。本文将总结简写形式 repro、could not 与 can't 的区别,以及礼貌请求重现信息的方法。
2026-10-27 · 6 分钟阅读 #영어#영어 표현#오픈소스#이슈#버그 보고What did you expect to happen: Bug Report 的基础,期望的行为与实际的行为
Bug Issue 的核心是“你期望发生什么,而实际发生了什么”。Kubernetes 的 Bug 报告模板也将 What happened? 和 What did you expect to happen? 放在最前面。本文将总结如何区分 Expected behavior 和 Actual behavior、如何对齐时态与冠词,以及如何修正韩国人经常使用的“It doesn't work”这一行简短报告。
2026-10-27 · 7 分钟阅读 #영어#영어 표현#오픈소스#이슈#버그 보고Happy to take a stab at this:当我决定承接某个 Issue 时
在开源社区的 Issue 下留言“我来试试”时,最自然的一句表达就是 Happy to take a stab at this。由于 take a stab at 是一个表示“尝试一下”的非正式习语,它既不会过分夸大自信,又能清晰地表达意愿。本文将梳理其含义与礼貌程度、Issue 评论及 Slack 的例句、与 I'd like to work on this 的区别,以及韩国人常犯的语病。
2026-10-27 · 6 分钟阅读 #영어#영어 표현#오픈소스#이슈#오픈소스 기여