云客户?
免费开始>
在MyJFrog中升级>
云的新功能>





概述

私有分发网络(Private Distribution Network, PDN)是一种轻量级的、精通存储的分发解决方案,它使您能够满足不断增长的分发需求,并为更多的消费者提供服务,同时仍然可以控制谁可以使用什么,特别是在受监管的组织中。使用PDN,节点被组织到PDN组中,提供弹性通过自动镜像和节点之间的预热缓存,可以轻松地进行大规模管理。您可以定义自己的拓扑结构,并在多层级联网络中部署PDN节点,作为内容缓存和网络优化。pdn提供与点对点下载相同的功能,并具有取代点对点下载解决方案的附加功能。

重要的

私人分销网络(PDN)受客户与JFrog的适用协议条款的约束

需求

以下是JFrog平台产品支持PDN的版本:hth华体会最新官方网站

  • JFrog Artifactory - 7.38.8
  • 〇JFrog发行2.12.3

重要的

您必须安装并配置发行版以将发布包分发到PDN组。

功能

PDN为您提供以下功能:

  • 速度:加速大规模、混合、复杂环境拓扑的大规模部署
  • 私有分布层:包括轻量级缓存层
  • 点对点安全、专有的企业级协议,跨大规模混合环境和设备(WAN/LAN)
  • 信任:可信分发,以确保安全性、遵从性和治理
  • 规模:支持大量并发下载/使用软件二进制文件
  • 简单的:原生DevOps流程,无管理开销,TCO低,定价灵活
  • 混合动力混合基础设施

JFrog订阅级别

自托管
企业+
页面内容




体系结构

私有分发网络(PDN)是边缘、PDN节点及其组的集合,它们形成了一个分散的网络来分发内容。PDN架构基于位于JFrog Artifactory或Edge服务器和客户端(Docker或HTTP)之间的互连节点网络。PDN节点充当客户机和Artifactory/Edge之间的缓存代理。

JFrog PDN架构由以下主要组件组成:

  • PDN (Private Distribution Network)服务器:一个专门的服务,负责发布和跟踪位于PDN节点上的可用工件,PDN服务器充当初始工件播种器。
  • 生产节点:一个独立的应用程序(或Docker镜像),与其他PDN节点互连以解析文件,该应用程序由客户端用于下载内容,并部署在专用主机或客户端机器上。PDN节点与其父节点和兄弟节点通信以解析文件(Pull)并分发发布包(Push)。它还从缓存的工件和按需(Pull)向外部客户端提供文件。
  • PDN节点组:互联节点的集合组成PDN节点组。组可以分层排列,形成以PDN服务器为根的PDN组树。PDN节点只能使用点对点方式从自己组内的节点下载文件,或者从其直接父组下载文件。每个组可以有几个子组,但只有一个父组。PDN节点自己的组称为SelfGroup,而父组称为ParentGroup
  • 客户:用于与Node交互的软件客户端,例如Docker或HTTP客户端。

负载均衡器支持

虽然不是PDN体系结构的一部分,但您也可以在此设置中添加负载平衡器。负载均衡器是一种配置,用于在PDN节点之间实现传入请求的负载均衡,从而在同一组内的PDN节点之间分配负载,同时确保它们之间的缓存持续同步。

在上面的例子中,PDN Node1和PDN Node2都有SelfGroup属性“East”,因此属于同一个组。PDN Node3具有SelfGroup属性“West”,因此属于组“West”。没有一个PDN节点配置了ParentGroup,因此在默认情况下,它们被直接放置在PDN服务器下,作为它们的ParentGroup。PDN Node1只能从PDN Node2或PDN Server下载文件,而PDN Node3只能从PDN Server下载文件。

PDN服务器可以连接到Artifactory的源实例或边缘实例。在上面的示例中,它连接到Source Artifactory。

在上面的例子中,PDN Node4到PDN Node7属于同一个组“NY”,并且在ParentGroup“East”下,可以解析它们自己和它们的ParentGroup之间的文件。


拓扑结构

您定义的拓扑和层次结构取决于您的组织的需求。因此,在继续设置PDN之前,我们建议您规划拓扑需求。下面是一些使用PDN可以实现的拓扑场景示例。

场景一—多组+单PDN服务器+单源JPD

在这个拓扑中,有m个多个(5)PDN组,每个组包含1000个PDN节点(A、B、C、D、E组),与A相连单PDN服务器直接连接到源JPD。

场景2—多组+单PDN服务器+分布边缘+源JPD

在这种拓扑中,有多个(5)PDN组,每个PDN组包含1000个PDN节点(组A、B、C、D和E),它们连接到一个PDN服务器,该PDN服务器连接到一个分发边缘,该分发边缘连接到一个源JPD。

场景3 -高可用性配置:多个第二级组(边缘到PDN节点)

通过将源JPD或分发边缘连接到多个PDN服务器来实现高可用性(HA)。每个服务器要么连接到多个组,要么连接到一个PDN组,然后再连接到子组。

在下面的例子中,我们有以下内容:

  • 一个单独的源JPD和两个相互连接的分布边。
  • 每个分发边缘连接两个PDN服务器。
  • 每个PDN服务器连接到自己的PDN组。
  • PDN组A与另一个包含500个PDN节点的PDN组(1)相连。


工作流

设置和注册

  1. 安装PDN服务器使用其中一个安装选项。
  2. 将服务器连接到Artifactory或Edge。
  3. 连接PDN节点或多个PDN节点创建组。

    您需要在与JFrog PDN服务器或PDN中的任何其他节点具有网络连接的主机上安装PDN节点。

    PDN节点连接到PDN服务器,并根据ParentGroup属性检索PDN节点父候选项。

  4. 验证连接。

分布

PDN支持按需拉动和基于推送的分发,如下所述。

通过客户端下载工件(按需拉取)

客户端可以主动地从PDN节点请求工件。

所有下载通信都使用Artifactory创建的证书链进行ssl加密

  1. 然后,PDN节点侦听客户端下载请求或来自其他PDN节点的请求。
  2. 当PDN节点代表客户端下载文件时,它们会定期向PDN服务器发布有关其存储文件片段的信息。该信息随后由PDN服务器存储。
  3. 一旦PDN节点从客户端获得下载请求,它就会向PDN服务器查询其他哪些已注册的PDN节点可能拥有该文件。PDN服务器响应,PDN节点开始从相关的PDN节点下载文件的可用部分。
  4. 当文件缓存在PDN节点上时,它们会被发布到PDN服务器,并且可以由其他PDN节点同时下载,根据Artifactory中定义的用户权限。下载文件过程从多个PDN节点并行执行,从而在多个PDN节点之间分配网络负载,以便从Artifactory执行快速有效的下载。

发布发布包(基于推送的发布)

PDN可以主动填充内容,以预热PDN节点上的本地缓存。

验证您是否具有发布包分发权限或已分配给项目/平台管理员角色,并且安装了JFrog分发版。

分配现有的发布包到PDN节点。您可以分发:

  • 指定PDN节点组。
  • 从源工件直接分发到连接到发布包版本的源工件或分发边缘的PDN节点组。

规则及指引

  • Docker支持货柜开放计划(OCI)和通用包。
  • 所有PDN节点都应该路由到访问根PDN服务器。
  • 同一组中的PDN节点应该能够相互访问。


入门:建立专用分销网络(PDN) >>

  • 没有标签
版权所有©2022 JFrog Ltd.