Creating the Databases
Install the required database software and create the databases before installing StreamSets Control Hub.
Step 1. Install the Database Software
Control Hub requires a relational database instance and a time series database instance. You can install the database software on the same machine as the Control Hub instance or on a remote machine. For best performance, we recommend installing on remote machines.
Be sure to install the database software on a machine that meets the installation requirements.
Install the required software based on whether you are installing a single Control Hub instance or installing multiple instances for a highly available Control Hub system:
- Single Control Hub instance
- For the relational database instance, install one of the following:
- MariaDB as described in the MariaDB documentation.
- MySQL as described in the MySQL documentation.
- PostgreSQL as described in the PostgreSQL documentation.
- Multiple Control Hub instances for high availability
- For the relational database instance, install one of the following:
- MariaDB Galera Cluster as described in the MariaDB documentation.
- MySQL Enterprise High Availability as described in the MySQL Enterprise High Availability documentation.
- PostgreSQL with high availability enabled as described in the PostgreSQL high availability documentation.
Setting MariaDB or MySQL Server System Variables
Server System Variable | Value |
---|---|
character_set_client character_set_connection character_set_database character_set_server character_set_system |
utf8 |
collation_connection | utf8_general_ci |
collation_database collation_server |
utf8_unicode_ci |
lower_case_table_names | 0 |
Enabling Authentication and HTTPS for InfluxDB
By default, an InfluxDB installation has authentication and HTTPS disabled. For a production environment, we recommend enabling both authentication and HTTPS.
When you enable authentication, you must create an admin user. Use this admin user when you create the required databases in InfluxDB.
For instructions, see Enabling Authentication and HTTPS Setup in the InfluxDB documentation.
Step 2. Create the Relational Databases
Create a unique database for each Control Hub application in the MariaDB, MySQL, or PostgreSQL relational database instance.
Creating Databases in MariaDB or MySQL
Create a unique database for each application and then create a user with all privileges on these databases.
Creating Databases in PostgreSQL
Create a unique database for each application and then create a user with all privileges on these databases.
Step 3. Create the Time Series Databases
- Metrics
- Application Metrics