Installation (Multiple Seats)¶
InTime can be deployed on multiple networked machines or a server farm. Workload systems, such as LSF and SGE, are supported. Below is a typical deployment scenario for multiple InTime workers.
Private Cloud Components¶
These are the main components in a multiple seats configuration.
|InTime Server/License Server||Manages the 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 by default during installation when the default options are selected.
- Operating System: 64-bit architecture. Windows 7 / Ubuntu 12.04 / RedHat Enterprise 5 and above, or compatible.
- Minimum 500GB free disk space.
- Static IP address 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 reason. 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, 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 the default options for full installation. For those user who are planning to migrate existing database and configurations from an earlier version, enter the same directory of the ealier version for the installer to overwrite.
$ ./intimeserver_v<version>_64bit_linux.sh Verifying archive integrity... All good. Uncompressing Plunify InTime Server version 2.6.10 (Build ccc1cfd)......................... Installation selection ('1' Full installation InTime Server/License Server, '2' License Server only, '3' InTime Server only)  1 Installing InTime Server/License Server Install for which database? ('1' for SQLite or '2' for MySQL)  1 Install support for SQLite Do you want to clean up(remove) the installer ('y' for Yes or 'n' for No) [n] n Use jvm options default(1), minimal(2), optimal(3) (Blank is default) 1 If you plan to migrate configuration and database from an earlier version of InTime Server installed on another directory, key in the directory to migrate. If you are installing over the existing directory or this is the first time you install InTime Server, press enter to skip [enter]: Skipping. InTime Server/License Server installation OK. $
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 Server. Put 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.0.2.
C:\Users\Test\Downloads> intime_v3.0.2_64bit_win.exe /AllUsers /S /NCRD
$ ACCEPT_LICENSE=1 DEFAULT_INSTALL=1 sh intime_v3.0.2_64bit_linux6.sh
Similarly, for InTime Server,
C:\Users\Test\Downloads> intimeserver_v3.0.2_64bit_win.exe /AllUsers /S /NCRD
$ ACCEPT_LICENSE=1 DEFAULT_INSTALL=1 sh intimeserver_v3.0.2_64bit_linux6.sh
|ACCEPT_LICENSE||Accept the EULA license.|
|DEFAULT_INSTALL||1 - Full installation of 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.