Client Installation

Overview

Before proceeding with this installation, it is highly recommended to read through the Render Farm Considerations documentation.

This guide will walk you through the installation of the Client. At this point, you should already have the Database and Repository installed. If you do not, please see the Database and Repository Installation documentation for installation instructions.

The Client consists of the following applications:

  • Launcher: Acts as a launch point for the Deadline applications on workstations, and facilitates remote communication on render nodes.
  • Monitor: An all-in-one application that artists can use to monitor their jobs and administrators can use to monitor the farm.
  • Slave: Controls the rendering applications on the render nodes.
  • Command: A command line tool that can submit jobs to the farm and query for information about the farm.
  • Pulse: An optional mini server application that performs maintenance operations on the farm, and manages more advanced features like Auto Configuration, Power Management, Slave Throttling, Statistics Gathering, and the Web Service. If you choose to run Pulse, it only needs to be running on one machine.
  • Balancer: An optional Cloud-controller application that can create and terminate Cloud instances based on things like available jobs and budget settings. If you choose to run Balancer, it only needs to be running on one machine.

Note that the Slaves and the Balancer applications are the only Client applications that require a license. It is recommended to run your operating system LANGUAGE as “ENGLISH” to ensure all the application plugin StdoutHandler/PopupHandler/Ignorer’s work correctly.

Installing The Clients

The Client should be installed on your render nodes, workstations, and any other machines you wish to participate in submitting, rendering, or monitoring jobs. The Slaves and the Balancer applications are the only Client applications that require a license. Before you can configure the license for the Client, the license server must be running. See the Licensing documentation for more information.

If you choose to run Pulse, you need to install the Client on the chosen machine. Note that if you wish to run it on the same machine as the Database and/or Repository, you still have to install the Client on that machine.

There are Client installers for Windows, Linux, and Mac OS X. To install the Client, simply run the appropriate installer for your operating system and follow the steps.

Windows

Start the installation process by double-clicking on the Windows Client Installer. The Windows Client installer also supports silent installations with additional options.

windows_setup windows_directory

Choose an installation location and press Next to continue.

windows_license windows_launcher

Configure the necessary Client Setup and Launcher Setup settings. The following Client settings are available:

  • Repository Directory: This is the shared path to the Repository. Note, if you are unable to browse to your Repository shared path via your drive mapping in the install wizard, then this is more than likely due to a problem with Windows UAC elevation. Essentially, even if the currently logged in user has the network drive configured; that configuration is not available in the elevated scope, as you are technically another user here. This is something which is handled by the OS so we cannot do anything on our side. However, possible workarounds are to simply select the UNC path instead that the drive is mapped to OR logon to the system as the user account with elevated permissions (local administrator for example) and then run the client install wizard.
  • License Server: The license server entry should be in the format @SERVER, where SERVER is the host name or IP address of the machine that the license server is running on. If you configured your license server to use a specific port, you can use the format PORT@SERVER. For example, @lic-server or 27000@lic-server. If you are running Deadline in LICENSE-FREE MODE, or you have not set up your license server yet, you can leave this blank for now.

The following Launcher settings are available:

  • Launch Slave When Launcher Starts: If enabled, the Slave will launch whenever the Launcher starts.
  • Install Launcher As A Service: Enable this if you which to install the Launcher as a service. The service must run under an account that has network access. See the Windows Service documentation below for more information.

After configuring the Client and Launcher settings, press Next to continue with the installation.

Linux

Note that on Linux, the Deadline applications have dependencies on some libraries that are installed with the lsb (Linux Standard Base) package. To ensure you have all the dependencies you need, we recommend installing the full lsb package. In addition, the libX11 and libXext must be installed on Linux for the Deadline applications to run, even if running them with the -nogui flag. They’re required for the Idle Detection feature, among other things. To check if libX11 and libXext are installed, open a Terminal and run the following commands. If they are installed, then the path to the libraries will be printed out by these commands.

ldconfig -p | grep libX11
ldconfig -p | grep libXext

If any of these libraries are missing, then please contact your local system administrator to resolve this issue. Here is an example assuming you have root access, using YUM to install them on your system:

sudo -s
yum install redhat-lsb
yum install libX11
yum install libXext

Start the installation process by double-clicking on the Linux Client Installer. The Linux Client installer also supports silent installations with additional options.

linux_setup linux_directory

Choose an installation location and press Next to continue.

linux_license linux_launcher

