kubelet 中垃圾回收机制的设计与实现
space with errors in image deletion: %v", bytesToFree, spaceFreed, errors.NewAggregate(deletionErrors)) } return spaceFreed, nil }总结本文主要分析了 kubelet 中垃圾回收机制的实现,kubelet 中会定期回收 node 上已经退出的容器已经当 node 磁盘资源不足时回收不再使用的镜像来释放磁盘资源,容器以及镜像回收策略主要是通过 kubelet 中几个参数的阈值进行控制的。...阅读全文
“Debian 章程有毒” - OSCHINA
些代表有权力在考虑技术标准和共识的情况下做出他们认为最佳的决定。 至于 Debian 社区的项目层面,DPL 更是无权过问,每个项目的开发者都对项目有百分百的决定权。比如,个别开发者几乎可以完全控制他们维护的软件包;开发人员之间的技术分歧很大的时候,将由项目技术委员会处理;发布管理者与 FTP 主人有权最终决定项目实际发布的内容,以及何时发布;项目秘书负责确保遵循必要的程序;政策团队处理项目的大部分总体设计。 其次,DPL 是可以随时进行更换的,因为有一般决议(General Resolution)这样的通道,开发者们可以重新选举另外的 DPL、撤销 DPL 或代表的决定、修改基本文件并做出其他有约束力的决定。(如下图所示) 那么,DPL 到底是干什么的呢?主要分为两个方面: 在对外职能中...阅读全文
深入了解Docker背后的namespace技术
的demo之一,同时它会产生一个shell会话,这样你就可以在你的namespace中“闲逛”。你可以自己的方式探索与检查这些不同的namespace。因此让我们复制这个文件,并开始使用network namespace。 > cp skeleton.c network.c 在这个文件里有一个很特殊的变量,叫做clone_flags,大部分的变化将在此处发生。namespace主要由clone标志控制。network namespace的clone标记是CLONE_NEWNET。我们需要把int clone_flags = SIGCHLD;这一行改为 int clone_flags = CLONE_NEWNET | SIGCHLD;。这样调用clone就为我们创建一个新的network...阅读全文
提问的智慧 – 全文
议使用网页端,邮件客户端推荐使用 Outlook 2016 或 Foxmail。 准确简练地描述问题 问题的描述应该包含以下内容: 清晰的细节; 问题发生的环境(主机品牌、操作系统、应用程序,任何相关的),提供销售商的发行版和版本号(如:「Fedora Core 7」、「Slackware 9.1」等); 提问前做过的调查研究及对其的理解; 提问前为确定问题而采取的诊断步骤; 最近对计算机或软件配置的任何相关改变; 如果可能,提供在可控环境下重现问题的方法; 做大的努力预测黑客会提到的问题,并提前备好答案。 如果你认为是代码有问题,在可控环境下重现问题,并向黑客提供报告,这个的方法尤其重要。当你这么做时,你大有可能获得及时而有效的回复。 西蒙.泰瑟姆(Simon Tatham)曾写过一篇《如...阅读全文