serving-server
serving-server用于实时处理在线预测请求,理论上serving-server需要从fate-flow加载模型成功之后才能对外提供服务。在FATE中建好模型之后,通过fate-flow的推送模型脚本可以将模型推送至serving-server。 推送成功之后,serving-server会将该模型相关的预测接口注册进zookeeper ,外部系统可以通过服务发现获取接口地址并调用。同时本地文件持久化该模型,以便在serving-server实例在集群中某些组件不可用的情况下,仍然能够从本地文件中恢复模型。
serving-proxy
serving-proxy 是serving-server的代理,对外提供了grpc接口以及http的接口,主要用于联邦预测请求的路由转发以及鉴权。在离线的联邦建模时,每一个参与方都会分配一个唯一的partId。serving-proxy维护了一个各参与方partId的路由表,并通过路由表中的信息来转发请求。
serving-admin
serving-admin 提供在线集群的可视化操作界面,可以查看管理集群中各节点的配置以及状态、查看模型列表、流量的调控、并能提供一定的监控的功能。
zookeeper
zookeeper 用户各组件的信息同步协调以及服务注册于发现
================================================================
=============================================================
在目标服务器(192.168.65.161 192.168.65.162 )root用户下执行
vi /etc/profile
在上图红线行这前插入以下内容
export JAVA_HOME=/data/projects/fate/common/jdk/jdk-8u192
export JRE_HOME=${JAVA_HOME}
export CLASSPATH=.: J A V A H O M E / l i b : {JAVA_HOME}/lib: JAVAHOME/lib:{JRE_HOME}/lib
export PATH= J A V A H O M E / b i n : {JAVA_HOME}/bin: JAVAHOME/bin:PATH
插入后如下图所示:
然后保存退出,执行如下命令:
source /etc/profile
java -version
看到如下信息就说明执行成功了,再按照相同的步骤完成对192.168.65.162的配置。
在目标服务器(192.168.65.161 192.168.65.162 )app用户下执行
注意:切换为app用户
(1) 创建安装目录并下载zookeeper软件及解压
cd /data/projects
mkdir zookeeper
wget --no-check-certificate https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz
tar xzf apache-zookeeper-3.6.3-bin.tar.gz
如果电脑没有安装wget,还需要安装wget,执行命令:
yum install wget
如果出现下载异常的问题,大家可以使用迅雷下载,把地址复制到迅雷里面,就可以下载下来。
下载完成后再导进虚拟机里面。
(2) 配置zookeeper
cd /data/projects/apache-zookeeper-3.6.3-bin/conf
mv zoo_sample.cfg zoo.cfg
vi zoo.cfg
改动就两个地方,第一个地方是路径:dataDir=/data/projects/zookeeper
第二个地方是在末尾增加:admin.enableServer=false
(3) 启动zookeeper
cd /data/projects/apache-zookeeper-3.6.3-bin/bin/
sh ./zkServer.sh start
如上图,看到这样的状态就说明zookeeper启动成功了。接下来改干啥呢?当然是配置192.168.65.162了。千万别忘了!!!
在目标服务器(192.168.65.161 192.168.65.162 )app用户下执行
(1) 安装unzip解压软件
sudo yum -y install unzip
如果是Ubuntu,则执行:
sudo apt-get install unzip
(2) 安装server
下载软件
cd /data/projects
wget https://webank-ai-1251170195.cos.ap-guangzhou.myqcloud.com/fate-serving-server-2.0.5-release.zip
创建目录并解压下载的软件
mkdir fate-serving
mkdir fate-serving/server
unzip fate-serving-server-2.0.5-release.zip -d fate-serving/server/
(3) 修改配置文件并启动服务
vi fate-serving/server/conf/serving-server.properties
按照上图标注的红框修改,然后退出保存。注意第一个红框处host修改为192.168.65.161,guest修改为192.168.65.162。
使用如下命令启动server服务:
cd /data/projects/fate-serving/server
sh service.sh restart
出现上图的log说明启动成功了
在目标服务器(192.168.65.161 192.168.65.162 )app用户下执行
(1) 下载软件并解压
cd /data/projects
wget https://webank-ai-1251170195.cos.ap-guangzhou.myqcloud.com/fate-serving-proxy-2.0.5-release.zip
mkdir fate-serving/proxy
unzip fate-serving-proxy-2.0.5-release.zip -d fate-serving/proxy/
(2)修改配置文件并启动
vi fate-serving/proxy/conf/application.properties
按照上图中修改,说明:第一个红框中配置的事Party ID,host是10000,guest是9999。第三个红框中的两个字段被注释了,要打开。
然后执行下面的命令启动服务
cd fate-serving/proxy/
sh service.sh restart
出现上图的log说明启动成功了
(3) 修改host的proxy服务route-table
cd fate-serving/proxy/conf/
vi route_table.json
{
“route_table”: {
“default”: {
“default”: [
{
“ip”: “192.168.65.161”,
“port”: 8000,
“useSSL”: false
}
]
},
“10000”: {
“serving”: [
{
“ip”: “192.168.65.161”,
“port”: 8000
}
]
}
},
“permission”: {
“default_allow”: true
}
}
(4) 修改guest的proxy服务route-table
由于guest的请求只会向外发送,所以只需要配置出口ip端口就好, 如下代码所示只需要配置default转发规则,则会将所有请求转发至出口ip
{
“route_table”: {
“default”: {
“default”: [
{
“ip”: “192.168.65.161”,
“port”: 8869
}
]
},
“9999”: {
“serving”: [
{
“ip”: “192.168.65.162”,
“port”: 8000
}, {
“ip”: “192.168.65.162”,
“port”: 8001
}
]
}
},
“permission”: {
“default_allow”: true
}
}
在目标服务器(192.168.65.161 192.168.65.162 )app用户下执行
(1) 下载软件并解压
cd /data/projects
wget https://webank-ai-1251170195.cos.ap-guangzhou.myqcloud.com/fate-serving-admin-2.0.5-release.zip
mkdir fate-serving/admin
unzip fate-serving-admin-2.0.5-release.zip -d fate-serving/admin/
放一张图,虽然没有啥用,就是为了看看log
(2) 修改配置文件并启动
vi fate-serving/admin/conf/application.properties
只修改红框标注的地方,其他的不用改。注意host和guest都要修改。
然后启动服务,执行如下命令:
cd fate-serving/admin/
sh service.sh restart
出现上图的log说明启动成功了。
打开浏览器输入http://192.168.65.161:8350/
用户名和密码均输入admin后登录看到如下页面
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
五、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。