Configure the necessary Client Setup and Launcher Setup settings. The following Client settings are available:

  • Repository Directory: This is the shared path to the Repository.
  • License Server: The license server entry should be in the format @SERVER, where SERVER is the host name or IP address of the machine that the license server is running on. If you configured your license server to use a specific port, you can use the format PORT@SERVER. For example, @lic-server or 27000@lic-server. If you are running Deadline in LICENSE-FREE MODE, or you have not set up your license server yet, you can leave this blank for now.

The following Launcher settings are available:

  • Launch Slave When Launcher Starts: If enabled, the Slave will launch whenever the Launcher launches.
  • Install Launcher As A Daemon: Enable this if you which to install the Launcher as a daemon. You can also choose to run the daemon as a specific user. If you leave the user blank, it will run as root instead. See the Linux Daemon documentation below for more information.

After configuring the Client and Launcher settings, press Next to continue with the installation.

Mac OSX

Start the installation process by double-clicking on the Mac Client Installer. The Mac Client installer also supports silent installations with additional options.

osx_setup osx_directory

Choose an installation location and press Next to continue.

osx_license osx_launcher

Configure the necessary Client Setup and Launcher Setup settings. The following Client settings are available:

  • Repository Directory: This is the shared path to the Repository. Deadline isn’t able to understand paths starting with “afp://” or “smb://”, so point the installer to the Repository path mounted under “/Volumes”.
  • License Server: The license server entry should be in the format @SERVER, where SERVER is the host name or IP address of the machine that the license server is running on. If you configured your license server to use a specific port, you can use the format PORT@SERVER. For example, @lic-server or 27000@lic-server. If you are running Deadline in LICENSE-FREE MODE, or you have not set up your license server yet, you can leave this blank for now.

The following Launcher settings are available:

  • Launch Slave When Launcher Starts: If enabled, the Slave will launch whenever the Launcher launches.
  • Install Launcher As A Daemon: Enable this if you which to install the Launcher as a daemon. You can also choose to run the daemon as a specific user. If you leave the user blank, it will run as root instead. See the Mac OSX Daemon documentation below for more information.

After configuring the Client and Launcher settings, press Next to continue with the installation.

Command Line or Silent Installation

The Client installer can be run in command line mode or unattended mode on each operating system. Note though that on OSX, you must run the installbuilder.sh script that can be found in the Contents/MacOS folder, which is inside the Mac Client Installer package.

To run in command line mode, pass the “–mode text” command line option to the installer. For example, on Linux:

./DeadlineClient-X.X.X.X-linux-x64-installer.run --mode text

To run in silent mode, pass the “–mode unattended” command line option to the installer. For example, on Windows:

DeadlineClient-X.X.X.X-windows-installer.exe --mode unattended

To get a list of all available command line options, pass the “–help” command line option to the installer. For example, on OSX:

/DeadlineClient-X.X.X.X-osx-installer.app/Contents/MacOS/installbuilder.sh --help

Note that there are quite a few Client installer options that are only available from the command line, which you can view when running the “–help” command. These options include:

  • --help: Display the list of valid options.
  • --version: Display product information.
  • --unattendedmodeui <unattendedmodeui>: Unattended Mode UI.
  • --optionfile <optionfile>: Installation option file.
  • --debuglevel <debuglevel>: Debug information level of verbosity.
  • --mode <mode>: Installation mode.
  • --debugtrace <debugtrace>: Debug filename.
  • --installer-language <installer-language>: Language selection.
  • --prefix <prefix>: The path to install the Client software to.
  • --repositorydir <repositorydir>: The path to the Deadline Repository.
  • --licenseserver <licenseserver>: The license server to use.
  • --configport <configport>: The port that the Client uses for Auto Configuration.
  • --slavestartupport <slavestartupport>: The port that the Slaves use to ensure that only one slave is initializing at a time.
  • --slavedatadir <slavedatadir>: The local path where the Slave temporarily stores plugin and job data from the Repository during rendering (if not specified, the default location is used).
  • --noguimode <noguimode>: If enabled, the Launcher, Slave, and Pulse will run without a user interface on this machine.
  • --killprocesses <killprocesses>: If enabled, the installer will kill any running Deadline processes before proceeding with the installation (Windows only).
  • --launcherport <launcherport>: The Launcher uses this port for Remote Administration, and it should be the same on all Client machines.
  • --launcherstartup <launcherstartup>: If enabled, the Launcher will automatically launch when the system logs in (non-service mode on Windows only).
  • --restartstalled <restartstalled>: If enabled, the Launcher will try to restart the Slave application on this machine if it stalls.
  • --slavestartup <slavestartup>: If enabled, the Slave will automatically start when the Launcher starts.
  • --serviceuser <serviceuser>: The user name for the Launcher service (Windows only).
  • --servicepassword <servicepassword>: The password for the Launcher service (Windows only).
  • --launcherservice <launcherservice>: If enabled, the Launcher will be installed as a service, and requires an account with network access (Windows only).
  • --daemonuser <daemonuser>: The user to run the Launcher daemon as, or leave blank to run as root (Linux and OSX only).
  • --launcherdaemon <launcherdaemon>: If enabled, the Launcher will be installed as a daemon (Linux and OSX only).
  • --launcherservicedelay <launcherservicedelay>: If the Launcher is running as a service or daemon, this is the amount of seconds it waits after starting up before launching other Deadline applications.
  • --autoupdateoverride <autoupdateoverride>: Overrides the Auto Update setting for this client installation (leave blank to use the value specified in the Repository Options).

