System Requirements

General Requirements

Tasktop Integration Hub must be installed in a server environment.

(lightbulb) Note: Only one instance of Tasktop should be installed on each server.

User Requirements

You will need an account with administrative privileges on your server to install and configure Tasktop Integration Hub.  That account must have read/write access to the  default file locations.

Supported Operating Systems

The following 64-bit operating systems and versions are supported:

  • Windows 7 SP1
  • Windows 10
  • Windows Server 2008 R2 SP1
  • Windows Server 2012 R2
  • Windows Server 2012
  • Windows Server 2016
  • Windows Server 2019
  • Red Hat Enterprise Linux 6.x
  • Red Hat Enterprise Linux 7.x
  • Ubuntu Linux 12.04 LTS
  • Ubuntu Linux 14.04 LTS
  • Ubuntu Linux 16.04 LTS
  • SUSE Linux Enterprise Server 11.x
  • SUSE Linux Enterprise Server 12.x

Supported Browsers 

Tasktop Integration Hub has been developed to run with a minimum screen resolution of 1280 pixels by 800 pixels.

The Tasktop Integration Hub web interface is supported on the following browsers:

  • Firefox 70.0+
  • Google Chrome 78.0+

  • Internet Explorer 11 (Latest Version)
    • (warning) Internet Explorer is not a recommended browser for using Tasktop Integration Hub. We recommend using the latest Google Chrome or Firefox browsers.


Available under Extended Support:
  • Firefox 63.0 - 69.x
  • Google Chrome 70.0 - 77.x

(lightbulb) If you are interested in extended support, please reach out to your Tasktop contact.

Supported Databases for storing Tasktop Operational Data 

This feature is not applicable to Tasktop Cloud.

(warning) Tasktop automatically stores operational data to a pre-configured Derby database.  This is suitable for evaluation purposes only, and is not supported for production environments.  Configuring Tasktop to utilize an external database will enable you to perform frequent back-ups without having to stop Tasktop Integration Hub, and ensure that your Tasktop Integration Hub practices are consistent with your existing disaster and recovery process. 

For details on how to configure an external operational database, please refer to the Settings page.

You can also learn more about Disaster Recovery on Tasktop Integration Hub here.

Please see guidelines regarding external database sizing here.

For all supported databases, the user must have sufficient permissions to connect, create, alter and drop tables and indexes and create temporary tables. Users must also have sufficient permissions to select, insert, update, delete, and truncate tables.

Please note that Tasktop supports this operational database policy for scenarios where your database is on any cloud infrastructure like AWS or Azure. Please refer to the resources below for  information on how to encrypt communication between Hub and Database:

(lightbulb) Note: A separate database must be used for Tasktop Operational Data and Enterprise Data Stream integrations.  The following databases and versions are supported for storing Tasktop operational data:

Microsoft SQL Server

Supported Versions

  • 2016 SP2
  • 2017

Extended Support

  • 2014 SP3

(lightbulb) If you are interested in extended support, please reach out to your Tasktop contact.

Configuration Settings

  • Database must be configured to be case sensitive. We recommend Latin1_General_100_CS_AS_KS_WS.
    • This can be configured using the following command (replacing 'dbName' with the name of your database)

    ALTER DATABASE dbName COLLATE Latin1_General_100_CS_AS_KS_WS;
  • We recommend monitoring the size of your transaction log, as very large transaction logs can cause database connection errors

Necessary User Permissions

  • The user must be a SQL authenticated user (not a Windows authenticated user)
  • Additionally, the user must have the following roles granted:
    • db_datareader
    • db_datawriter
    • db_ddladmin

MySQL

Supported Versions

  • 5.7.7+ (excluding 5.7.0 - 5.7.6)
  • 8.0 

Configuration Settings

