Fate单机部署(主机版本)

Fate单机部署(主机版本)

  • 1.常用网址
  • 2.环境配置
  • 3.主机单机部署核心
  • 4.部署流程
    • 4.1 基本配置
    • 4.2 检查端口
    • 4.3 获取资源并部署
    • 4.4 测试
      • 4.4.1 单元测试
      • 4.4.2 Toy测试
    • 4.5 安装FATE-Client和FATE-Test
    • 4.6 开启fateboard服务
    • 4.7 python命令
    • 4.8 flow命令

1.常用网址

Fate1.6.0联邦学习下载网站:https://github.com/WeBankFinTech/FATE
FATE官方网站:https://fate.fedai.org

2.环境配置

FATE单机部署指南——服务器配置:

数量 1
配置 8 core / 16G memory / 500G hard disk
操作系统 Version: CentOS Linux release 7
用户 User: app owner:apps

单机版提供2种部署方式,可以根据实际情况选择:
docker镜像安装FATE(推荐)
主机中安装FATE

本篇主要讲述主机中安装FATE

3.主机单机部署核心

在虚拟机的CentOS系统的主机(本机)里用python命令(或者flow命令)上传数据和配置文件并在fateboard(镜像自动配置)上展示出来

4.部署流程

4.1 基本配置

主机最好是Linux系统的CentOS或Ubuntu版本,Windows系统的电脑建议配置虚拟机+镜像,然后再进行部署操作
配置:VMware16+CentOS7.4
链接提供虚拟机、镜像以及Fate1.6.0框架,有需要的伙伴自取

链接:https://pan.baidu.com/s/1jcox1dXrnYF2M0Ss1eQNcw 提取码:8bve

Fate单机部署(主机版本)_第1张图片
网络设置注意:设置如图才可以在CentOS镜像系统中连接网络,其他的步骤都按照正常安装流程就行
Fate单机部署(主机版本)_第2张图片

4.2 检查端口

检查本地8080、9360、9380端口是否被占用

netstat -apln|grep 8080
netstat -apln|grep 9360
netstat -apln|grep 9380

4.3 获取资源并部署

下载独立版本的压缩包并解压缩

wget https://webank-ai-1251170195.cos.ap-guangzhou.myqcloud.com/standalone_fate_master_1.6.0.tar.gz
tar -xzvf standalone_fate_master_1.6.0.tar.gz

进入FATE目录并执行init.sh

cd standalone_fate_master_1.6.0
sh init.sh init

4.4 测试

4.4.1 单元测试

cd standalone_fate_master_1.6.0
source bin/init_env.sh
bash ./python/federatedml/test/run_test.sh

测试成功

there are 0 failed test

4.4.2 Toy测试

cd standalone_fate_master_1.6.0
source bin/init_env.sh
python ./examples/toy_example/run_toy_example.py 10000 10000 0

测试成功

success to calculate secure_sum, it is 2000.0

操作中所遇问题:
没有开启fate_flow_server服务,测试无法完成

python ./examples/toy_example/run_toy_example.py 10000 10000 0

Fate单机部署(主机版本)_第3张图片
方法1:在另一个终端开启fate_flow服务

python ./python/fate_flow/fate_flow_server.py 

Fate单机部署(主机版本)_第4张图片
方法2:在同一个终端开启fate_flow服务

cd python/fate_flow/
sh service.sh start
#sh service.sh restart|stop|status|start

Fate单机部署(主机版本)_第5张图片

开启fate_flow_server服务后,测试顺利完成

python ./examples/toy_example/run_toy_example.py 10000 10000 0

Fate单机部署(主机版本)_第6张图片

另一个终端显示
Fate单机部署(主机版本)_第7张图片

4.5 安装FATE-Client和FATE-Test

为方便使用FATE,我们提供了便捷的交互工具FATE-Client以及测试工具FATE-Test.

请在环境内使用以下指令安装:

python -m pip install fate-client
python -m pip install fate-test

适当时候可以使用-i https://pypi.tuna.tsinghua.edu.cn/simple加速

4.6 开启fateboard服务

fateboard页面显示Network Error
Fate单机部署(主机版本)_第8张图片
解决办法:开启fateboard服务

cd fateboard/
sh service.sh start 
#sh service.sh restart|stop|status|start

Fate单机部署(主机版本)_第9张图片
fateboard页面成功显示
Fate单机部署(主机版本)_第10张图片

4.7 python命令

上传联邦学习的横向逻辑回归默认数据

python ./python/fate_flow/fate_flow_client.py -f upload -c ./examples/dsl/v1/homo_logistic_regression/upload_data_host.json -drop=1
python ./python/fate_flow/fate_flow_client.py -f upload -c ./examples/dsl/v1/homo_logistic_regression/upload_data_guest.json -drop=1 
python ./python/fate_flow/fate_flow_client.py -f upload -c ./examples/dsl/v1/homo_logistic_regression/upload_data_test.json -drop=1 

上传成功
Fate单机部署(主机版本)_第11张图片
上传配置文件

python ./python/fate_flow/fate_flow_client.py -f submit_job -c ./examples/dsl/v1/homo_logistic_regression/test_homolr_train_job_conf.json -d ./examples/dsl/v1/homo_logistic_regression/test_homolr_train_job_dsl.json 

上传并训练成功
Fate单机部署(主机版本)_第12张图片

4.8 flow命令

fate-client初始化配置

flow init -c ./conf/service_conf.yaml
flow init --ip 127.0.0.1 --port 9380

Fate单机部署(主机版本)_第13张图片
上传联邦学习的横向逻辑回归默认数据

flow data upload -c ./examples/dsl/v1/homo_logistic_regression/upload_data_host.json --verbose --drop
flow data upload -c ./examples/dsl/v1/homo_logistic_regression/upload_data_guest.json --verbose --drop
flow data upload -c ./examples/dsl/v1/homo_logistic_regression/upload_data_test.json --verbose --drop

上传成功
Fate单机部署(主机版本)_第14张图片
上传配置文件

flow job submit -c ./examples/dsl/v1/homo_logistic_regression/test_homolr_train_job_conf.json -d ./examples/dsl/v1/homo_logistic_regression/test_homolr_train_job_dsl.json 

上传并训练成功
Fate单机部署(主机版本)_第15张图片
感谢大家的关注和支持,希望我写的文章能够帮助你们。
如有不足,还请各位多多指正!

你可能感兴趣的:(联邦学习,centos,linux,服务器)