Installing as a Service or Daemon

On Windows and Linux, you can choose to install the Launcher as a service or daemon during installation. There are a few things to keep in mind when running Deadline in this mode.

Windows Service

When running as a service on Windows, the Launcher will run without displaying its system tray icon. If the Slave or Pulse application is started through the Launcher while it is in this mode, they will also run without a user interface. Finally, the Launcher can still perform an auto-upgrade, but only when launching the Slave and Pulse applications (launching the Monitor, for example, will not invoke an upgrade).

Note that when running the Launcher as a service, the Slave or Pulse application will also run in a service context. Since services run in a different environment, and potentially under a different user profile than the one currently logged in, certain considerations need to be made.

First, the default user for a service has no access to network resources, so while Launcher service will run without any issues, neither the Slave nor Pulse applications will be able to access the Repository. To avoid network access issues, you must configure the service to run as a user with network privileges. Typical desktop users have this permission, but check with your system administrator to find which account is best for this application.

Another issue presented by the service context is that there is no access to the default set of mapped drives. Applications will either need to map drives for themselves, or make use of UNC paths. While Deadline supports Automatic Drive Mapping, the SMB protocol does not allow sharing a resource between two users on the same machine. This means that mapping of drives or accessing a resource with different credentials may fail when running as a service on a machine which already requires access to the Repository.

There is also an issue with hardware-based renderers. Starting with Windows Vista, services now run in a virtualized environment which prevents them from accessing hardware resources. Because the renderer will run in the context of a service, hardware-based renderers will typically fail to work.

Linux Daemon

When installing the daemon, the Client installer creates the appropriate deadlinelauncherservice script in /etc/init.d.

When running as a daemon on Linux, the Launcher will run without displaying its system tray icon. If the Slave or Pulse application is started through the Launcher while it is in this mode, they will also run without a user interface. This is useful when running Deadline on a Linux machine that doesn’t have a Desktop environment.

Mac OSX Daemon

When installing the daemon, the Client installer creates the appropriate com.thinkboxsoftware.deadlinelauncher.plist file in /Library/LaunchDaemons.

When running as a daemon on Mac OSX, the Launcher will run without displaying its system tray icon. If the Slave or Pulse application is started through the Launcher while it is in this mode, they will also run without a user interface.

Client License Configuration

Before you can configure the license for the Client, the license server must be running. See the Licensing documentation for more information.

If you didn’t configure the license for the Client during installation (see above), there are a couple of ways to set the license for the Client. The quickest way is to use the right-click menu in the Launcher or the File menu in the Slave application to change the license server.

../_images/change_license_server.png

The other option is to set up Auto Configuration so that the Client automatically pulls the license server information.

Uninstallation

The Client installer creates an uninstaller in the folder that you installed the Client to. To uninstall the Client, simply run the uninstaller and confirm that you want to proceed with the uninstallation.

../_images/uninstall_client.png

Command Line or Silent Uninstallation

The Client uninstaller can be run in command line mode or unattended mode on each operating system.

To run in command line mode, pass the “–mode text” command line option to the installer. For example, on Linux:

./uninstall --mode text

To run in silent mode, pass the “–mode unattended” command line option to the installer. For example, on Windows:

uninstall.exe --mode unattended

To get a list of all available command line options, pass the “–help” command line option to the installer. For example, on Mac OS X:

./uninstall --help