部署可视化后端服务

总览

可视化服务为「天枢平台」提供了OneFlow框架下的训练可视化功能,需要与平台前端、后端搭配使用。其中共包含有三个服务:

  • http 服务:采用python django 开发,负责前后端数据的接收与返回。
  • parser 服务:负责解析可视化日志文件,记录用户的活跃状态与监听可视化日志。
  • monitor 服务:负责监视用户是否为活跃状态,若用户非活跃则向 parser 发送 kill user 消息。

准备环境

安装如下软件环境

  • Redis: 5.0+

部署方案

这里会提供两种部署方式:

  • 快速部署
  • 分步骤部署

快速部署

note

部署指南:

  • 拉取 Dubhe git 仓库最新源码至 root 目录
  • 根据部署环境,修改 dubhe-visual-server 目录下的配置文件
cd Dubhe/dubhe-visual-server
vim config.ini
  • 执行init.sh脚本,下载并安装 conda 环境,并创建代码运行环境 dubhe-virtual(python3.7.7)
# 用source执行脚本,不要使用bash执行,脚本执行过程中需要Enter或者输入yes,请按提示操作
source init.sh
# 启动可视化服务
source start_server.sh

如果你想看更详细的部署过程,可以往下看分步骤部署过程。

分步骤部署

获取源码

拉取 Dubhe git 仓库最新源码至本地,再进入根目录;

# 进入代码根目录
cd dubhe-visual-server
修改dubhe-visual-server目录下的配置文件config.ini

安装依赖

  • 依赖 Python3.7 环境,使用 Anaconda 创建虚拟环境
#!/bin/bash
echo '开始下载anaconda,版本Anaconda3-2020.07-Linux-x86_64 ...'
wget https://repo.anaconda.com/archive/Anaconda3-2020.07-Linux-x86_64.sh
echo '安装anaconda环境 ...'
bash Anaconda3-2020.07-Linux-x86_64.sh
echo 'export PATH=$PATH:/root/anaconda3/bin'>>/root/.bashrc
source /root/.bashrc
echo 'conda 安装完毕,执行依赖环境初始化操作...'
conda env create --file dubhe_visual.yaml
echo 'conda dubhe_visual虚拟环境初始化成功,进入环境并执行数据初始化操作...'
conda activate dubhe_visual
cd backend/
python manage.py migrate
echo '数据库初始化成功,启动服务请执行:source start_server.sh'

修改配置

根据部署环境,修改如下文件:

config.ini

config.ini中配置说明 :::

# http服务相关
[httpserver]
# True或False,表示是否启动django调试
DjangoDebug =
# 日志解析服务相关
[parser]
# 可视化日志的根目录,解析服务会从该目录下查找某个用户的可视化日志,需根据实际环境情况对dubhe-dev进行修改
LogdirBase = /nfs/dubhe-dev/train-manage
# 通用配置
[common]
# redis所在主机
RedisHost =
# redis启动端口
RedisPort =
# 使用redis数据库序号
RedisDB =
# redis认证密码
RedisPassword =
# 用户过期时间,若用户未进行操作时长大于该时间,则monitor服务会kill掉该user释放资源
UserExpirationTime =

启动服务

# 默认指定启动端口 9898
source start_server.sh

停止服务

source stop_server.sh
Last updated on