前言
关于HQueue的基本概念,可见上一篇《翻译Houdini官方文档:HQueue总览》
本篇将尝试安装HQueue并做简单测试。主要参考的是官方文档。
准备
我使用了三台电脑作为测试,分别作为:
- 工作站(IP地址是 X.X.X.5,计算机名是DEXXX)
- 服务器(IP地址是 X.X.X.4,计算机名是LAXXX)
- 客户端(IP地址是 X.X.X.7,计算机名是WIXXX)
他们的操作系统都是Windows。其他准备方面的情况如下:
- 三台电脑连接了同一个WiFi,因而在一个局域网中。他们可以通过IP互相ping到对方(关于如何看IP地址和ping可见附录A)
- 创建一个共享文件夹(步骤见附录B)。由于我没有更多的机器用来做专门的共享文件夹服务器,所以我将共享文件夹放在了工作站上。
- 我将三台机器上共享文件夹都映射为了Z:(步骤见附录C),使共享文件夹目录保持一致。
- 端口方面:需要打开服务器电脑的5000端口,客户端电脑的5001端口。(步骤见附录D)
- 关于Houdini的安装:工作站和客户端电脑上安装了Houdini,版本为18.5.408。之后服务器和客户端程序安装时我也选择相同的版本Houdini。安装目录我也选择一样的,即C:\Program Files\Side Effects Software\Houdini 18.5.408。
步骤1. 安装HQueue服务器
在服务器电脑上运行Houdini安装程序。
除了 HQueue Server
之外都不勾选:
之后一切保持默认。
完成之后,服务器将会被安装在 C:\HQueueServer
你可以在Windows服务中看到HQueueServer
:
现在,你可以打开浏览器,访问服务器的5000端口了。比如在服务器电脑上我就可以访问http://127.0.0.1:5000
:
而在其他机器上,就是输入服务器的IP地址后跟5000。
(如果无法成功,很可能是服务器的5000端口没有打开,打开的方法参考附录D)
步骤2. 注册HQueue的网络文件夹
找到C:/HQueueServer/hqserver.ini
文件。
需要改动三个地方:
hqserver.sharedNetwork.host
是共享文件夹所在的机器名hqserver.sharedNetwork.path.windows
是共享文件夹的名字hqserver.sharedNetwork.mount.windows
是被映射的磁盘号。
比如,我这里对应的三行就改为了:
hqserver.sharedNetwork.host = DEXXX
hqserver.sharedNetwork.path.windows = MyHQShare
hqserver.sharedNetwork.mount.windows = Z:
保存改动。
然后重启HQueueServer这个服务:
步骤3. 添加一个客户端机器
运行Houdini安装程序,除了HQueue Client
之外都不勾选:
随后,在指定服务器时输入服务器的电脑名:
其他选项留作默认。
完成之后,客户端将会被安装在C:\HQueueClient
Windos服务中可以看到HQueueClient
服务:
现在,可以在web界面上看到有一个客户端了:
测试HQueue农场
下面,提交一个简单的渲染任务来测试HQueue农场配置是否正确。
首先,创建一个简单的场景。放下一些几何体、一盏灯、一个相机和一个用于渲染的 Mantra ROP 节点。
然后,在/out
下创建一个HQueue Render ROP节点。其参数的设置是:
- 将 Output Driver 设置为 Mantra ROP 节点
- HQueue Server 是你服务器的地址
- Target HFS 是客户端上Houdini的安装目录。
然后,将.hip
文件保存在共享文件夹中:
最后,点击Submit Job
!
接着便出来对话框提示任务已经被提交。(点击“Open HQueue”就可进入web界面)
在web界面中可以看到已经提交的任务正在运行:
(你可以点击任务的Id来看更多的细节)
附录A:IP地址查看方式以及ping操作
在 cmd 中输入ipconfig
可看IP地址:
通过此操作我查询到:
- 工作站的IP地址是:X.X.X.5
- 服务器的IP地址是:X.X.X.4
- 客户端的IP地址是:X.X.X.7
ping操作是输入ping {IPv4地址}
,比如这里我从工作站ping了客户端的地址:
显示可以ping到。
(如果无法ping到,可以尝试为ping不到的机器执行附录B的第一步开启权限)
附录B:创建共享文件夹
首先,需要在 控制面板\网络和 Internet\网络和共享中心\高级共享设置
中勾选 启用网络发现 和 启用文件和打印机共享 等一系列开启权限的内容:
我新建了一个文件夹 E:\MyHQShare 作为要共享的文件夹。
右键,在共享分页下点击“共享”按钮。然后添加一个Everyone
并给予其读取/写入
权限。
最后点 “共享”按钮。随后就弹出提示显示已共享,并且显示其路径为 \\DEXXX\MyHQShare,其中DEXXX为我的计算机名。
之后,其他电脑就可以访问了。比如我这里从客户端机器访问工作站机器:
可以看到MyHQShare文件夹。
另外,也可以通过计算机名来访问:
附录C:将文件夹映射到新的盘符
对于工作站电脑,在 cmd 中执行命令subst Z: E:\MyHQShare
可将共享文件夹映射到Z盘。
而对于其他机器,映射的路径应该是网络路径,即subst Z: \\DEXXX\MyHQShare
现在,三台机器上的共享文件夹目录一致了,都是Z:
。
附录D:打开防火墙端口
此处参考 服务器操作:开启防火墙端口-百度经验
在 控制面板\系统和安全\Windows Defender 防火墙
中,点击高级设置
:
点击入站规则
,点击新建规则
。
选择端口
然后选择特定本地端口
并填入 5000。
允许连接
:
勾选所有网络:
最后输入名称和描述:
随后,就可以看到多了条规则了:
现在,在非服务器的机器上都可以访问服务器的5000端口了: