Customers
User information
 Loading ...
Show article in Knowledge Base

 What are the system requirements for the installed version of VisionProject? Export knowledge base Export     SubscribeSubscribe      Show article info

If you want to use the installed on-premise version of VisionProject then you need to set up one or more servers that the system can run on. The server(s) you choose need to be a normal/full Windows or Linux server, it can either a physical or virtual server. See below for the components you need to install and configure and also the performance requirements.

 

Please note that you also need to have a dedicated system manager and operations team that have experience managing similar applications. If you don't then you can still purchase and use the installed on-premise version, but you then need to purchase our premium support and remote application management services.   

 

Server  components and requirements


Operating system

 

The server can either be running 64-bit Windows or Linux based (any distribution should work - Debian and Ubuntu has been verified by customers). 
A user account with full/generous rights/permissions needs to be available on the server for VisionProject so it can execute and read/write to necessary folders.

 

Java 7

 

You should use the 64-bit Java 7 JDK from Oracle (http://www.oracle.com/technetwork/java/javase/downloads/index.html)     

 

Please note that Open JDK should not be used (even if it comes pre-installed in your operating system) - use standard Java from Oracle above

 

Apache Tomcat 7

 

As application server, Apache Tomcat is used, you should use the latest Tomcat 7 version available here: http://jakarta.apache.org/tomcat/.

 

Please note that if you are running Linux you should not use any version packaged with your Linux distribution, you need to install it separately

 

Chat/XMPP server 

 

To get chat and push functionality in the system you also need to downlowad and install the latest version of Tigase (http://www.tigase.net/). This is an open source XMPP server. This is also part of the installation process, more on this here...

 

Please note that to be able to use push/chat, you also need to choose a subdomain for your server such as VisionProject.mycompany.com (configured in your DNS)

 

Database

 

You can either use the Microsoft MS SQL Server or MySQL database.

 

If you use Microsoft SQL Server, version 2008 is supported, but we recommend that you use the latest version. The Express edition is not supported. If you use Microsoft SQL Server is used then you must have mixed mode authentication activated

 

If you use MySQL, then version 5.5 or above is required, we recommend the latest GA release. If you use MySQL it is important that the correct collation is used and utf-8 character encoding. Also you must use the InnoDB storage engine.

 

Please note that if the database is located on a separate server then communication is done via the JDBC protocol over standard ports such as (using any ports such as 1433 and 3306  that are standard)  

 

Also note the following requirements:

  • Indexes needs to be recreated regularly, nightly is recommended, but weekly also works if you recalculate indexes nightly.
  • MS SQL Server: CheckDB needs to be run regularly, nightly is recommended!
  • MS SQL Server UpdateStatistics needs to run regularly, nightly is recommended!
  • MySQL : Run mysqlcheck (analyze + optimize) regularly https://dev.mysql.com/doc/refman/5.7/en/mysqlcheck.html

 

Email server

 

Your email server must support SMTP so that the VisionProject can send/relay emails through it. The email server also need to support POP3 or IMAP4 protocols and allow VisionProject server to connect and communicate using any of these protocols (we recommend IMAP). 

 

If you want to use full two-way Outlook/Exchange integration with VisionProject then you need to use Exchange 2016 Server.

 

Other components and requirements

 

The server must be allowed to connect and communicate with any server that you want to integrate with using the correct protocol, such as:

  • Active Directory (AD) server if this is used for using LDAP protocol (using any port)
  • If you want SSL encryption for VisionProject you also need to purchase and install a SSL certificate. Can be purchased from several vendors, such as GoDaddy, Digicert, Thawte or Verisign.
  • For Single Sign On (SSO) with Kerberos the following is required:
    • The VisionProject server needs to be installed on a Windows server machine in a running in a windows network (with domain controller and proper domain names)
    • The server needs to be able to connect to the Active Dirtectory server (AD) and Kerberos Key Distribution Center (KDC). The KDC runs on each domain controller as part of Active Directory Domain Services (AD DS). 
    • You also need to set up a Domain User in the Active Directory for VisionProject.
    • Also important is that the date and time settings on the server must be in synch with the AD server. 
    • For more information about the SSO configuration with Kerberos, see here...
  • Provide VPN connection to your system environment for Visionera's support staff when required. We recommend that you set this up as a part of the installation process and contact our support staff to test this. The benefit is that our staff can help quickly if needed in the future. If VPN connection can't be provided for security reasons (or other reasons), then Visionera can't offer full support to the customer. Then extra charges may incur for helping and resolving support issues for the customer. 
  • You need to set up a backup scheme that is suitable for your organization. for example: 
    • Documents and files should be backed regularly. We recommend continuous data protection for point-in-time backup.
    • Database transaction log backups should be taken every 10 minutes or so. This is a must to be able to restore the database "point in time".
    • You should do a full database backup nightly or weekly
    • For details about the things you need to backup in the system, see here...
  • Configure monitoring for at least the following things:
    • Server ping
    • HTTP access, for example to : https://<your server url>/logon.do
    • Disk space
    • CPU usage
    • JMX (Java Management Extensions) for monitoring Java performance (for example heap space usage)
      • Nagios has several plugins for JMX. For example https://exchange.nagios.org/directory/Plugins/Java-Applications-and-Servers/check_jmx/details
    • Also recommended:
      • Network and disk IO performance

 

Server performance requirements


Performance requirements vary and depend on several things, mainly the number of users that are simultaneously using the system and the data volume you have.  We recommend using a virtual server environment, then starting small and scaling up as your requirements increases. The better the performance on the server(s) have, the faster the system will feel and the more users it can handle. 

 

The server(s) you use should be fast and dedicated for VisionProject, i.e. not used for other applications since this may affect performance and it will also be hard to monitor the servers. 

 

For VisionProject you need a modern and fast hardware architecture with :

  • Fast CPU's with enough cores
  • Generous amount of memory
  • Fast disks with good IO throughput (> 10000 IOPS) and low latency (2-4 ms average), SSD drives are recommended. At least 100MB/s speed is required for the application server and > 200 MB/s on the database server. Please note that for the database you should use separate disks for the operating system, for the data and log files, as well as other IO intensive files. For example if you are using MS SQL Server then the ldf, mdf and tempdb files should all be located on different disks.
  • If you use multiple servers you should at least have a 1 Gbit network backbone that connects the servers, but a 10 Gbit backbone is preferred. Also it is important that the network is not over-used by other systems or servers since this will affect performance. 
  • If you use virtual servers please see here for more information... 

  

Server example for 25 normal system users

 

Below is a real-life examples taken from one of our customers using one virtual server used for both database and the application server.

 

Server type Virtual (VM Ware)
Operating system Linux (Ubuntu)
Components Database, Tomcat, Nginx, Tigase
Database MySQL Server (community/free edition)
CPUs 3 Virtual CPU's  ***
RAM 12 GB RAM on the server
Memory allocated for Apache Tomcat 6 GB (-Xmx6144 -Xms4096)
Memory dedicated for the database 4 GB
Disk SSD with 300 MB/s IO performance

   

Server example for 50 normal system users

 

Below is a real-life examples taken from one of our customers using one virtual server used for both database and the application server.

 

Server type Virtual (VM Ware)
Operating system Linux (Ubuntu)
Database version MySQL Server (community/free edition)
Components Database, Tomcat, Nginx, Tigase
CPUs 4 Virtual CPU's  ***
RAM 16 GB RAM on the server
Memory allocated for Apache Tomcat 10 GB (-Xmx10240 -Xms7168)
Memory dedicated for the database 4 GB
Disk SSD with 300 MB/s IO performance

  

Server example for 100 normal system users

 

Below is a real-life examples taken from one of our customers using two virtual servers, one for the application server and another for the database. 

 

Application server:

 

Server type Virtual (VM Ware)
Operating system Windows 2012 Server 
Components Tomcat, Nginx, Tigase
CPUs 4 Virtual CPU's ***
RAM 13 GB RAM on the server
Memory allocated for Apache Tomcat 10 GB (-Xmx10240 -Xms7168)
Disk Regular disk with 150MB/s IO performance

 

Database server:

 

Server type Virtual (VM Ware)
Operating system Windows 2012 Server
Components Database
Database version MS SQL Server 2014 (standard edition)
CPUs 4 Virtual CPU's  ***
RAM 16 GB RAM on the server
Memory dedicated for the database 14 GB
Disk SSD with 300 MB/s IO performance

 

 

Network: Fast, stable and a low latency (10GB) network connection between servers

 

SAN: Separate file storage of documents 

 

  

Server example for 500 normal system users

 

Below is a real-life examples taken from one of our customers using four separate servers are used, one server for proxy and chat, two application servers in a cluster configuration and another server for the database. 

 

Proxy / chat server:

 

Server type Virtual (VM Ware)
Operating system Linux (Ubuntu)
Components  Nginx, Tigase
CPUs 1 Virtual CPU's  ***
RAM 2 GB RAM on the server
Disk 20 GB size regular disk with 150 MB/s IO performance

 

 

Two application servers with the configuration below:

 

Server type Virtual (VM Ware)
Operating system Linux (Ubuntu)
Components Tomcat
CPUs 4 Virtual CPU's ***
RAM 13 GB RAM on the server
Memory allocated for Apache Tomcat 10 GB (-Xmx10240 -Xms7168)
Disk Regular disk with 150MB/s IO performance

 

 

Database server:

 

Server type Virtual (VM Ware)
Operating system Windows 2012 Server
Components Database
Database MS SQL Server (standard edition)
CPUs 8 Virtual CPU's ***
RAM 36 GB RAM on the server
Memory dedicated for the database 14 GB
Disk SSD with above 300 MB/s IO performance

 

 

Network: Fast, stable and a low latency (10GB) network connection between servers

 

SAN: For file storage of documents and files

 

 

Special considerations for virtual servers

 

Please note, if you use a virtual platform you must make sure that you use reserved memory, since VisionProject will not perform well with dynamic memory. Also, other resources such as CPU and disk perfomance must be fast. 

 

For VM Ware, you can read more about this here:

http://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/enterprise-java-applications-on-vmware-best-practices-guide.pdf 

 

*** CPU performance in examples above

 

In all examples above 1GHz VCPU's are used based on a modern Intel Xeon CPU platform with fast single core performance, such as any of the following:

You can also use any equivalent platform for performance, but it is important that the individual VCPU performace is clocked high > 800 MHz for good performance. The performance score should be equivalent to any of the platforms above i.e. give you about 3000 Geekbench score or 2000 Passmark score.   

  

Do you need help?

 

If you need any help with configuration of your new server infrastructure, scaling up you existing servers, or just need help to benchmark your current server infrastructure please let us know by contacting our support team (support@visionflow.com)

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.


User comments
 Loading ...