The following settings must be applied before connecting to MySQL with Tasktop:

  • Database must be configured to be case sensitive
    • This can be configured using the following command (replacing 'dbName' with the name of your database): 

      ALTER DATABASE dbName COLLATE = 'utf8_bin'
  • Database default charset must be UTF-8, ALTER DATABASE dbName CHARACTER SET = 'utf8'
    • Can also create database with these settings: CREATE DATABASE dbName CHARACTER SET = 'utf8'

  • innodb_default_row_format must be DYNAMIC
  • innodb_file_format must be Barracuda
  • innodb_file_per_table must be ON
  • innodb_large_prefix must be ON
  • innodb_buffer_pool_size must be minimum 1G

    • This size is highly dependent on customer hardware and data size. The number above is a recommendation. Please consult Tasktop Support if you have any questions.

  • max_allowed_packet property must be minimum 64M
    • If this is set too low, you will see a "Packet for query is too large" error on the Activity screen

  • max_connections property should be minimum 500
    • Note: the number of connections Tasktop uses is highly dependent on customer configuration, hardware, and load.  The number above is a recommendation.  Please consult Tasktop Support if you have any questions.

(lightbulb) Note: innodb settings are the default setting for MySQL, so you will not need to make any changes to those settings unless they have been changed previously.  The innodb settings apply globally to all MySQL databases on the server, while the character set is specific to the database.

(warning) Configuring Tasktop Integration Hub with the MySQL external operational database will prohibit the synchronization of 4-byte characters due to MySQL's default UTF8 encoding being limited to 3 bytes. Examples of 4-byte characters include but are not limited to some emojis and some Chinese characters. If you may be synchronizing 4-byte characters, consider using another supported database.

Necessary User Permissions

The following provides sufficient permissions for the tasktop_hub user on the tasktop_hub database:

REVOKE ALL PRIVILEGES, GRANT OPTION FROM tasktop_hub;

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, INDEX, LOCK TABLES, REFERENCES ON tasktop_hub.* TO tasktop_hub

Oracle

Supported Versions

  • 12c
  • 18c
  • 19c

Extended Support

  • 11g

(lightbulb) If you are interested in extended support, please reach out to your Tasktop contact.

Configuration Settings

  • Database must be configured to be case sensitive (this is the default configuration)
  • The database must be configured with the AL32UTF8 character set.
ALTER DATABASE dbName CHARACTER SET AL32UTF8;

Necessary User Permissions:

User must have CREATE SEQUENCE, CREATE TABLE, CREATE SESSION permissions, as well as sufficient tablespace quota. Typical user creation might look as follows:

CREATE USER tasktop_hub IDENTIFIED BY a_password DEFAULT TABLESPACE tasktop_hub;

GRANT CREATE SESSION TO tasktop_hub;

GRANT CREATE SEQUENCE, CREATE TABLE TO tasktop_hub;
GRANT UNLIMITED TABLESPACE TO tasktop_hub;

PostgreSQL

Supported Versions

  • 9.4
  • 9.5
  • 9.6
  • 10
  • 11
  • 12

Configuration Settings

  • Database must be configured to be case sensitive (this is the default configuration)
  • The database must be configured with the UTF8 character set. 
CREATE DATABASE dbName 
ENCODING 'UTF8' 
LC_COLLATE = 'en_US.UTF-8' 
LC_CTYPE = 'en_US.UTF-8' 
TEMPLATE template0

Necessary User Permissions

The following provides sufficient permissions for the tasktop_hub user on the tasktop_hub database, when using a public schema:

REVOKE ALL PRIVILEGES ON DATABASE tasktop_hub 
	FROM tasktop_hub;
	
GRANT CONNECT, TEMP ON DATABASE tasktop_hub
	TO tasktop_hub;

GRANT CREATE ON SCHEMA public
	TO tasktop_hub;
	
GRANT SELECT, INSERT, UPDATE, DELETE, TRUNCATE
	ON ALL TABLES IN SCHEMA public
	TO tasktop_hub;

The following provides sufficient permissions for the tasktop_hub user on the tasktop_hub database, when using a custom schema:

(lightbulb) If you use a custom schema, please note that when configuring the external database connection you will need to add "?currentSchema=tasktop" to the database connection URL, e.g. jdbc:postgresql://example.com:5432/dbName?currentSchema=tasktop

