正如 Brent 在早期的一篇博客中提到的,我们将替换旧的 CNI 堆栈 Netavark 和 Aardvark-dns。随着 Podman 5.0 的临近,我们决定这将是从我们的上游版本中删除 CNI 支持的最佳时机。正如之前的博客文章中提到的,我们很可能会提供一个构建选项,以便一些“稳定”的发行版即使在 5.0 版本上仍然可以选择 CNI。但是,我们上游维护者将不再直接支持 CNI 后端,因此如果需要任何关键修复,则需要来自用户和/或发行版。需要明确的是,这只取消了 Podman 对 CNI 的集成,CNI 项目本身仍在由 Kubernetes 维护和使用。
我们计划在三月份的某个时候发布 Podman 5.0,以便及时赶上 Fedora 40。因此,Fedora 40 很可能不会附带支持 CNI 的 Podman。
为什么要删除 CNI 支持?
Netavark 和 Aardvark-dns 由我们直接维护,我们所有的功能开发都在那里进行。虽然 CNI 在 Podman 中通过其插件架构非常灵活,但我们旨在实现更紧密的集成,而 netavark 使这变得容易得多。保留 CNI 代码需要我们维护人员额外的工作,它需要更新/测试,用户报告的错误也需要分类和修复。为两个不同的网络后端做这些事情会增加额外的精力,我们希望不再承担这些。记录两种实现之间不同的行为很难,并且会让可能不知道这些细节的用户感到困惑。因此,只支持 netavark 应该有助于我们在未来开发更多的网络功能。
Netavark 无法工作或不支持我所需的功能
如果您在迁移到 netavark 时遇到错误、问题或缺少功能,请告诉我们,我们可以研究实现缺少的功能。您可以在 Podman 或 Netavark GitHub 存储库或我们的沟通渠道上与我们联系。
发表回复