谷歌解决 NVMe 驱动器太多导致 Linux 服务器重启太慢问题
谷歌方面正在致力于改进由于太多的 NVMe 驱动器,而导致的 Linux 服务器重新启动时间太长问题。缘于在于该公司的一些多驱动器服务器可能需要超过一分钟的时间才能让 Linux 内核执行其 shutdown 任务,而谷歌的这项改进工作也可能使其他用户受益。
我们的一些机器配置了许多 NVMe 设备,并且已针对严格的 shutdown 时间要求进行了验证。每个 NVMe 设备插入系统,通常需要大约 4.5 秒来 shutdown。一个具有 16 个此类 NVMe 设备的系统将需要大约 80 秒来 shutdown 并重新启动。
目前在总线级定义的 shutdown API 被定义为同步的。因此,系统中的设备越多,shutdown 所需时间就越长。这个 shutdown 时间极大地拖慢了机器的重启时间。
谷歌工程师在提交的补丁集中提出了一个总线级别的异步 shutdown 接口,修改了核心驱动程序、设备 shutdown routine 以利用新接口;同时保持与现有同步实现的向后兼容性,并利用新接口让所有基于 PCI-E 的设备在必要时使用异步接口语义。PCI-E 级别的实现也以向后兼容的方式工作,以允许现有设备实现与当前的同步语义一起工作。
借助异步 shutdown 接口并调整 NVMe 驱动程序以使用它,其重启以及最终的服务器 down time 可以轻松减少一分钟。
这个拟议的异步 shutdown 接口在目前的形式下只有约 100 行新代码,且谷歌只展示了 NVMe 设备利用这个异步 shutdown 接口的一个示例实现。科技网站 Phoronix 指出,随着现代高性能 Linux 服务器继续添加更多的 NVMe 驱动器和其他 PCIe 设备,Linux 内核的同步 shutdown 接口可能意味着额外的 downtime,希望谷歌提交的这些补丁能在短时间内设法向前推进,并以主线的方式调整更多的驱动程序来使用它。
更多详情可查看邮件列表。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Grafana Labs 发布高性能开源时序数据库:Grafana Mimir
Grafana Labs 宣布推出 Grafana Mimir,号称是世界上可扩展性最强、性能最高的开源时序数据库。Mimir 支持将指标扩展到 10 亿甚至更多,具有简化的部署、高可用性、多租户、持久存储以及比 Cortex 快 40 倍的超快查询性能。 Mimir 托管在https://github.com/grafana/mimir,采用 AGPLv3 开源许可协议。 Grafana Labs 通过将在Cortex 中构建的最佳功能与为大规模运行 GEM(Grafana Enterprise Metrics) 和 Grafana Cloud 而开发的功能相结合,从而开发出了 Mimir 的功能。官方表示可将 Mimir 视作 Cortex 的替代方案,对于大多数使用场景,从 Cortex 迁移到 Mimir 只需不到 10 分钟。 Mimir 包含部分商业功能,例如使用水平可扩展、“拆分”压缩器的无限基数,以及通过分片查询引擎进行的快速、高基数查询。 Cortex、Grafana Mimir 和 Grafana Cloud & Grafana Enterprise Met...
- 下一篇
研究发现超 200 个针对 Azure 开发人员的恶意 NPM 包
JFrog 研究人员 Andrey Polkovnychenko 和 Shachar Menashe 在一份报告中指出,截至 3 月 21 日他们已观察到不少于 218 个恶意 NPM 包。检查后发现这都是针对 Azure 开发人员的新的大规模供应链攻击,攻击者采用了一个自动脚本来创建账户并上传覆盖整个 scope的恶意软件包,旨在窃取个人身份信息。 除了针对@azurescope外,还有@azure-rest、@azure-tests、@azure-tools和@cadl-lang也是目标。在这些恶意包发布大约两天后,JFrog 向 NPM 维护人员进行了披露,其迅速进行了删除;但在此之前,每个软件包已平均被下载了约 50 次。 根据介绍,攻击人员使用的软件供应链攻击方法是typosquatting,他们只是创建了一个新的(恶意的)包,其名称与现有的 @azure scope package 相同,但删除了 scope name。举例如下: 这是一个合法的 azure npm 包 以及它的恶意对应物 “攻击者依赖于一些开发人员在安装软件包时可能错误地省略了@azure 前缀这一事实。...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7设置SWAP分区,小内存服务器的救世主
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS关闭SELinux安全模块