CREATE SCHEMA TASKTOP;

REVOKE ALL PRIVILEGES ON DATABASE tasktop_hub
     FROM tasktop_hub;

GRANT CONNECT, TEMP ON DATABASE tasktop_hub
     TO tasktop_hub;

GRANT CREATE ON SCHEMA Tasktop
     TO tasktop_hub;

GRANT SELECT, INSERT, UPDATE, DELETE, TRUNCATE
     ON ALL TABLES IN SCHEMA Tasktop
     TO tasktop_hub;

Supported Databases for use in Enterprise Data Stream Integrations 

The Tasktop Database add-on allows you to create integrations that send artifact information to one central database.

(lightbulb) Note: A separate database must be used for Tasktop Operational Data and Enterprise Data Stream integrations.

If your license includes the Tasktop Database add-on and you would like to configure an Enterprise Data Stream Integration, the following databases and versions are supported:

Microsoft SQL Server

General Support:

  • 2014 (including SP1)
  • 2016

Extended Support:

  • 2008 (including SP1, SP2, SP3, SP4)
  • 2008 R2 (including SP1, SP2, SP3)
  • 2012 (including SP1, SP2)

MySQL

General Support:

  • 5.7
  • 8.0 - 8.0.16

Extended Support:

  • 5.5
  • 5.6

(lightbulb) Note: The user must be a SQL authenticated user (and not a Windows authenticated user)

Oracle

General Support:

  • 12c

Extended Support:

  • 11g


(lightbulb) If you are interested in extended support, please reach out to your Tasktop contact.

Database Connections and Encryption

The following section describes different ways to configure your database connection. If you choose not to encrypt your connection, data will be transmitted over the network unprotected and will be at risk of being intercepted. Likewise use of self-signed certificates or other certificates not signed by a trusted Certificate Authority puts your data at risk as Tasktop cannot verify the identity of the server at the end of the connection.

Please ensure your connection is configured in a way that is aligned with your security policy and the associated risks are understood and accepted.

MySQL

For MySQL, refer to https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-using-ssl.html for the details of how to set up your connection.

