亚马逊AWS官方博客

快速开启云中渲染之路

背景介绍

媒体行业中会大量用到渲染软件,如动画制作、电影和电视特效制作、电视广告制作等;其它行业中也会有渲染制作的需求,如游戏CG动画、AR/VR场景、室内设计等。在本地渲染常常面临资源不足的问题,而公有云以其弹性、扩展性成为大规模渲染的最佳选择。

亚马逊云计算具备承载大规模渲染负载的能力,同时在渲染调度、远程展现、共享文件系统等方面都拥有成熟的产品和服务,如广受好评的渲染调度软件Thinkbox Deadline,高性能远程显示协议NICE DCV等。为了进一步方便客户,亚马逊云科技解决方案研发中心开发了云中渲染农场解决方案(Cloud Rendering Farm Solution),使客户可以一键部署云中渲染农场,快速开始渲染任务。

 

架构与工作原理

解决方案的工作原理如下图:

 

部署此解决方案会创建以下资源:

(1)Amazon Virtual Private Cloud (VPC)

此解决方案会在两个可用区中各创建一个公有子网和一个私有子网。公有子网为显示节点和NAT Gateway提供公网访问;私有子网为其余节点提供网络层安全防护。

 

(2)Amazon EC2

显示节点(Deadline Monitor):部署在公有子网中,用于图形化管理渲染任务、查看渲染结果、传输文件,以及作为跳板机登录其他EC2实例进行调试。

管理节点(Deadline Repository):部署在私有子网中,用于调度所有渲染任务到工作节点中,并存储任务、节点的状态与日志。

工作节点(Deadline Worker):部署在私有子网中,安装渲染软件,承担渲染任务。

授权节点(Deadline License Server):部署在私有子网中,用于为所有使用Deadline软件的节点授权。

 

(3)Amazon Identity and Access Management (IAM)

用于用户对亚马逊云科技资源的访问权限管理,和服务之间的访问权限管理。

 

(4)Amazon Elastic File System (EFS)

默认共享文件存储位置,节点的挂载在创建时会自动配置好。您也可以选用其他文件系统,如JuiceFS等。

 

部署前提

(1)确保您已经拥有激活的亚马逊云科技中国区账户,如果还没有,可以通过 注册亚马逊云科技中国区 进行注册。

 

(2)订阅MarketPlace 免费 AMI镜像。先登录您的中国区亚马逊云科技账户,然后分别访问CentOS 7Remote Desktop 两个页面,点击右上方的订阅,完成对这两个免费镜像的订阅。CentOS 7 AMI 是CentOS官方提供的CentOS 7最新版本镜像,对广大渲染软件的支持较好,用于渲染节点;Remote Desktop镜像预装了NVIDIA GRID GPU驱动和远程连接软件NICE DCV,用于显示节点的远程桌面展示。

(3)在计划部署的中国区域中创建密钥对(如果您计划使用的密钥对还未存在),并妥善保管下载的密钥对文件。

快速部署流程

(1)启动CloudFormation堆栈。

打开管理控制台,单击下面的按钮以启动CloudFormation 模板。默认情况下,此模板在宁夏区域启动,您可以使用控制台右上方的区域选择链接,以在其他区域部署该方案。

(2)指定堆栈详细信息。点击【下一步】,进入参数设置页面,如下图所示。

根据您的需求调整以下参数,然后点击【下一步】。

 

(3)配置堆栈选项。保持默认值,点击【下一步】。

 

(4)审核堆栈。保持默认值,勾选下方的单选框,点击 【创建堆栈】。等待大概 20分钟,直至堆栈状态为Complete,创建完成。

 

开始云中渲染

(1)使用显示节点(Deadline Monitor),进行远程桌面连接。

打开 亚马逊云科技 中国区管理控制台,选择EC2 服务,找到名为CloudRenderingFarm/DeadlineMonitor的EC2实例,记录它的 公有IP 和 实例ID 。

下载适合您客户端操作系统的 Nice DCV 客户端 并进行安装。打开NICE DCV客户端,输入上一步记录下来的 公有IP,点击【Connect】进行连接。

在校验页面,用户名输入dcv-user,密码输入上一步记录的 实例ID ,点击【Login】即可进入远程桌面。如果远程桌面处于睡眠状态,可以向上滑动解锁,并在密码栏中输入 实例ID 来进入桌面。

 

