前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Harbor在云原生联邦学习平台FATE中的应用

Harbor在云原生联邦学习平台FATE中的应用

作者头像
Henry Zhang
发布2021-03-12 16:34:28
5910
发布2021-03-12 16:34:28
举报
文章被收录于专栏:亨利笔记亨利笔记

(本文作者陈家豪,系 VMware 中国研发云原生实验室工程师,联邦学习 FATE / KubeFATE 开源项目贡献者。本文节选自《Harbor权威指南》。)

作为云原生应用的必备组件, Harbor 已经在多个开源项目中得到集成和应用,本文介绍 Harbor 在联邦学习开源项目 FATE 及 KubeFATE 中的应用。

FATE (Federated AI Technology Enabler)是一个工业级的联邦学习框架,由微众银行发起并开源,后捐赠给 Linux 基金会,成为社区共同维护的开源项目。FATE 项目使用 Java 和 Python 等语言开发而成,早期版本在安装、部署时需要下载依赖软件包和进行较长时间的编译。FATE 从 1.1 版本开始,增加了全组件的容器化封装,在部署时无须下载复杂的依赖包和重新编译,使得 FATE 的部署得到了简化。为进一步使用云原生技术来管理、运维联邦学习平台,VMware 和微众银行等社区用户开发了KubeFATE 项目,致力于降低联邦学习的使用门槛和运维成本。

KubeFATE 将 FATE 的部署和配置流程自动化,使联邦学习平台的多个分布式的节点可用 Docker Compose 和 Kubernetes 两种方式部署,并提供了 API 和命令行工具与系统集成。在用户使用 KubeFATE 部署 FATE 平台时,虽然容器化部署方式节约了编译时间,但是遇到了下载镜像的问题。出于镜像较大(GB级别)、互联网网速等原因,国内用户往往不能顺利下载镜像。还有些企业内部的网络环境无法连接互联网,因此不能从 Docker Hub 等公有镜像源拉取镜像。

为了解决镜像下载的问题,KubeFATE 集成了 Harbor 镜像仓库的功能。用户可先在内网中安装 Harbor 服务,再把 KubeFATE 的镜像包和 Helm Chart 导入 Harbor ,在内网中安装和部署 FATE 时,就可以从 Harbor 获取镜像和 Helm Chart。Harbor 还提供了镜像的分发、远程同步和安全漏洞扫描等能力,在加速部署的同时提高了安全性。

在 FATE 版本更新时,用户可以从互联网下载新版本的镜像和 Helm Charts,再将其导入 Harbor 中供内部环境使用。另一方面, Harbor 除了充当本地镜像源,在网络条件允许的情况下(如开通网络防火墙),可通过镜像定时同步策略从 Docker Hub上获取 FATE 的镜像,以保证本地有最新版本的镜像。这样免除了手动导入 FATE 镜像的过程。此外,通过 Harbor 的镜像复制功能,可把镜像在多个数据中心之间进行复制,在遇到镜像的更新或丢失时可自动进行同步,从而简化运维复杂度。(本文为公众号亨利笔记原创文章)

KubeFATE 与 Harbor 集成的架构如下图所示。KubeFATE 以服务的形式运行在 Kubernetes 集群之上,用户可以通过 KubeFATE 命令行工具或者 API 与 KubeFATE 服务进行交互来管理 FATE 集群。完整的FATE集群包含 FATE-Board、 FATE -Flow、Rollsite、Node Manager 和 Cluster Manager 等多个容器,这些容器又分别对应不同的镜像,因此使用 Harbor 作为私有镜像仓库无疑能加速部署。

KubeFATE 使用了 Helm Chart 作为 Kubernetes 资源管理工具,因而能够实现FATE集群的定制化部署、动态扩缩容及在线升级等功能。KubeFATE 项目在公网上维护了一个 Chart 的仓库,该仓库对应 FATE 的不同版本,通过配置 KubeFATE 可在指定的仓库中获取最新的 Chart。(本文为公众号亨利笔记原创文章)

对于需要同时维护多个不同版本的 FATE 集群的用户来说,多个版本 Chart 的管理及同步会带来一定的复杂度。如下图所示,借助 Harbor 对 Chart 管理的能力,可以减轻用户的负担,特别是对于需要定制开发 Chart 的用户来说,只需为每个 KubeFATE 实例指定 Chart 仓库地址为内部的 Harbor ,就能实现在多个不同的 Kubernetes 集群中定制化部署 FATE。

KubeFATE 充分利用了云原生技术的优势,结合了 Harbor 的镜像和 Chart 的管理能力,具有以下优点。

◎免除构建FATE时需要各种依赖包的烦琐流程。

◎提供离线部署的能力,加速应用部署的速度。

◎实现跨平台部署FATE集群。

◎可按需灵活地实现多实例水平扩展。

◎升级实例的版本并进行多版本的维护。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-02-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 亨利笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • (本文作者陈家豪,系 VMware 中国研发云原生实验室工程师,联邦学习 FATE / KubeFATE 开源项目贡献者。本文节选自《Harbor权威指南》。)
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档