Announcement

Collapse
No announcement yet.

Linux slaves unable to DR Vray 3.0 because of license 111 error

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Linux slaves unable to DR Vray 3.0 because of license 111 error

    We have a VRay 3 float server running (vrlservice 30501) on a CentOs 6 Server.
    Our windows workstations are able to check out licenses from Maya (Maya 2014 Ext. SP1 with VRay 3 build 30501).
    The CentOs render slaves are able to render vrscenes when running from commandline (e.g. /usr/autodesk/maya2014-x64/vray/bin/vray sceneFile=vrscene.txt)
    The CentOs render slaves are able to render vrscenes when running from deadline (which uses the same command line, so it's no wonder that works)

    However, the vraymayaslave services on those same slaves are unable to retrieve a license when trying to do a DR from Maya (error 111)
    I have tried running services both as normal user as well as su, no difference. Vray 2 vraymayaslave services have always worked on the same machines with the same settings.
    I have tried with the firewalls off, with SELinux set to permissive mode.
    Dumping the content via setvrlservice shows license server ip and ports are correct.
    When logging into the slaves via remote and browse to the getstatus page of the server reveals the slaves can access and read the 30304 status page.
    The server can be pinged and traceroute works as well.

    I'm kinda running out of ideas at the moment as to how to fix this.

    Anyone any ideas how to fix this?

    Sven

    (p.s. my own forum account has thread posting disabled for some reason, hence me posting via our company account)

  • #2
    Error 111 means that V-Ray could not connect to the license server, so it either has to be that the slave services run under a different user, or they are blocked from making the connection.

    For the forum access, please email us to vraymaya@chaosgroup.com so that the support guys can help with that.

    Best regards,
    Vlado
    I only act like I know everything, Rogers.

    Comment


    • #3
      The issue is most probably because the service is running as a different user, for example root.
      Since V-Ray client license settings are set per user, you either need to run the setvrlservice for each user or set the VRAY_AUTH_CLIENT_FILE_PATH environment variable globally, to point to the folder that contains the vrlclient.xml file with the V-Ray license server settings (IP address and port number).
      Please let us know the exact V-Ray build installed on all machines.

      It would be better if you drop is an email about that issue at vraymaya@chaosgroup.com

      Thank you very much in advance.
      Svetlozar Draganov | Senior Manager 3D Support | contact us
      Chaos & Enscape & Cylindo are now one!

      Comment


      • #4
        But the strange thing is the machines CAN access the license server perfectly with ANY service / program EXCEPT vraymayaslave2014, even though iptables is off and selinux is set to permissive on both ends.
        The vraymayaslave2014 vray 2.x services managed to access the service perfectly fine, it's since vray 3 we have these problems.

        I'm probably missing something incredibly obvious, but i sure as hell can't figure out what.

        Sven

        * edit *

        just saw your post, i have tried running both as root and the normal user, but i'll try again, just to be sure
        Last edited by Hos; 10-04-2014, 02:04 AM.

        Comment


        • #5
          Another thing you need to verify is that you have proper ~/.ChaosGroup/vrlclient.xml file for the user running the process.
          If you don't have it, just copy an existing one from the other users, or use the setvrlservice tool to create one for this user.
          V-Ray developer

          Comment


          • #6
            Both users (root and normal user) have the vrlclient.xml file, and both are correct

            I just reinstalled VRay 2 on the slave, and when doing a DR from Maya (using Vray 2 as well, as Vray 3 seems to have changed the vrscene format concerning mesh data, and thus crashes any vray 2 slave that tried to render along) it has NO problems whatsoever connecting to the license server from the vrayslave2014 daemon.

            What has changed from vray 2 to vray 3 that DR doesn't connect to the license server?

            Sven

            Comment


            • #7
              Can you post the output of "ps aux | grep -i vray" after you start the daemon?
              V-Ray developer

              Comment


              • #8
                root 13337 0.6 0.0 502040 28096 ? Ssl 15:59 0:00 /usr/autodesk/maya2014-x64/vray/bin/vray.bin -daemon -server -portNumber=20207 -logDir=/tmp/vraymayaslave2014 -display=0

                Comment


                • #9
                  Originally posted by Hos View Post
                  What has changed from vray 2 to vray 3 that DR doesn't connect to the license server?
                  Nothing whatsoever, which makes the matter very puzzling (and it does work fine for other users).

                  Best regards,
                  Vlado
                  I only act like I know everything, Rogers.

                  Comment


                  • #10
                    So the daemon is run as root...

                    Can you search your system for vrlclient.xml file and verify that all the copies have the proper settings?
                    Also can you paste the content of every file you find in a forum post?

                    The default location is in ~/.ChaosGroup/vrlclient.xml (as I've already mentioned), but you can override the location by setting the VRAY_AUTH_CLIENT_FILE_PATH environment variable.
                    Have you set this variable?
                    V-Ray developer

                    Comment


                    • #11
                      Yes, the daemon is run as root.

                      There are 2 vrlclient.xml files (/root/.ChaosGroup, and /home/gast/.ChaosGroup), both contain the excat same settings :

                      Code:
                      <VRLClient>
                      <LicServer>
                      <Host>192.168.123.100</Host>
                      <Port>30304</Port>
                      <Host1></Host1>
                      <Port1>30304</Port1>
                      <Host2></Host2>
                      <Port2>30304</Port2>
                      <!Proxy></!Proxy>
                      <!ProxyPort>0</!ProxyPort>
                      <User></User>
                      <Pass></Pass>
                      </LicServer>
                      </VRLClient>
                      As for the variable
                      I tried
                      Code:
                      export VRAY_AUTH_CLIENT_FILE_PATH=/home/gast/.ChaosGroup/vrlclient.xml
                      and
                      Code:
                      export VRAY_AUTH_CLIENT_FILE_PATH=/home/gast/.ChaosGroup
                      Sven

                      Comment


                      • #12
                        Holy crap, i got it to work...

                        I added the export to the vraymayaslave2014 daemon script
                        Code:
                        #!/bin/bash
                        #
                        # vraymayslave - An init script for the V-Ray for Maya render server daemon
                        #
                        # Copyright (c) 2010 Chaos Software, Ltd.
                        #
                        # Version: 0.1 (8 Apr 2010)
                        #
                        ### BEGIN INIT INFO
                        # Provides:       vraymayslave
                        # Required-Start: $hotplug
                        # Required-Stop:
                        # Default-Start: 3 4 5
                        # Default-Stop: 0 1 2 6
                        # Description:  Starts up the V-Ray for Maya render server
                        ### END INIT INFO
                        
                        export LD_LIBRARY_PATH=/usr/ChaosGroup/V-Ray/Maya2014-x64/lib/linux_x64/gcc-4.4:$LD_LIBRARY_PATH
                        export VRAY_AUTH_CLIENT_FILE_PATH=/home/gast/.ChaosGroup
                        
                        SCRIPT=vraymayaslave2014
                        DAEMON=/usr/autodesk/maya2014-x64/vray/bin/vray.bin
                        PIDDIR=/tmp/${SCRIPT}
                        PIDFILE=$PIDDIR/pid
                        NAME="V-Ray for Maya render server"
                        
                        StartService() {
                                StopService
                                echo -n "Starting $NAME..."
                                if test ! -d $PIDDIR; then
                                        mkdir -p $PIDDIR
                                fi
                                ${DAEMON} -daemon -server -portNumber=20207 -logDir="$PIDDIR" -display=0
                                RETVAL=$?
                        
                                PID=`head -n 1 "${PIDFILE}"`
                                echo "PID $PID"
                        
                                if test ${RETVAL} = 0 && test ! -z "${PID}"; then
                                        echo "done"
                                else
                                        echo "FAILED"
                                        rm -f $PIDFILE
                                fi
                        }
                        
                        ServiceStatus() {
                                if test -f $PIDFILE; then
                                        PID=`head -n 1 "${PIDFILE}"`
                                        if test -z "$PID"; then
                                                return 0
                                        fi
                                        RUNNING=`ps -p ${MYPID} | grep ${MYPID}`
                                        if test -z "${RUNNING}"; then
                                                exit 0
                                        else
                                                exit 1
                                        fi
                                else
                                        exit 0
                                fi
                        }
                        
                        StopService() {
                                if test -f $PIDFILE; then
                                        PID=`head -n 1 "${PIDFILE}"`
                                        if test ! -z "${PID}"; then
                                                RUNNING=`ps -p ${PID} | grep ${PID}`
                        
                                                if test ! -z "${RUNNING}"; then
                                                        echo -n "Stopping $NAME (PID ${PID})..."
                                                        if kill -TERM ${PID} > /dev/null 2> /dev/null; then
                                                                echo "done"
                                                        else
                                                                echo -n "retrying..."
                                                                sleep 5
                                                                if kill -9 ${PID} > /dev/null 2> /dev/null; then
                                                                        echo "done"
                                                                else
                                                                        echo "FAILED"
                                                                        return
                                                                fi
                                                        fi
                                                fi
                                        else
                                                #PID file is empty, the process is not running any more
                                                echo "warning: daemon is probably crashed/stopped manually"
                                        fi
                                        rm -f $PIDFILE
                                fi
                        }
                        
                        case "$1" in
                          start)
                                StartService
                                exit 0
                                  ;;
                          stop)
                                StopService
                                exit 0
                                  ;;
                          restart)
                                StopService
                                sleep 2
                                StartService
                                exit 0
                                  ;;
                          status)
                                ServiceStatus
                                ;;
                          *)
                        
                                echo "Usage: /etc/init.d/$SCRIPT {start|stop|restart}"
                                exit 1
                                  ;;
                        esac
                        
                        exit 0
                        Gonna try the other slaves on the farm...

                        Sven

                        Comment


                        • #13
                          Awww yeah, doing progressive path tracing on 128 Xeon E5 cores is shweeet

                          Thanks for pointing us in the right direction.

                          Sven

                          Comment


                          • #14
                            Very well then It might be that the HOME environment variable is not defined when the V-Ray runs as a render slave so it cannot find the file; using the VRAY_AUTH_CLIENT_FILE_PATH environment variable should help with that.

                            Best regards,
                            Vlado
                            I only act like I know everything, Rogers.

                            Comment

                            Working...
                            X