(2)启动Deadline Monitor管理软件。

远程登录后,您会看到NICE DCV中显示的CentOS操作系统桌面,打开Terminal工具来启动Deadline Monitor。

在Terminal中进入sudo模式,密码是之前记录的 实例ID,输入 /opt/Thinkbox/Deadline10/bin/deadlinemonitor,启动 Deadline Monitor,用于提交和管理渲染任务。

 

(3)安装渲染软件。

打开 亚马逊云科技 中国区管理控制台,选择 EC2 服务,在其中找到名为 CloudRenderingFarm/Deadline Monitor 的 EC2 实例,通过 ssh 进行登录。

以 Deadline Monitor 为堡垒机,使用 Deadline Worker 的私有IP,通过 ssh 登录您计划安装渲染软件的工作节点。

下载并安装您希望使用的渲染软件。以开源软件Blender为例,在Blender官方网站 找到下载链接,选择正确的客户端版本(Linux版),复制下载链接。然后在EC2实例中使用wget命令下载并解压即可。

(4)制作渲染节点镜像,用于批量快速启动。

在EC2 管理控制台中,选中刚才安装好渲染软件的 Deadline Worker 实例,点击上方的【操作】按钮,在【映像】一栏中点击【创建映像】。

 

(5)上传渲染素材。

将需要使用的渲染素材上传到共享文件存储中。共享文件存储的默认文件目录是 /shared,或者是启动 CloudFormation 模板时设置的文件目录位置。您也可以使用 Deadline Monitor 远程桌面,将数据通过浏览器下载并迁移到此目录中。

 

(6)启动渲染任务。

回到显示节点(Deadline Monitor)远程桌面中的Deadline管理器页面,点击上方菜单栏中的【Tools】按钮,在下拉列表中选择【Super User Mode】进入超级用户模式,在这个模式下可以看到更多的功能选项,并且可以做更多的配置变更。

配置渲染软件位置。点击上方菜单栏中的【Tools】按钮,在下拉列表中选择【Configure Plugins】,弹出渲染软件插件配置的页面。

在页面中选择您要使用的渲染软件(如示例使用的Blender),修改其中执行文件的路径为工作节点中该渲染软件执行文件的位置,然后点击【OK】完成配置。

提交渲染任务。点击上方菜单栏中的【Submit】按钮,在下拉列表中选择您要使用的渲染软件,如3D->Blender,弹出提交任务的页面。

在页面中填写任务具体信息,如任务名称、使用的工作节点组、优先级、工程文件位置(之前上传到共享文件系统目录下)、指定渲染帧等,然后点击【Submit】完成任务提交。

 

(7)查看和管理渲染任务。

您可以在Deadline Monitor中查看任务的执行情况,直到任务完成。默认情况下结果文件与工程文件在同一目录下,您可以在其中找到渲染的结果,播放或下载。

 

小结

综上所述,您可以使用云中渲染农场解决方案(Cloud Rendering Farm Solution),快速搭建一个云中渲染农场,并在配置渲染软件和素材后,按需调用云中的计算资源管理大规模渲染工作,从而缩短构建时间,灵活控制成本。借助方案和亚马逊云科技的平台能力,您的后期渲染工作将变得轻松和弹性。

 

参考资料

(1)Amazon CloudFormation服务介绍:

https://docs.aws.amazon.com/zh_cn/AWSCloudFormation/latest/UserGuide/Welcome.html

(2)云中渲染农场解决方案介绍:

https://www.amazonaws.cn/solutions/cloud-rendering-farm/

(3)亚马逊中国区Marketplace:

https://awsmarketplace.amazonaws.cn/marketplace

 

 

 

本篇作者

李思源

AWS解决方案架构师,在网络、媒体渲染、软件开发等领域有实践经验,加入AWS 之前曾任软件开发工程师、Scrum master、项目经理等角色,PMI认证PMP。目前关注媒体、游戏、高性能计算等领域。

常辰煜

AWS解决方案架构师,主要负责基于亚马逊云解决方案的设计、开发和维护,具有丰富的后端系统开发经验。从南加州大学毕业之后,于2019年入职西雅图亚马逊总部担任软件开发工程师,并于2020年加入亚马逊云科技大中华区解决方案研发中心。