全部产品
阿里云办公

操作手册

更新时间:2018-11-09 08:56:27

1. 渲管系统结构

A) 渲管与各云产品的详细关系

渲管与各云产品的依赖如下图所示。rm_c

B) 渲管系统内部结构

p0渲管系统由如下 3 部分组成:

  • render manager: 基于 flask 框架开发web 应用,主要负责和用户进行人机交互,接收用户请求。
  • render master:后台背景进程,根据人机交互的结果进行作业提交以调度。
  • 本地数据库:主要存放用户提s交的渲管请求,待渲管任务结束后自动删除该信息。

2. 渲管的部署

在阿里云云市场有已安装了渲管的 ECS 镜像免费售卖,在启动 ECS 实例时,将镜像指定为镜像市场中的 rendermanager,启动即可使用。

A) 获取渲管镜像

官方渲管镜像:RenderManager 镜像,创建 ECS 实例时,选择镜像市场,直接搜索以上关键字即可获取。自定义渲管镜像:基础镜像建议采用 Ubuntu 14.04 64 位,按照以下步骤安装渲管系统。

  1. # 安装 flask
  2. sudo apt-get install python-flask -y
  3. # 安装 uwsgi
  4. sudo apt-get install uwsgi uwsgi-plugin-python -y
  5. # 安装 nginx
  6. sudo apt-get install nginx y
  7. # 修改 nginx 配置,在 http 模块里添加新的 server
  8. #
  9. # server {
  10. # listen 1314; #listen port
  11. # server_name localchost;
  12. # location / {
  13. # include uwsgi_params;
  14. # uwsgi_pass 0.0.0.0:8818;#this must be same app_config.xml
  15. # }
  16. # }
  17. #
  18. vi /etc/nginx/nginx.conf
  19. # 启动 nginx 或重启
  20. nginx
  21. # 获取最新版渲管
  22. wget http://openrm.oss-cn-qingdao.aliyuncs.com/render_manager_release/latest/rm.tar.gz
  23. # 解压
  24. tar xf rm.tar.gz
  25. # x.x.x 为版本号
  26. cd rm-x.x.x
  27. # 指定安装目录部署
  28. python deploy.py /root/rm_install/
  29. # 启动
  30. cd /root/rm_install/rm_install_s && python rm_cmd.py start
  31. # 登陆渲管 http://installed_machine_ip:1314/rm/login
  32. # 初始账号: rm_admin 密码: rm_admin@123
  33. # 若监听在公网,建议采用https

B) 开通 ECS 实例

请指定某 ECS 实例部署渲管系统,配置参数,请参考创建 Linux 实例

  • 公网 IP 地址选择分配。
  • 镜像市场: RenderManager 或者自定义镜像
  • 设置密码

3. 渲管系统升级

p43页面右上角的版本信息中可以查看是否有可升级的新版本,第一次使用渲管前,建议升级到最新版本后再使用渲管(每次只能升级到下一版本,所以升级后请查看是否已是最新版本)。

4. 渲管系统配置

p44配置页面里有渲管系统的各种系统设置。第一次使用渲管时,必须设置SECURITY_ID,SECURITY_KEY,OSS_BUCKET 三个值,不然渲管无法使用。

  • SECURITY_ID 和 SECURITY_KEY 即阿里云账号的 AccessKeys 信息,可以在阿里云官网控制台创建。
  • OSS_BUCKET 可以在 OSS 的控制台创建,用于存储渲管自身的 worker 包已经渲染数据。

渲管默认使用青岛(华北1)区域,如果使用其他区域的 BatchCompute,请修改配置中的OSS_HOST(OSS_BUCKET 必须与 OSS_HOST 属于同一个region)与 BATCHCOMPUTE_REGION,每个 REGION 的 OSS_HOST 也可以工单咨询获取。 区域的选择和计算节点的镜像区域保持一致,若计算节点镜像在深圳区域,则渲管的区域信息也必须是深圳,同时 OSS BUCKET 也必须是该 REGION 下的 BUCKET;若使用批量计算官方提供的计算节点镜像则需要选择深圳 REGION。p45

其他配置项,请参考页面上的说明。

5. OSS数据上传

提交渲染作业前,一定要将渲染用到的数据上传 OSS,在计算节点启动后再上传的数据将不能在计算节点中访问到。

由于 OSS 页面控制台上传数据有大小限制,所以上传数据建议使用 OSS 的 命令行工具(类 linux系统)、windows 客户端或者 MAC 客户端

参考 更多 OSS工具

6. 计算节点镜像制作

渲染客户如希望定制计算节点镜像,请参考:自定义镜像

7. 计算节点镜像管理

A) 添加计算节点镜像

在镜像管理页面,可以添加计算节点镜像 ID。add_image

B) 给计算节点镜像配置渲染软件信息

