Dragonfly 发布 v2.1.0 版本,P2P 文件分发系统
Dragonfly 最新正式版本 v2.1.0 现已发布。Dragonfly 是一款基于 P2P 的智能镜像和文件分发工具。它旨在提高大规模文件传输的效率和速率,最大限度地利用网络带宽。在应用分发、缓存分发、日志分发和镜像分发等领域被大规模使用。 具体更新内容如下: Features Console v1.0.0 已经发布,它是一个全新的可视化控制台,方便用户操作 P2P 集群。 新增虚拟网络拓扑探索功能,能够在 P2P 运行时探测节点之间的网络延迟,从而构建一个虚拟网络拓扑结构提供调度使用。 Manager 提供控制 Scheduler 可以提供的服务,例如在 Manager 中设置 Scheduler 不提供预热功能,那么 Scheduler 实例就会拒绝预热请求。 Dfstore提供GetObjectMetadatas和CopyObject接口,支持 Dragonfly 作为 JuiceFS 的后端存储。 新增Personal Access Tokens功能,用户可以创建自己的Personal Access Tokens在调用 Open API 的时候鉴权使用。 Manager REST 服务提供 TLS 配置。 修复当 Dfdaemon 没有可用的 Scheduler 地址时启动失败的现象。 新增Cluster资源单位,Cluster代表一个 P2P 集群,其只包含一个Scheduler Cluster和一个Seed Peer Cluster,并且二者关联。 修复Dfstore在 Dfdaemon 并发下载时,可能导致的对象存储下载失败。 Scheduler 新增 Database 配置,并且把之前 Redis 的配置信息移入到 Database 配置中,并且兼容老版本。 在 Dfdaemon 中使用 gRPC 健康检查代替net.Dial。 修复调度器过滤以及评估过程中candidateParentLimit可能影响到调度结果的问题。 修复 Scheduler 中的 Storage 在bufferSize为0 的时候,导致的无法写入下载记录的问题。 日志中隐藏敏感信息,例如 Header 中的一些 Token 信息等。 Manager 中 Scheduler、Seed Peer 等资源删除过程中,不再使用软删除。 Scheduler 数据库表中新增uk_scheduler索引,Seed Peer 数据库表中新增uk_seed_peer索引。 由于初期功能设计定位不清晰的原因,删除Security Domain和Security的功能。 Manager 和 Scheduler 新增 Advertise Port 配置,方便用户配置不同的 Advertise Port。 修复 Task 注册阶段状态机状态变更错误的问题。 Break Change 不再提供 Scheduler Cluster 和 Seed Peer Cluster 之间M:N的关系。提供了 Cluster 的概念,一个 Cluster 即表示一个 P2P 集群,并且一个 Cluster 只包含一个 Scheduler Cluster 和 Seed Peer Cluster,且二者是1:1的关联关系。 Console 更多详细可查看Manager Console。 AI Infrastructure Triton Inference Server 使用 Dragonfly 下载模型文件,可以参考 #2185。 TorchServer使用 Dragonfly 下载模型文件,现正在开发,预计 v2.1.1 版本可以使用,项目仓库在 Dragonfly Endpoint。 Fluid基于 JuiceFS运行时通过 Dragonfly 下载数据,正在开发,预计 v2.1.1 版本可以使用。 Dragonfly 助力火山引擎 AIGC推理业务 P2P 镜像加速。 社区中已经有很多案例,基于 P2P 技术使用 Dragonfly 分发 AI 场景中的文件。在 AI 推理阶段,推理服务并发下载模型可以有效通过 Dragonfly P2P 缓解模型仓库的带宽压力,从而提高整体下载速度。 详情可查看更新说明。