On this page |
|
Before you begin ¶
Note
This guide covers the setup of an HQueue farm where the server and clients all share the same operating system (Linux, macOS, or Windows).
Although you can setup HQueue farm with mixed operating systems, this does not cover it.
The following items are required before setting up an HQueue farm:
Network connectivity |
|
---|---|
Shared network folder |
|
Houdini |
|
Installing HQueue ¶
Setting up an HQueue farm involves:
-
Installing the HQueue server,
-
Registering a network folder with HQueue,
-
Adding client machines to HQueue.
Installing HQueue on Linux ¶
To... | Do this |
---|---|
Install the HQueue server |
Choose a machine, for example serverMachine, to run the HQueue server. On the chosen machine, install the HQueue server with either the Houdini Launcher (recommended) or the old Houdini installer.
Houdini Launcher
Old Houdini Installer
After the installer completes, the server installs at /opt/hqueue and a
new You can open a web browser and navigate to Note If DNS is not configured for serverMachine, then you can connect to HQueue using the server machine’s IP address. For example, http://X.X.X.X:5000. |
Register the network folder with HQueue |
|
Add client machines to HQueue |
On a client machine, install the HQueue client with either the Houdini Launcher (recommended) or the old Houdini installer.
Houdini Launcher
Old Houdini Installer
After the installation completes, the HQueue client installs into your chosen location or to /home/hquser/hqclient by default. Go to the clients page in the HQueue web interface to confirm that the machine was successfully added to the farm. Note Repeat these steps for each client machine you want to add to the farm. |
Installing HQueue on macOS ¶
To... | Do this |
---|---|
Install the HQueue server |
Choose a machine, for example serverMachine, to run the HQueue server. Download and run the Houdini Launcher on the chosen machine.
Houdini Launcher
Old Houdini Installer
After the installation completes, the server installs at
You can open a web browser and navigate to http://serverMachine:5000 to confirm that the HQueue server is running. Note If DNS is not configured for serverMachine then you can connect to HQueue using the server machine’s IP address. For example, http://X.X.X.X:5000. |
Register the network folder with HQueue |
|
Add client machines to HQueue |
On a client machine, install the HQueue client with either the Houdini Launcher (recommended) or the old Houdini installer.
Houdini Launcher
|
Installing HQueue on Windows ¶
To... | Do this |
---|---|
Install the HQueue server |
Choose a machine, for example serverMachine, to run the HQueue server. Download and run the Houdini Launcher on the chosen machine.
Houdini Launcher
|
Register the network folder with HQueue |
|
Add client machines to HQueue |
On a client machine, install the HQueue client with either the Houdini Launcher (recommended) or the old Houdini installer.
Houdini Launcher
Old Houdini Installer
After the installation completes, the client installs at
C:/HQueueClient and a new Reboot the client machine after installation. Otherwise, the client may not have access to mapped network drives. Note Repeat these steps for each client machine you want to add to the farm. |
Testing the Farm ¶
To test that the HQueue farm is configured correctly you can submit a simple Houdini render job:
-
Launch Houdini.
-
Create a simple scene. At a minimum, create some geometry, a light, a camera and a Mantra ROP for rendering.
-
Navigate to the
/out
node network and create an HQueue Render ROP. -
In the Parameters pane, set the
Output Driver
parameter to your Mantra ROP. -
Point the
HQueue Server
parameter to your HQueue farm.For example,
http://serverMachine:5000
.Note
If DNS is not configured for
serverMachine
then you can alternatively use the server machine’s IP address in the URL. For example,http://X.X.X.X:5000
. -
Then set Target HFS to where Houdini is installed on the client machines.
Linux
For Linux, set Target HFS to:
/opt/hfsX.Y.ZZZ
Mac
For macOS, set Target HFS to:
/Applications/Houdini/HoudiniX.Y.ZZZ/Frameworks/Houdini.framework/Versions/Current/Resources
Windows
For Windows, set Target HFS to:
C:/Program Files/Side Effects Software/Houdini X.Y.ZZZ
-
Save the .hip file in your (HQROOT) network folder. You can find the HQROOT network folder settings on the HQueue webs interface in the Network Folders web page.
Linux
On Linux, the network folder is defined by the
Linux Mount
field for the HQROOT network folder. For example, save the .hip file to /mnt/myShare/test.hip.Mac
On macOS, the network folder is defined by the
macOS Mount
field for the HQROOT network folder. For example, save the .hip file to /Volumes/myShare/test.hip.Windows
On Windows, the network folder is defined by the
Windows Mount
field for the HQROOT network folder. For example, save the .hip file to H:/test.hip. -
At the top of the Parameters pane, select Submit Job.
-
A new job appears in the HQueue web interface.
-
You can select the job’s id to view more details.
-
Troubleshooting ¶
When a job fails, you can troubleshoot by selecting the job’s id in
the HQueue web interface. This takes you inside the job to view more details. If any of the job’s Child Jobs
failed, then select on the child job’s id to further troubleshoot it. The Output Log
contains an error message explaining why the job failed.
You can learn about common job failure errors and possible solutions in the Troubleshooting FAQs.
Scripted Installations ¶
Note
Use the old Houdini installer to do scripted HQueue installations.
The Houdini Launcher currently does not support scripted HQueue installations.
You can perform the HQueue installation from the command-line allowing for scripted installations. This is beneficial if you want to automate the installation and configuration of an HQueue farm.
Scripted Installation on Linux ¶
Scripted installation on Linux begin with the Houdini installer tarball, houdini-X.X.XXX-linux_x86_64_gccY.Y.tar.gz
. Download the tarball from the SideFX website.
-
Install the HQueue server
-
Run the following commands to install the HQueue server:
# Unpack the installer tarball. tar zxf houdini-X.X.XXX-linux_x86_64_gccY.Y.tar.gz # Locate the unpacked installer directory. cd houdini-X.X.XXX-linux_x86_64_gccY.Y # Run the installer script to install the server. sudo ./houdini.install --auto-install --accept-EULA 20XX-XX-XX --no-install-houdini –-no-install-license --install-hqueue-server --hqueue-server-dir /opt/hqueue --upgrade-hqueue-server-if-exists yes
-
The HQueue server installs to
/opt/hqueue
and runs with theroot
account.
-
-
Install the HQueue client
-
Run the following commands to install the HQueue client:
# Unpack the installer tarball. tar zxf houdini-X.X.XXX-linux_x86_64_gccY.Y.tar.gz # Locate the unpacked installer directory. cd houdini-X.X.XXX-linux_x86_64_gccY.Y # Run the installer script to install the client. sudo ./houdini.install --auto-install --accept-EULA 20XX-XX-XX --no-install-houdini –-no-install-license --install-hqueue-client --hqueue-client-dir /home/myUser/hqclient --hqueue-client-user myUser --hqueue-server-name myServer --hqueue-server-port 5000
-
The HQueue client installs to /home/myUser/hqclient and runs with the
myUser
account. The client connects to the HQueue server located athttp://myServer:5000
.
-
Scripted Installation on macOS ¶
Scripted installation on macOS begin with the Houdini installer image, houdini-X.X.XXX-macosx_YYY_clangZZ_ZZ.dmg
. Download the image from the SideFX website.
-
(Prerequisite) Generate Installer Choice XML Files
-
Scripted installation on macOS requires pre-generated XML files that tell the installer what components to install.
-
Run the following commands to generate the choices XML file:
# Ensure that no previous Houdini installer image is mounted. sudo hdiutil detach /Volumes/Houdini # Mount the Houdini installer image. sudo hdiutil attach houdini-X.X.XXX-macosx_YYY_clangZZ_ZZ.dmg # Generate the choices XML file. installer -showChoiceChangesXML -pkg /Volumes/Houdini/Houdini.pkg -target / &> /tmp/install_choices.xml # Cleanup. Unmount the Houdini installer image. sudo hdiutil detach /Volumes/Houdini
-
Open
/tmp/install_choices.xml
in a text editor and deselect all component choices in the file by replacing lines that read<integer>1</integer>
with<integer>0</integer>
. Save the changes to the file and close the text editor. -
Make two copies of
/tmp/install_choices.xml
and name the copies/tmp/hqueue_server_install_choices.xml
and/tmp/hqueue_client_install_choices.xml
for the server and client installations respectively. -
For the server installation, open
/tmp/hqueue_server_install_choices.xml
in a text editor. Find the group of lines that select the HQueue server component. The lines look like this:<dict> <key>attributeSetting</key> <integer>0</integer> <key>choiceAttribute</key> <string>selected</string> <key>choiceIdentifier</key> <string>hqserver</string> </dict>
Replace
<integer>0</integer>
with<integer>1</integer>
in the group of lines to select the HQueue server component in the installation. Save the changes to the file and close the text editor. -
Similarly for the client installation, open
/tmp/hqueue_client_install_choices.xml
in a text editor. Find the group of lines that select the HQueue client component. The lines look like this:<dict> <key>attributeSetting</key> <integer>0</integer> <key>choiceAttribute</key> <string>selected</string> <key>choiceIdentifier</key> <string>hqclient</string> </dict>
Replace
<integer>0</integer>
with<integer>1</integer>
in the group of lines to select the HQueue client component in the installation. Save the changes to the file and close the text editor. -
The server and client choices XML files are now ready for scripted installations.
Note
You don’t have to re-generate the server and client choices XML files everytime you install or upgrade the HQueue server and clients. You can re-use the choices XML files for subsequent installations. You only need to re-generate the choices XML files when the component options in the Houdini installer change.
-
-
Install the HQueue server
-
Run the following commands to install the HQueue server:
# Ensure that no previous Houdini installer image is mounted. sudo hdiutil detach /Volumes/Houdini # Mount the Houdini installer image. sudo hdiutil attach houdini-X.X.XXX-macosx_YYY_clangZZ_ZZ.dmg # Install the HQueue server. sudo installer -pkg /Volumes/Houdini/Houdini.pkg -target / -applyChoiceChangesXML /tmp/hqueue_server_install_choices.xml # Cleanup. Unmount the Houdini installer image. sudo hdiutil detach /Volumes/Houdini
-
The HQueue server installs to
/Library/HQueueServer
and runs with theroot
account. A new launchctl service,/Library/LaunchDaemons/com.sidefx.hqserver.plist
, is also created that runs the server.
-
-
Install the HQueue client
-
Run the following commands to install the HQueue client:
# Ensure that no previous Houdini installer image is mounted. sudo hdiutil detach /Volumes/Houdini # Mount the Houdini installer image. sudo hdiutil attach houdini-X.X.XXX-macosx_YYY_clangZZ_ZZ.dmg # Install the HQueue client files. sudo installer -pkg /Volumes/Houdini/Houdini.pkg -target / -applyChoiceChangesXML /tmp/hqueue_client_install_choices.xml # Run the HQueue client installer script. cd /Library/HQueueClient sudo ./install.sh --user myUser --hq-server myServer --hq-server-port 5000 # Cleanup. Unmount the HOudini installer image. sudo hdiutil detach /Volumes/Houdini
-
The HQueue client installs to
/Library/HQueueClient
and runs with themyUser
account. The client connects to the HQueue server located athttp://myServer:5000
.
-
Scripted Installation on Windows ¶
Scripted installation on Windows begin with the Houdini installer executable, houdini-X.X.XXX-win64-vcYYY.exe
. Download the executable from the SideFX website.
-
Install the HQueue server
-
Run the following command to install the HQueue server:
houdini-X.X.XXX-win64-vcYYY.exe /S /AcceptEULA=20XX-XX-XX /LicenseServer=No /DesktopIcon=No /FileAssociations=No /HoudiniServer=No /SideFXLabs=No /HQueueServer=Yes /Action=install /HQServerInstallDir=C:\HQueueServer /ServiceName=HQueueServer
-
The HQueue server installs to
C:\HQueueServer
and a newHQueueServer
service is created that runs the server.
-
-
Install the HQueue client
-
Run the following commands to install the HQueue client:
# Install the HQueue client. houdini-X.X.XXX-win64-vcYYY.exe /S /AcceptEULA=20XX-XX-XX /LicenseServer=No /DesktopIcon=No /FileAssociations=No /HoudiniServer=No /SideFXLabs=No /HQueueClient=Yes /HQClientInstallDir=C:\HQueueClient /HQClientServerName=myServer /HQClientServerPort=5000 # Reboot the machine to complete installation. shutdown /r
-
The HQueue client installs to
C:\HQueueClient
and runs with the user account that ran the installer executable. The client connects to the HQueue server located athttp://myServer:5000
.
-
Upgrading HQueue ¶
Upgrading an HQueue farm involves
-
Upgrading the HQueue server
-
Upgrading the HQueue clients
To... | Do this |
---|---|
Upgrade the HQueue server |
|
Upgrade the HQueue clients |
On each client machine:
|
Upgrading an HQueue farm previously installed by the old Houdini installer ¶
Use the Houdini Launcher (recommended) or the old Houdini installer to upgrading an existing HQueue farm that was previously installed by the old Houdini installer.
-
To upgrade the HQueue server, proceed with the regular server installation process in the Houdini Launcher. The Launcher will upgrade the server files but preserve the existing server database and configuration files.
-
To upgrade an HQueue client, proceed with the regular client installation process in the Houdini Launcher. Ensure that the
Client User
field is set to the same user account that currently runs the HQueue client. The Launcher will upgrade the client files but preserve the existing client configuration file.
-
To upgrade the HQueue server, proceed with the server installation process in the old Houdini installer. Depending on the operating system, the installer may prompt you to install or upgrade the existing HQueue server installation. Choosing to upgrade overwrites the server files but preserves the existing server database and configuration files. Choosing to install overwrites the server files, database, and configuration files. If the installer does not prompt you to install or upgrade, the installer performs an upgrade.
-
Once the HQueue server upgrades to a newer version, the HQueue clients automatically upgrade by pulling the new client code from the HQueue server. You may see Upgrade <machine> jobs appear in the HQueue website that indicate the clients auto-upgrading themselves. If auto-upgrading fails or does not occur, then you can manually request to upgrade a client from the clients web page on the HQueue website (see Managing clients), or install the new client version using the old Houdini installer. Installing via the old Houdini installer will upgrade and preserve the client’s existing configuration.
Upgrading an old HQueue Python 2 farm ¶
Note
Use the old Houdini installer to upgrade an old HQueue Python 2 farm.
The Houdini Launcher does not support upgrading an HQueue Python 2 farm.
Use the old Houdini installer to upgrade the HQueue Server. The installer detects the old HQueue Python 2 server and backs up the old server before proceeding with a new installation/upgrade.
The old server is backed up to:
Linux
/opt/hqueue.backup.YYYY-MM-DD_HHMMSS
Mac
/Library/HQueueServer.YYYY-MM-DD_HHMMSS.bak
Windows
C:/HQueueServer_bk.MM-DD-YYYY.HHMMSS
The installer also converts the old server database and configuration files to the new formats expected by the new HQueue server.
After the installation and the server has been upgraded, the old Python 2 HQueue clients can be upgraded. You can only upgrade old Python 2 clients using the old Houdini installer. Upgrading Python 2 clients from the Houdini Launcher or the HQueue website is not possible.
The installer detects the old HQueue Python 2 client and backs up the old client before proceeding with a new installation/upgrade.
The old client backs up to
Linux
/home/myUser/hqclient.backup.YYYY-MM-DD_HHMMSS
Mac
/Library/HQueueClient.YYYY-MM-DD_HHMMSS.bak
Windows
C:/HQueueClient_bk.MM-DD-YYYY.HHMMSS
The installer also converts the old configuration files to the new formats expected by the new HQueue client.
After the client installation, your new Python 3 HQueue farm is ready for use. It is up to you to remove the backup server and client folders if desired.
Optional: hquser
account
¶
On client machines you can optionally set up an hquser
user and hqgroup
user group to run HQueue as. By convention the user and group ID are both 601
, and the user’s password is hqpass
, but you can change these.
Linux
Your Linux distribution may come with a user interface for creating user accounts, otherwise use the adduser
command.
Mac
You can create users and groups in the Users and Groups panel of System Preferences.
Having consistent user accounts across clients has benefits:
-
Do not have to keep track of different user accounts on different machines when you need to log into a particular client.
-
A single consistent user owns all files created by the client software.
Once you have created the user and group, you should start the HQueue server/client as hquser
.