Installation of Job Server on Linux


I read in the q1im getting started documentation that we can install Job Server on Linux machine with the following requirments.

Linux Operating System

  • SuSE Enterprise Server 10
  • Single Core 1.65 GHz+ Processor
  • 40 GB free disk space
  • 4 GB RAM

Software Prerequisites

  • Mono 2.8 or later
  • Direct TCP/IP access is required to use an Oracle database system. A connection

Moreover, I have found a Linux folder in the q1im (..\Q1IM_6.0.1\Jobservice\Linux) installation diretory which is mainly contains .exe and .dll files, this is why i believe the installation has probably to be done from the Windows machine.

However I don't know how and I haven't find topic on this.

  • Which file I have to execute to install job server on remote linux server?
  • How can I specify the following information: linux server hostname, linux system account, linux installation folder?
  • Does the system account need specific rights?

For your information.

  • Quest machine: Windows server 2008 R2 with Q1IM 6.0.1
  • Oracle machine: Linux SuSE Enterprise with Oracle Standard One Edition 11g R2 and Mono 2.8
  • In a second time we have supposed that we can run these binary files on linux with mono-service2 command.

    After analysing the file ../Q1IM_6.0.1/Jobservice/Linux Daemon/mono-service2_without_Oracle_Client.sample, we have:

    • created a system user visvc belongs to the group jobsvc.
    • moved contents from the ../Q1IM_6.0.1/Jobservice/Linux directory to the home directory /home/visvc/JobService.
    • moved file  ../Q1IM_6.0.1/Jobservice/Linux Daemon/mono-service2_without_Oracle_Client.sample in /etc/init.d/jobserverd
    • created directory /var/run/viserviced and put visvc as owner.

    Now, when logging with visvc we can run correctly the new daemon jobserverd which is calling viNetworkService.exe (in /home/visvc/JobService).

    Assuming that the service is working properly, how can we load a job server configuration?

    Indeed we don't find any JobService.cfg file, or any mention to this file in a script.

  • Hello Serge,

    the Jobservice configuration file (JobService.cfg) must be created on Windows with the Tool JobServiceConfigurator.exe. After that, you just copy over the configuration. For a working Oracle connection you must use the so called "direct" mode, thus you do not have to install any additional Oracle client software (e.g. Instantclient or Client Tools)

    For interim testing you can start the JobService directly by invoking "mono <PathToJobServiceDirectory>/JobServiceCmd.exe".

    One other thing which isn't noted in the documentation is that you can safely remove the file "Mono.Security.dll" from the Jobservice installation directory because this file will be provided by the Mono installation itself and it may conflict in some sittuations.

  • Hello Andre,

    Thank you for your answer

    I have created a JobService.cfg file on an another server with the tool JobServiceConfigurator.exe and put it in the /home/visvc/JobService directory on the rigjt server.

    When I start the service, I meet the following error on Job Server log plugin web application.

    2013-07-30 09:36:57 +02:00 - VI.JobService.JobComponents.HandleObjectComponent - E2B6A49E-D441-60D8-E040-007F02001A29: Errors occured
        Error saving  - SRV-ORACLE-INT: [810103] Error generating processes for event Checkversion.
        [810222] Error executing script 'Event_Checkversion'.
        [System.IO.FileNotFoundException] Could not load file or assembly 'Microsoft.VisualBasic, Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.
        The event  Checkversion was triggered for 1 object(s) of type Jobserver.

    Do you think this is about the Mono.Security.dll file?

  • No, that errormessage means that you are missing the Visual Basic support on Mono. For example on a SuSE Linux system that missing RPM package is called "mono-basic".

  • Thank you for your very helpful answer

    EDIT : These are not errors but finished process this is why I close the topic. Thank you again.

    The service start correctly, but after some changes on Designer (I have just added one language and commit to database), the job queue info shows a lot of errors.

    However I don't have any error on the job server logs.

    job queue errors.PNG

  • HI Serge,

    I don't see any errors in the picture you sent…just a lot of jobs. Nothing is frozen.

  • Hello again,

    The job service run correctly but the error below appears every hour on the job server log.

    Do you know why?

    2013-07-31 16:58:58 +02:00 - VI.JobService.JobComponents.ScriptComponent - 52c01f44-1b79-496e-90d1-fe7ad04ddc95: Errors occured
        [810222] Error executing script 'VID_TimeZone_Update_UTCOffSet'.
        [System.TimeZoneNotFoundException] Exception of type 'System.TimeZoneNotFoundException' was thrown.
          at StdioProcessor.StdioProcessor._Execute (VI.Base.JobProcessing.Job job) [0x00000] in <filename unknown>:0
          at VI.JobService.JobComponents.ScriptComponent.Activate (System.String task) [0x00000] in <filename unknown>:0
          at VI.JobService.JobComponents.ScriptComponent._TaskScriptExec () [0x00000] in <filename unknown>:0
          at VI.DB.Scripting.ScriptInstance.Eval (System.String key, System.Object[] parameters) [0x00000] in <filename unknown>:0
           ---- Start of Inner Exception ----
          at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
          at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
          at DynScripts.VIDScripts_E2676F41964F1CF8E040007F02006D4A.VID_TimeZone_Update_UTCOffSet () [0x00000] in <filename unknown>:0
          at System.TimeZoneInfo.FindSystemTimeZoneById (System.String id) [0x00000] in <filename unknown>:0
          at System.TimeZoneInfo.FindSystemTimeZoneByFileName (System.String id, System.String filepath) [0x00000] in <filename unknown>:0

  • This is a known defect in the script VID_TimeZone_Update_UTCOffSet. Dell Software Support can provide a fix for this issue. Ask for the fix from ticket / case # 2184935 (VPR: 18820).

    Background: The database triggers every hour the calculation of an UTC offset for every timezone from table DialogTimeZone. The MS .Net Framework or the Mono implementation uses OS dependent system calls. In case of Mono there is a different naming convention used for timezones. Additionally sometimes not all timezones from DialogTimeZone are known by the OS.

  • Hello Andre,

    Thank you, I opened a ticket. We will see...

    Have a good day