Deadline 渲染农场搭建记录

渲染农场的工作模式:多台机器组建集群进行渲染,比如:集群中有2台渲染机器A和B,服务器会同时分配给A和B任务,A渲染第一帧,B渲染第二帧,当A完成那么服务器会继续分配第三帧,同样B服务器完成以后服务器分配第四帧,以此类推。
渲染农场分服务端和节点,服务器端也可以加入集群中当做节点,当然节点也可以提交渲染任务
建议:服务器端单独安装,主要插件及自定义修改内容可单独存放,当多节点接入或大批量渲染任务上传时不用占用渲染节点资源。
基础部署模式:
Deadline 渲染农场搭建记录
必要条件:
1、 硬件:至少需要2台计算机
2、 每台计算机需要安装相同版本软件、安装路径最好能统一(不统一修改服务器上关于软件默认路径)
3、 一个集群至少需要一台master(Deadline Repository),Master可以同时最为clinet

一、安装Master:
1、 默认安装完成DeadlineRepository-*****-windows-installer
2、 配置MongoDB证书路径
Deadline 渲染农场搭建记录

3、 防火墙开放端口27100
4、 共享DeadlineRepository 、DeadlineDatabase 给Node只读权限
二、安装Node:
1、默认安装路径
Deadline 渲染农场搭建记录
2、
Deadline 渲染农场搭建记录Deadline 渲染农场搭建记录Deadline 渲染农场搭建记录
填入deadline server的repository文件夹路径 \DeadlineServerHostname\DeadlineRepository10
Deadline 渲染农场搭建记录
填入database 证书
\DeadlineServerHostname\DeadlineRepository10\DeadlineDatabase10\certs\Deadline10Client.pfx
Deadline 渲染农场搭建记录
选择license free
后面保持默认安装完成



三、Deadline添加渲染软件版本号
以maya为例
1、 操作前备份好master上DeadlineRepository
2、 修改\DeadlineServerHostname\DeadlineRepository10\scripts\Submission下的MayaSubmission.py文件,找到scriptDialog.AddComboControlToGrid值,添加新版本号:
Deadline 渲染农场搭建记录
3、 修改\DeadlineServerHostname\DeadlineRepository10\plugins\MayaBatch下的Houdini.param文件,给拉列表控件中添加对应新版本号的值:
Deadline 渲染农场搭建记录


四、增加Slaves下scripts
以增加刷新组策略脚本为例
1、 操作前备份好master上DeadlineRepository
2、 在\ DeadlineServerHostname\DeadlineRepository10\scripts\Slaves增加UpdateGroupPolicy.py的文件
3、 具体内容如下

##------------------------------------------------------------
## Gpupdate .py
##
##
## Update Group Policy on the selected machines.
##------------------------------------------------------------

from System.IO import *
from Deadline.Scripting import *

#from DeadlineUI.Controls.Scripting.DeadlineScriptDialog import DeadlineScriptDialog

def __main__():
    # Get the selected slave info settings.
    selectedSlaveInfoSettings = MonitorUtils.GetSelectedSlaveInfoSettings()
    # Get the list of selected machine names from the slave info settings.
    machineNames = SlaveUtils.GetMachineNameOrIPAddresses(selectedSlaveInfoSettings)
    if len(machineNames) > 0:
        for machineName in machineNames:
            SlaveUtils.SendRemoteCommand(machineName, "Execute cmd /C  gpupdate  /Target:User  /force")

4、 在DeadlineMonitor下的configure script menus中修改script显示的名称
Deadline 渲染农场搭建记录

猜你喜欢

转载自blog.51cto.com/10006647/2548381