您可能听说过在关于开源软件包仓库的讨论中经常提到的“镜像”一词。镜像到底是什么,您如何知道它是否适合您?
让我们从解释该词本身开始,以 Anaconda 仓库为例。镜像只是一个 Anaconda 仓库的本地副本,它允许用户从一个集中式的本地位置访问软件包。镜像可以是完整的、部分的,或者包含特定的软件包或软件包类型。
虽然镜像并非所有组织都需要,但以下是一些您可能选择镜像 Anaconda 仓库的原因。
安全
出于安全原因,大多数服务器除非是服务器的核心功能要求,否则没有通用的出站互联网访问权限。这意味着,如果您的团队在公司防火墙内操作,您将无法有效地利用 Anaconda 的软件包仓库。
镜像通过创建防火墙内用户可用的本地仓库版本来解决此问题。同样,您也可以在隔离环境中创建镜像,以帮助提高性能和安全性。
更好的带宽利用率
Anaconda 仓库非常庞大!包含所有 Mac、Linux 和 Windows 平台软件包的存档超过 250GB。如果您的团队中有多名成员单独访问公共仓库并下载软件包,您将很快耗尽带宽。通过创建仓库的本地副本,您可以显着减少带宽消耗并提高用户性能。
组织内部的一致性
Anaconda 仓库每天更新多次,以确保我们的用户可以访问我们支持的最新版本的开源软件包。虽然频繁更新无疑对我们的用户有利,但它们会在同一个团队或组织的成员使用略微不同版本的软件包时造成不一致。
创建镜像后,您可以确保组织中的每个成员都访问同一个版本的仓库。您可以选择使用“特定时间点”的副本,并确信每个人都使用同一个版本进行工作。
更短的构建时间
本地镜像可以提高整个网络的性能。本地镜像受益于在仓库和边缘机器(如桌面客户端、CI/CD 和生产系统)之间构建快速本地网络的机会。
例如,在 CI/CD 构建或测试自动化脚本中,每次运行都需要下载数十个 Conda 软件包,总计几 GB。将 CI/CD 自动化环境配置为连接到 Anaconda 仓库的本地镜像,可以消除您站点与 Anaconda 仓库之间的网络瓶颈,从而实现更快的环境创建和软件包构建。
业务连续性和容错性
除了性能提升之外,本地镜像还允许您构建容错性和定制的扩展功能以满足您的需求。即使 Anaconda 仓库由世界级的 CDN 支持,它能够实现高度可扩展性和正常运行时间,但本地镜像可以保护您免受公共互联网上的中断。它们可以让您的业务无中断地运行。此外,您可以以经济高效的方式沿网络中最关键的路径部署冗余的本地镜像。
如何镜像 Anaconda 仓库
如果您已经决定镜像是您组织的正确选择,那么下一步该怎么做呢?
镜像 Anaconda 仓库的功能包含在我们商业产品的付费订阅中(某些限制适用)。我们的免费软件 Anaconda Distribution 的用户不允许镜像。如果您不是 Anaconda 客户,但希望能够镜像我们的仓库,我们很乐意提供帮助!联系我们了解更多信息。