To enable encryption on older MySQL servers (5.6.25 and earlier or 5.7.5 and earlier) you need to set the connection property 'useSSL=true' (e.g jdbc:mysql://<server-name>:3306?useSSL=true). Later versions will implicitly try to connect using an encrypted connection. Regardless of the version, the client will only enforce that the server uses TLS if the property 'requireSSL=true' is set. If the certificate for the MySQL server is self-signed you will need to set 'verifyServerCertificate=false' (e.g jdbc:mysql://<server-name>:3306?useSSL=true&verifyServerCertificate=false).

SQLServer

For SQLServer, please refer to https://docs.microsoft.com/en-us/sql/connect/jdbc/connecting-with-ssl-encryption?view=sql-server-2016.

You can enable encrypted connections by setting 'encrypt=true' (e.g. jdbc:sqlserver://<server-name>:1433;encrypt=true;trustServerCertificate=false). If the certificate for the MySQL server is self-signed you'll need to set 'trustServerCertificate=true' (e.g. jdbc:sqlserver://<server-name>:1433;encrypt=true;trustServerCertificate=true)

Note: some older editions may be missing security updates and will need to apply security service packs to use a self-signed certificate and encryption (https://support.microsoft.com/en-ca/help/2653857/fix-you-cannot-connect-to-sql-server-by-using-jdbc-driver-for-sql-serv)You may experience certificate errors if the SQL Server is using a self-signed or corporate certificate. To work around this, you will need to disable certificate validation in the JDBC driver or add the certificate to the JDBC’s truststore.

Oracle

For Oracle, this whitepaper (https://www.oracle.com/technetwork/database/enterprise-edition/wp-oracle-jdbc-thin-ssl-130128.pdf) gives a good overview of how to set up connections to encrypted Oracle server. For a guide to configuring the Oracle server to support SSL, refer to https://docs.oracle.com/database/121/DBSEG/asossl.htm.

For the most part assuming that the server is set up properly, you can follow Case#2 in the white paper and simply use a URL with the following format: jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(PORT=2484)(HOST=<hostname>))(CONNECT_DATA=(SERVICE_NAME=<servicename>))). On the server, make sure to disable client authentication by setting 'SSL_CLIENT_AUTHENTICATION=FALSE ' in the listener.ora and sqlnet.ora files.

For unencrypted connections, the protocol should be 'TCP' and the port would generally be 1521, but the URL would otherwise be the same. The above example connection string is formatted in the 'Oracle Net connection descriptor' format, but Tasktop also accepts 'Thin-style service name' connection strings such as jdbc:oracle:thin:@<hostname>:1521:<servicename>.

If the certificate for the Oracle server is self-signed, but you still want to use SSL, you will need to follow Case#1 in the white paper. As described in the paper, only anonymous cipher suites are permitted when trying to use SSL without server authentication. You can specify the cipher suites in the sqlnet.ora file on the Oracle server. Note that some versions of Oracle do not by default support anonymous cipher suites. Thus, they will need to be imported to the server before enabling them.

Java Runtime Environment

Tasktop Integration Hub is packaged with a JRE; there is no need to install a JRE separately. Tasktop Integration Hub uses and ships with Oracle Java. Partner branded editions of Tasktop Integration Hub use and ship with Azule OpenJDK.


Hardware Sizing for Deployment Scenarios 

General Notes and Considerations

Below are recommendations on sizing hardware and virtual machine capacity to meet the needs of typical deployment scenarios.

Tasktop Integration Hub is a web application which runs centrally on a server. Users interact with it through a web browser from any computer that has network access to the server. These sizing recommendations apply to the server machine running Tasktop Integration Hub.

These recommendations are guidelines intended to provide a starting point when deciding on hardware allocation for a specific deployment. We recommend monitoring system load including CPU usage, memory pressure, and disk queue length, and adjusting the system sizing accordingly.

For best results, Tasktop Integration Hub should be deployed in an environment that has good network throughput and low latency to all repositories and databases involved in an integration.

Based on real-life metrics, we approximate database sizing at about 40 KB per artifact. For 100,000 artifacts total (including artifacts on both sides of an integration), that equates to about 4 GB of database storage, not including log files, rollback space, etc.

This is a rough estimate, and will depend on customer-specific configuration and usage. For example, artifacts that have hundreds of fields and many large comments will require more spaceLikewise, short change detection intervals, frequent full scans, or frequent changes to large numbers of artifacts will require more processing power.  

External Database Sizing 

Disk space usage for configurations using an external database should have roughly 50-100 GB for the system running Tasktop, and the external database should have whatever is recommended for the size category, minus approximately 50 GB. For example, the medium size would be about 100 GB (150 GB recommended minus 50 GB).

(lightbulb) Note: The system that the external database is deployed on should also follow the sizing recommendations listed below.

Sizing Recommendations

(warning) Recommendations below offer a general guideline only.  Since it is possible for a deployment to have a low number of integrations and users, but a high number of artifact updates (or conversely, to have a high number of integrations and users and a low number of artifact updates), we recommend consulting Tasktop Support to determine exact sizing needs for your integration scenario.

Small Deployment

A deployment managing up to 20,000 artifacts, up to 200 active users, and up to 5 integrations.

  • 4 GB system memory
  • 3 GHz processor, 2 cores
  • 50 GB free disk space

Medium Deployment

A deployment managing up to 100,000 artifacts, up to 1,000 active users, and up to 15 integrations.

  • 8 GB system memory
  • 2 x 3 GHz processor, 4 cores
  • 150 GB free disk space


Large Deployment

A deployment managing many repositories and 200,000+ artifacts, over 2,000 active users, and 20+ integrations.

  • 16 GB system memory
  • 4 x 3 GHz processors, 8 cores
  • 250 GB free disk space