Installation (Multiple Seats)¶
InTime can be deployed on multiple networked machines or in a server farm. Workload systems, such as LSF and SGE, are supported. Below is a typical deployment scenario for multiple InTime "workers" (see figure below).
Private Cloud Components¶
These are the components of a multi-seat configuration.
|InTime Server/License Server||Manages job scheduling, collating results and license management.|
|InTime (Worker)||Workers receives job assignments from the Server and runs them.|
|InTime (Client)||Client submits jobs (FPGA projects) to the Server and collates the results.|
The InTime Server acts as a job scheduler/manager and license manager when InTime is running on multiple machines at the same time. A License Server is also packaged together and is a service to allow InTime to use floating licenses. These two services are installed automatically if the default installation options are selected.
- Operating System: 64-bit architecture. Windows 10 / Ubuntu 16.04 / RedHat Enterprise 7 and above, or compatible.
- Minimum 500GB free disk space.
- Static IP address (also supports 127.0.0.1) to communicate with InTime worker processes.
- Ports 39940, 39941 to communicate with InTime worker processes.
- Port 39942 for the administrative console.
- Port 39946 for web-based configuration.
Java is required but InTime will install its own Java 1.8.0 JDK.
Deploy License Server Separately¶
Note that it is possible to deploy the License Server separately from the InTime Server. This can be due to administrative reasons. For example, licenses are located on an isolated machine. Another reason to separate the License Server is because the InTime handles file transfer and acts as a file handling manager, therefore it might be better to deploy it on a bigger machine.
To understand how to deploy the license separately, please refer to How to install License Server and InTime Server separately?
Download the installer from https://cloud.plunify.com/downloads.
Login as a privileged user and set user execute permissions for "intimeserver_v2.7_64bit_linux.sh". In this example, the user is "cadadmin", and the installation directory is "/home/cadadmin/intimeserver/".
$ pwd /home/cadadmin/intimeserver/ $ chmod u+x intimeserver_v2.7_64bit_linux.sh
As a security precaution, we do not allow the "root" account to install and run the InTime Server. It is not recommended to use the root to install or run any 3rd-party applications.
Run the installer file. Use default options for full installation. For those planning to migrate an existing InTime Server database and configurations from an earlier version, enter the same installation directory to overwrite an current installation.
$ ./intimeserver_v<version>_64bit_linux.sh Verifying archive integrity... All good. Uncompressing Plunify InTime Server version 2.6.10 (Build ccc1cfd)......................... INFO : Installing to /home/cadadmin/intimeserver Select installation type: ('1' - Full installation InTime Server/License Server, '2' - License Server only, '3' - InTime Server only)  INFO : Installing InTime Server/License Server... INFO : Completed server type setup. INFO : Installing SQLite support (default)... INFO : Completed database setup. Clean up and remove installation files? ('y' - Yes, 'n' - No) [n] INFO : Not removing installation files. Specify JVM (Java Virtual Machine) options: ('1' - minimal, '2' - optimal)  INFO : Using optimal JVM options by default. INFO : Completed JVM setup. To migrate an existing InTime Server installation, enter the existing installation path: (<Enter> to skip migration) INFO : No migration required. INFO : Completed migration setup. Specify the license file e.g. server.lic: (<Enter> to skip if you wish to copy the license file manually later) INFO : Not automatically installing the license file. INFO : Please copy the license file e.g. server.lic to /home/cadadmin/intimeserver/ before running. INFO : Completed license file installation step. InTime Server/License Server installation OK. Next, Make sure that the license file (e.g. server.lic) is in /home/cadadmin/intimeserver/ Run the following commands in a terminal console: cd /home/cadadmin/intimeserver ./start_server.sh $
Specify JVM (Java Virtual Machine) options
There are two options:  Minimal setting for 1GB of heapspace - suitable for running just the License Server;  Optimal setting for 4GB of heapspace - typically used for running the InTime Server.
Install License Server and InTime Server on 2 different servers
To install License Server and InTime Server on 2 or more servers, refer to this webpage for more information.
Install license and start the InTime Server. Copy the license file, e.g. server.lic, into
/home/cadadmin/intimeserver/and launch the InTime Server. To launch the InTime Server, run the script
$ pwd /home/cadadmin/intimeserver $ ./start_server.sh ----- SHELL SCRIPT VARIABLES ----- PID [OLD] = 29016 SERVERIP 1 = 192.168.2.100 $---------- BEGINNING OF LOG FILE ---------- UTC DATE/TIME: 2015-12-15 02:32:01.269 $---------- BEGINNING OF LOG FILE ---------- UTC DATE/TIME: 2015-12-15 02:32:01.269 Write permission (plunify.db) [ OK ] JDBC (plunify.db) [ OK ] JDBC (intimeruns.h2.db) [ OK ] Starting InTime Server [ OK ] Starting License Server [ OK ] Starting ACL Server [ OK ] License server.lic [ OK ] License has started? [ OK ] License not expired? [ OK ] License Mac 08:00:27:70:A5:E2 [ OK ] License features [ OK ] Admin portal can be accessed at http://localhost:39946/admin $
To start/restart the Server at a later time, just run
./start_server.shagain. To shut down the server run
Check the InTime Server's status.
$ ps -ef|grep java intime 5700 1 2 07:16 pts/3 00:00:03 /home/caadmin/intimeserver/./jdk/bin/java -Xms512m -Xmx1024m -server -Dlogback.configurationFile=/home/caadmin/intimeserver/./conf/logback.xml -DINTIMESERVER_HOME=/home/caadmin/intimeserver/. -classpath /home/caadmin/intimeserver/./intimeserver.jar:/home/caadmin/intimeserver/./lib/* com.plunify.main.InTimeServer -directory /home/caadmin/intimeserver/./plunify_server -licensefile /home/caadmin/intimeserver/./server.lic -log_level info
Automatically Start Server (Optional)
To automatically start the InTime Server when a machine boots up, add the following line to
/etc/rc.local. $ vi /etc/rc.local /bin/su -s /bin/bash -c '/home/cadadmin/intimeserver/start_server.sh' cadadmin
Download the (windows) installer from https://cloud.plunify.com/downloads.
Run the installer by double-clicking it on the machine designated as the InTime server. Select "Full Installation" to install the default. InTime Server will be installed in the default directory
C:\intimeserver. The installer will attempt to overwrite earlier version of libraries and files, do make sure a backup to this directory before installing.
Request a license from Plunify by providing the MAC address of the InTime Server machine. After receiving the license file, for example,
server.lic, place it in
Open a command prompt and navigate to
C:\intimeserver. To launch InTime Server, run the
Stop and restart
To shut down the server run
start_server.bat -stop. To start/restart the Server at a later time, just run
start_server.batagain in another shell.
Please ensure that you see the license acceptance message as shown below
A Windows Security Alert may pop up indicating that a Java binary is running. Click "Allow access" as shown below
Install InTime Agent (Worker)¶
Do this for every machine that uses InTime or just once in a shared folder. The installation process is the same as installing InTime for a single seat. Please refer to the Single Seat installation guide for the detailed instructions.
Assuming the InTime version is 3.1.2.
C:\Users\Test\Downloads> intime_v3.1.2_64bit_win.exe /AllUsers /S /NCRD
$ ACCEPT_LICENSE=1 DEFAULT_INSTALL=1 sh intime_v3.1.2_64bit_linux6.sh
Similarly, for InTime Server,
C:\Users\Test\Downloads> intimeserver_v3.1.2_64bit_win.exe /AllUsers /S /NCRD
$ DEFAULT_INSTALL=1 sh intimeserver_v3.1.2_64bit_linux6.sh
|DEFAULT_INSTALL||'1' - Full installation InTime Server/License Server, '2' - License Server only, '3' - InTime Server only|
Typical Job Scenario¶
This is a scenario of how a project is submitted over the the network to multiple machines.
- The InTime Agent is launched on multiple remote machines.
- The user starts an InTime Client. User opens a project and submits a job to the InTime Server. Usually this job has multiple revisions or strategies.
- The InTime Server accepts this job and assigns a job ID to it.
- The InTime Server queues the job and assigns individual strategy/revision to available InTime Agents.
- The InTme Agent software will accept the job and start an InTime Worker instance to work on it.
- Once the InTime Worker has completed their assigned strategy, the results are sent back to the InTime Server.
- InTime Server will mark the job as completed when all the results are back.
- InTime client will receive a notification in its next polling request. It will download the results, update the history and complete the job.
- InTime Agent will exit (if there are no more jobs) in LSF/SGE environment.