首页主机资讯使用Docker Compose 部署FATE v1.5.0

使用Docker Compose 部署FATE v1.5.0

时间2023-04-25 20:45:02发布访客分类主机资讯浏览829
导读:题图摄于Austin(本文作者系 VMware 中国研发云原生实验室工程师,从事联邦学习 FATE/ KubeFATE 开源项目开发。)需要加入KubeFATE开源项目讨论群的同学,请关注本公众号后回复 “kubefate” 即可。 VMw...

题图摄于Austin

(本文作者系 VMware 中国研发云原生实验室工程师,从事联邦学习 FATE/ KubeFATE 开源项目开发。)

需要加入KubeFATE开源项目讨论群的同学,请关注本公众号后回复 “kubefate” 即可。

VMware招聘机器学习和云原生开发工程师

FATE 已经发布了首个长期支持版本,怎样快速体验新版本的FATE来做联邦学习的实验任务呢,接下来我们带领大家一起使用 docker-compose 来快速部署 FATE v1.5.0 LTS。

本文将指导你在两台 Linux 主机上使用 docker-compose 部署两方的 FATE集群。(本文为公众号:亨利笔记 原创文章)

准备环境

使用  docker-compose 部署 FATE  需要三台 Linux 的机器,两个工作机和一个部署机。

硬件需求

  • 两台工作机
  • 一台部署机,只需要是 Linux 环境的机器就可以;

本文使用 VMware Workstation 来新建两台虚拟机,部署机使用本机的 Windows 的 WSL 环境,也可以使用上边两台机器的任意一台。(本文为公众号:亨利笔记 原创文章)

安装部署环境信息如下:

本文运行 FATE 的主机使用的是Centos  环境,由于 docker container 的运行不依赖主机操作系统,所以使用 Ubuntu 也是可以的,不过基础环境配置的命令会有一些不同。

基础环境

这部分需要同时在两个目标机器上操作

关闭防火墙

安装docker

如果你使用上面的方式安装 docker,不能成功,也可以使用 docker-ce 其他安装方式 (http://developer.aliyun.com/mirror/docker-ce)

安装docker-compose

# step 1: 下载Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# step 2: 增加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
# step 3: 创建指向/usr/bin的符号链接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# step 4: 测试安装结果
sudo docker-compose --version

如果你使用上面的方式安装docker,不能成功,也可以使用docker-compose (https://developer.aliyun.com/mirror/docker-toolbox)

新增用户

# 新增用户fate
sudo useradd -s /bin/bash -g docker -d /home/fate fate
# 设置用户密码
sudo passwd fate

配置免密

这部分需要在部署机上操作

# step 1: 生成公私钥
ssh-keygen
# step 2: 发送到partyA
ssh-copy-id -i ~/.ssh/id_rsa.pub fate@192.168.0.9
# step 3: 发送到partyB
ssh-copy-id -i ~/.ssh/id_rsa.pub fate@192.168.0.10

安装FATE

安装 FATE 比较简单,只需要下载相应的安装包,解压,配置,安装就可以了。接下来是具体操作:(本文为公众号:亨利笔记 原创文章)

下载安装包

在部署机下载 FATE 的 docker-compose 安装包

FATE的各个版本的安装包都可以在这里找到 

https://github.com/FederatedAI/KubeFATE/releases

修改配置

我们在partyA上部署9999,在partyB上部署10000,按顺序填写party_id和party_ip。

主要修改party_ip_listserving_ip_list,其他的可以默认不变。 如果想要使用spark计算引擎,修改computing_backend=spark即可。

第一次部署的时候镜像需要从docker hub下载,由于国内用户经常不能链接docker hub,可以使用hub.c.163.com的镜像,只需要配置RegistryURI就可以。

生成安装包

根据上文的配置生成相对应的安装文件包

bash generate_config.sh

这一步会生成部署FATE的两方的所有tar包。如果修改了配置文件parties.conf或者.env,那么就需要重新生成安装包。

部署

部署双方的FATE和FATE-Serving

bash docker_deploy.sh all

这一步会通过scp和ssh的方式将tar包拷贝到目标主机的对应目录,然后启动FATE集群。(本文为公众号:亨利笔记 原创文章)

这里使用了参数all直接部署了party10000和party9999的FATE与FATE-Serving,如果想要只部署一个部分,可以参考这里的详细使用(https://github.com/FederatedFATE/tree/v1.5.0/docker-deploy-deploy#deploying-fate-to-target-hosts )

检查FATE是否部署成功

所有的组件状态都是Up并且python容器中出现"* Running on http://x.x.x.x:9380/ (Press CTRL+C to quit)"的日志消息代表FATE已经成功启动。

测试FATE是否部署成功

显示job status is running代表任务已经开始运行,并且出现"success to calculate secure_sum, it is 2000.0"代表任务已经成功。(本文为公众号:亨利笔记 原创文章)

使用FATE

在使用WSL部署的时候,屏幕显示有 fateboard 和 notebook 的地址

查看fateboard

在浏览器分别打开双方的fateboard

  • partyA:http://192.168.0.9:8080
  • partyB:http://192.168.0.10:8080

使用notebook

查看notebook
  • partyA:http://192.168.0.9:20000
  • partyB:http://192.168.0.10:20000
使用notebook运行toy_example

step 1:打开 partyA 的 notebook 里面的 toy_example 的示例: 

http://192.168.0.9:20000/notebooks/Toy_Example/toy_example_submit_job.ipynb

step 2:修改默认的party_id

step 3:运行toy_example

出现success,使用notebook运行toy_example成功,接下来使用notebook完成自己的联邦学习模型建设吧!(本文为公众号:亨利笔记 原创文章)

需要加入KubeFATE开源项目讨论群的同学,请关注本公众号后回复 “kubefate” 即可。

参考文档:

https://github.com/FederatedAI/KubeFATE/blob/v1.5.0/docker-deploy/README.md

https://github.com/FederatedAI/FATE/blob/v1.5.0/examples/toy_example/README.md

要想了解云原生、人工智能和区块链等技术原理,请立即长按以下二维码,关注本公众号亨利笔记 ( henglibiji ),以免错过更新。

欢迎点 “在看”和赞。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

笔记部署公众号配置主机

若转载请注明出处: 使用Docker Compose 部署FATE v1.5.0
本文地址: https://pptw.com/jishu/8598.html
用宝塔面板安装Matomo内部部署 学习HTML DOM笔记

游客 回复需填写必要信息