I’m testing out Deadline and I need a bit of help setting it up. I want to have the following setup:
1 Windows - Deadline Client (Workstation)
1 Windows - Deadline Repository
1 Linux - Deadline Slave
I have installed Deadline on these machines, but the slave isn’t showing up. The Linux box is also command line only with no GUI interface. The machines all reside on a network with a bunch of other machines. I’m fairly new to this and would appreciate any assistant.
Might be a silly question, but did you launch the slave on either of those machines? The slave only shows up in the Deadline Monitor after it has been run once.
If the slaves are running but aren’t showing up, check their logs to see if they are printing any errors. Perhaps they are unable to write to the repository folder, in which case you should check the repository share permissions to make sure they allow for full reading/writing:
thinkboxsoftware.com/deadlin … rysharing/
If none of this helps, let us know and we’ll keep digging.
Cheers,
-Ryan
Not a silly question at all. Silly questions are usually the way to find answers to what’s wrong with things. It turns out that the path to the DeadlineRepository was incorrect.
But now this brings up a new problem for me. It says mono cannot be found:
./deadlineslave: line 3: exec: mono: not found
When I type in mono, in the terminal window it brings up the mono options so it is there.
I moved mono from /usr/local/bin/mono to /usr/bin/mono.
I re-ran deadlineslave and was given the following error:
Deadline Slave 5.1: An exception was thrown by the type initializer for Mono.Unix.Native.Syscall (System.TypeInitializationException)
at Mono.Unix.UnixFileSystemInfo.GetFileStatus (System.String path, Mono.Unix.Native.Stat& stat) [0x00000] in :0
at Mono.Unix.UnixFileSystemInfo.Refresh (Boolean force) [0x00000] in :0
at Mono.Unix.UnixFileSystemInfo…ctor (System.String path) [0x00000] in :0
at Mono.Unix.UnixFileInfo…ctor (System.String path) [0x00000] in :0
at FranticX.IO.File2.CreateSymbolicLink (System.String originalFileName, System.String symbolicLinkFileName) [0x00000] in :0
at Deadline.Configuration.DeadlineConfig.InitPython () [0x00000] in :0
Hmm, I’m wondering if moving mono like that is related to the problem. I would recommend moving it back, and then trying to get it work from that location.
That’s strange that it’s saying mono can’t be found, especially if it’s from the same terminal window that can run mono just fine. Can you try running this instead?
mono deadlineslave.exe
This assumes you’re in the Deadline bin folder (ie: /usr/local/Thinkbox/Deadline/bin), which I’m assuming you’re in when you run “./deadlineslave”. This is just a test to see if it would run properly if the shell script could find mono.
Cheers,
Oops sorry. I was typing out what was happening as I was going through.
I moved mono back and ran what you recommended. Here’s the full output of what I get. Should I also worry about the IPv6 warning?
[code]
GC Warning: Limiting number of mark threads
Type Initialization Exception occurred while running in GUI mode, which means that libgdiplus isn’t installed or can’t be loaded. GUI mode will be disabled.
** (deadlineslave.exe:12682): WARNING **: System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
Deadline Slave 5.1 [v5.1.0.47014 R]
** (deadlineslave.exe:12682): WARNING **: System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
Auto Configuration: No auto configuration could be detected, using local configuration
Deadline Slave Configuration Error: UnauthorizedAccessException: Access is denied to directory ‘/mnt’
Deadline Slave will now exit.[/code]
You don’t have to worry about the IPv6 warning. If we could suppress that in mono, we would.
What’s the repository path that the Deadline Client is pointing to? It sounds like it’s pointing to /mnt, when it probably should be /mnt/DeadlineRepository (or whatever you mounted the repository too).
Cheers,
Whatever is in /mnt is the DeadlineRepository. So just think mnt = DeadlineRepository for now.
Maybe try creating a new folder in /mnt (call it DeadlineRepository), and then mount the repository share to /mnt/DeadlineRepository. Then point the client to /mnt/DeadlineRepository instead of /mnt. I’m assuming that the /mnt folder has permissions that don’t allow writing to it directly, which would explain your problem.
Cheers,
I can’t do a mkdir without having to sudo so I will still have permission problems. I made the DeadlineRepository folder just to test it and tried making another folder within to test it and it still complains about permission problems. I did a chmod 777 for the DeadlineRepository folder and tried it again and still complains about permissions.
Hmm…
If you do a sudo mkdir to make /mnt/DeadlineRepository, followed by a sudo mount to mount the repository share to /mnt/DeadlineRepository, the /mnt/DeadlineRepository folder should inherit the permissions set on the windows repository share. If it’s still complaining about permissions, then I would think that the permissions on the windows repository share aren’t set properly.
Which mount protocol are you using? Is it samba or cifs?
I’m using cifs and the windows share property is exactly as shown in the documentation.
I tried modifying the deadlineslave file at line 3 to /usr/local/bin/mono instead of just mono and it still spits out the error I previously had. Also reran it as:
sudo /usr/local/bin/mono deadlineslave.exe
and still the same error:
[code]GC Warning: Limiting number of mark threads
Type Initialization Exception occurred while running in GUI mode, which means that libgdiplus isn’t installed or can’t be loaded. GUI mode will be disabled.
** (deadlineslave.exe:15803): WARNING **: System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
Deadline Slave 5.1 [v5.1.0.47014 R]
** (deadlineslave.exe:15803): WARNING **: System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
Auto Configuration: No auto configuration could be detected, using local configuration
slave initialization beginning.
Deadline Slave 5.1: An exception was thrown by the type initializer for Mono.Unix.Native.Syscall (System.TypeInitializationException)
at Mono.Unix.UnixFileSystemInfo.GetFileStatus (System.String path, Mono.Unix.Native.Stat& stat) [0x00000] in :0
at Mono.Unix.UnixFileSystemInfo.Refresh (Boolean force) [0x00000] in :0
at Mono.Unix.UnixFileSystemInfo…ctor (System.String path) [0x00000] in :0
at Mono.Unix.UnixFileInfo…ctor (System.String path) [0x00000] in :0
at FranticX.IO.File2.CreateSymbolicLink (System.String originalFileName, System.String symbolicLinkFileName) [0x00000] in :0
at Deadline.Configuration.DeadlineConfig.InitPython () [0x00000] in :0
[/code]
I just redid the mount and tried your suggestions once again:
[code]GC Warning: Limiting number of mark threads
Type Initialization Exception occurred while running in GUI mode, which means that libgdiplus isn’t installed or can’t be loaded. GUI mode will be disabled.
** (/usr/local/Thinkbox/Deadline/bin/deadlineslave.exe:17158): WARNING **: System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
Deadline Slave 5.1 [v5.1.0.47014 R]
** (/usr/local/Thinkbox/Deadline/bin/deadlineslave.exe:17158): WARNING **: System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
Auto Configuration: No auto configuration could be detected, using local configuration
Deadline Slave Configuration Error: UnauthorizedAccessException: Access is denied to directory ‘/mnt/DeadlineRepository’
Deadline Slave will now exit.
[/code]
My guess is the local permissions on that share are the issue. By default the share mounted is owned by root locally.
I was going to go into a step-by-step tutorial here, but this web page has done that for me
microitblog.com/2011/04/21/mount … rmissions/
That should help.
I just learned something new, but it still gives me the same Exception.
Deadline Slave 5.1: An exception was thrown by the type initializer for Mono.Unix.Native.Syscall (System.TypeInitializationException)
at Mono.Unix.UnixFileSystemInfo.GetFileStatus (System.String path, Mono.Unix.Native.Stat& stat) [0x00000] in <filename unknown>:0
at Mono.Unix.UnixFileSystemInfo.Refresh (Boolean force) [0x00000] in <filename unknown>:0
at Mono.Unix.UnixFileSystemInfo..ctor (System.String path) [0x00000] in <filename unknown>:0
at Mono.Unix.UnixFileInfo..ctor (System.String path) [0x00000] in <filename unknown>:0
at FranticX.IO.File2.CreateSymbolicLink (System.String originalFileName, System.String symbolicLinkFileName) [0x00000] in <filename unknown>:0
at Deadline.Configuration.DeadlineConfig.InitPython () [0x00000] in <filename unknown>:0
In there a symlink in your Deadline client bin folder called libpython2.6.so? If there is, try deleting it and running the slave again to see if that helps.
Also, just to confirm, which folder are you running the slave out of?
I found a file called libpython2.6.so in here:
/usr/local/Thinkbox/Deadline/python/2.6.7/x86/lib/libpython2.6.so
/usr/local/Thinkbox/Deadline/python/2.6.7/x86_64/lib/libpython2.6.so
I deleted these and the only other places with it are in maya, lib64, and nuke.
I’m running out from /usr/local/Thinkbox/Deadline/bin/
I cd into that directory then execute ./deadlineslave
Could it possibly have to do with my mono install? I’m running centos and installed it from source basically.
I downloaded mono from here: origin-download.mono-project.com … 7/sources/
And used mono-2.6.7.tar.bz2
I found the configure script in the stickied post above and tried that out since I think it may have been a mono issue. And I think it may have been a mono issue because now it returns this instead, does this mean the slave is running? It doesn’t show up on the monitor.
System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
Deadline Slave 5.1 [v5.1.0.47014 R]
System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
Auto Configuration: No auto configuration could be detected, using local configuration
slave initialization beginning.
Info Thread - Created.
Trying to connect using license server ''
Could not get license on first attempt because:
Cannot find license file.
The license files (or license server system network addresses) attempted are
listed below. Use LM_LICENSE_FILE to use a different license file,
or contact your software provider for a license file.
Feature: deadline
Filename: /usr/local/flexlm/licenses/license.dat
License path: /usr/local/flexlm/licenses/license.dat:
FLEXnet Licensing error:-1,359. System Error: 2 "No such file or directory"
For further information, refer to the FLEXnet Licensing documentation,
available at "www.flexerasoftware.com".
Could not get license on second attempt because:
Cannot find license file.
The license files (or license server system network addresses) attempted are
listed below. Use LM_LICENSE_FILE to use a different license file,
or contact your software provider for a license file.
Feature: deadline
Filename: /usr/local/flexlm/licenses/license.dat
License path: /usr/local/flexlm/licenses/license.dat:
FLEXnet Licensing error:-1,359. System Error: 2 "No such file or directory"
For further information, refer to the FLEXnet Licensing documentation,
available at "www.flexerasoftware.com".
Failed to checkout a license using saved configuration.
Attempting auto discovery of license servers.
Broadcasting on 192.168.3.2
Unable to detect vendor daemons on local network(s)
Thank you for trying Deadline!
The Slave is running in LICENSE-FREE MODE because no valid license could be found. The Slave will continue to run in this mode as long as no more than two Slaves exist in the Deadline Repository.
Purchasing a valid license will allow you to run more than two Slaves, and will prevent this message from being displayed. For more information, please email sales@thinkboxsoftware.com
System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
LICENSE-FREE MODE: Repository has two slaves or less - no license required.
Checking repository integrity
System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
System.Net.Sockets.SocketOptionName 0x1b is not supported at IPv6 level
Based on the logs, it never occurred to me it might be a Mono issue, since we hadn’t seen those particular errors before.
It looks like it’s running, but you should be able to confirm by seeing the slave showing up as idle in the Deadline Monitor.
Cheers,
-Ryan
It does show up now as idle. Thanks again for all your help.