在添加完计算节点镜像 ID 后,在镜像信息页面可以点击添加软件并配置软件信息。image_config

  • 在配置软件信息时,需要填入渲染软件的名称,渲染文件的后缀(用于识别渲染文件)以及执行代码。
  • 执行代码(要求 python 语法)会在渲管 worker 中执行,render_cmd 变量即渲染时的命令行,命令行应根据实际安装的渲染软件来填写,比如渲染软件的路径,以及一些参数。渲管中的模板只是个示例,实际使用需要微调。

render_cmd

渲管已经预定义了一些变量和函数,在执行代码中可以调用这些变量和函数,例如$CPU在执行期会被替换成实际的cpu核数,$START_FRAME在执行期会被替换成起始帧号。

如果想增加自定义参数,可以选择添加参数,添加的自定义参数会需要在提交作业时填入。关于所有的可用变量可在软件配置页面点击查看。

$OUTPUT_LOCAL_DIR这个变量即创建项目时配置的节点内临时输出路径,渲染的输出结果应该放在该路径下(大部分渲染器都支持在命令行中指定输出路径),在渲染结束后该目录下的数据会被传输到 OSS。

8. 项目管理

A) 项目创建

创建项目时需要指定 OSS 数据映射,计算节点镜像,虚拟机内的临时输出路径,OSS 输出路径。

i. 计算节点镜像

创建项目时选择的计算节点镜像(需要先在镜像管理页面添加计算节点镜像)是提交 AutoCluster 作业时使用的镜像,如果提交作业时指定了集群(在集群管理页面可以创建)则作业直接跑在所指定的集群中。

ii. OSS数据映射

OSS 数据映射(或者称 OSS 数据挂载),可以将 OSS 上的数据映射到计算节点的本地路径(windows 是盘符),一个作业中的所有计算节点可以共享访问到相同的数据。OSS 数据挂载有如下功能或限制:

  1. 映射的目的路径必须根据计算节点镜像实际的操作系统类型进行填写,否则会导致挂载失败,windows 只能映射到盘符(例 G:),linux 必须是绝对路径。
  2. 可共享读取访问 OSS 上的数据。
  3. 不支持修改 OSS 上已存在的文件和文件夹名称。
  4. 选择 WriteSupport 后,支持本地(挂载路径下)文件和文件夹的创建,以及新建文件的修改。
  5. 挂载的本地路径里的改动只是本计算节点可见,不会同步到 OSS。
  6. 在 Windows 系统中,在挂载时刻已存在的文件夹中创建的文件或文件夹将不支持删除操作,linux 系统可以。
  7. 选择 LockSupport 后,将可以使用文件锁功能(只影响 windows)。
  8. OSS 数据挂载会有分布式cache(集群内),所以在大规模并发读取数据时性能较好(能达到 10MB~30MB,200 台并发,读取 20G 数据)。
  9. OSS 路径必须以’/’结尾。

iii. OSS 输出目录与临时本地输出目录

渲染作业结束时,计算节点中的临时输出目录中的数据将会被传输到 OSS 输出目录中。临时输出路径格式必须与节点的操作系统类型对应,不然会出错。

B) 提交渲染任务

p41选择目的集群和场景所在的 OSS 路径前缀后进入提交的详细页面,选中场景文件的上一级目录,可以被提交渲染的场景文件则会被列出,勾选想要渲染的文件,选择配置的渲染软件和起止帧,即可提交渲染作业。

可指定节点数量,如果指定集群,并发数量上限是集群的节点数上限。填入的起止帧会均匀的分布在各个计算节点被渲染。p42

任务结束后可以在OSS上查看输出结果,如果开启自动下载(配置页面设置),渲管会在任务结束后将OSS上的输出结果下载到渲管部署的机器上。

C) 渲染日志

在节点列表页面,点击节点可以查看各种日志,渲管 worker 日志里都是渲管系统 worker 的日志,里面可以查看该计算节点中运行的实际渲染命令行。

渲染器标准输出和渲染器标准输出里的日志,就是渲染软件的输出日志。

p47

9. 调试

新启动的渲管需要进行配置,并进行调试然后再提交大规模的渲染任务。

配置完,应该先提交1帧测试任务,查看错误日志(渲管 worker 日志和渲染器标准输出)调整渲染软件配置(主要是修改渲染命令行),走通全流程并确认结果没有问题后才进行正式生产渲染。

当作业失败的时候可以在作业信息中查看失败原因项。p46

建议创建一个集群然后将作业提交到该集群进行调试(AutoCluster 的作业需要启停计算节点,比较费时)。

10. 集群管理

在集群管理页面可以创建自定义集群,需要选择所需的计算节点镜像 ID,节点的实例类型(BatchCompute 的不同区域可能支持的实例类型和磁盘类型不同,详细可以提工单咨询)。

磁盘类型和磁盘大小(根据实际制作的计算节点镜像的磁盘大小选择,选择过小会导致无法启动计算节点)。创建好的集群可以动态调整节点数量,甚至调整数量到 0。p48