Sizing varies based on the number of monitors per element, the type of objects monitored, and the method used to gather performance data. Uptime Infrastructure Monitor recommendations are based on an average of 2 or 3 monitors per element.
During Uptime Infrastructure Monitor's installation, one of three options was selected depending on the size of your monitored environment. The choice determined how certain resources were allocated, and subsequent hardware requirements:
Elements | Minimum RAM | Minimum CPU Type |
---|---|---|
< 200 | 8 GB | 4-cores/vCPUs |
201 - 1000 | 32 GB | 8-cores/vCPUs |
1001 - 5000 | 128 GB | 24-cores/vCPUs |
As a general rule of thumb when planning the allocated disk space, you should plan on allocating about 4 GB per monitored element. Note that per element usages are per year, unless you archive using old data.
Each sizing example ensures the underlying configurations (for example, for the bundled MySQL database and JRE) match the likely resource demands to generate reports, dashboards, and perform queries. The following summarizes these configurations:
Configuration Parameter | < 200 Elements | 201 - 1000 Elements | 1001 - 5000 Elements |
---|---|---|---|
MySQL buffer pool size | 180 MB | 3 GB | 8 GB |
MySQL log file size | 30 MB | 768 MB | 2 GB |
MySQL maximum open connections | 201 | 301 | 551 |
Java heap size | 2 GB | 4 GB | 8 GB |
service threads | 75 | 150 | 300 |
Data Collector maximum open connections | 150 | 250 | 500 |
Uptime Controller heap size | 768 MB | 1536 MB | 4096 MB |
Modifying the Sizing Examples
After initial installation, if you need to accommodate a larger number of monitored Elements, you can manually change the sizing examples using one of two methods:
The first, more direct, option is to individually modify parameters that make up a template. This allows you to deviate somewhat from the prescribed configuration values for a template:
Configuration Parameter | Configuration File and Location (relative to the Uptime Infrastructure Monitor directory) | Parameter Name | Default Sizing Values | |
---|---|---|---|---|
MySQL buffer pool size | /mysql/my.ini | innodb_buffer_pool_size= |
| |
MySQL log file size | /mysql/my.ini | innodb_log_file_size= | 30M 768M 2G | |
MySQL maximum open connections | /mysql/my.ini | max_connections= | 201 301 551 | |
Java heap size | Linux: Windows: | Linux: Windows: | Linux: | Windows: |
service threads | /uptime.conf | serviceThreads= | 75 150 300 | |
Data Collector maximum open connections | /uptime.conf | connectionPoolMaximum= | 150 250 500 | |
Uptime Controller heap size | Linux: Windows: | Linux: Windows: | -Xmx768m -Xmx1536m -Xmx4096m |
The recommended option to change a sizing example is to use the sample configuration files that are found in the <uptimeInstall>/sample
directory as a starting point. This option moves you to a different sizing example in the least amount of steps.
Modifying Sample Templates
Update the DataStore configuration:
- Stop the DataStore service (uptime_datastore on Linux, or "Uptime Data Store" on Windows)
- Move the
ib_logfile0
andib_logfile1
files, found in the<uptimeInstall>/datastore/data/
directory, to a backup location. - Back up the MySQL
my.ini
configuration file, which is found in the<uptimeInstall>/mysql/
directory. - Copy the
<uptimeInstall>/sample/<size>/<os>/my.ini
template file to the<uptimeInstall>/mysql/
directory, replacing the existing one. - Edit the
my.ini
file, replacing all$VARIABLE$
instances with values that match your Uptime Infrastructure Monitor deployment (for example,$DATASTORE_PORT$
and$USER_INSTALL_DIR$
) Start the DataStore service
You can confirm the change was successful by referring to the<uptimeInstall>/datastore/data/<hostname>.err
log. Look for output similar to the following:140110 14:26:28 InnoDB: Initializing buffer pool, size = 3.0G 140110 14:26:29 InnoDB: Completed initialization of buffer pool 140110 14:26:29 InnoDB: Log file .\ib_logfile0 did not exist: new to be created InnoDB: Setting log file .\ib_logfile0 size to 768 MB InnoDB: Database physically writes the file full: wait... InnoDB: Progress in MB: 100 200 300 400 500 600 700 140110 14:26:33 InnoDB: Log file .\ib_logfile1 did not exist: new to be created InnoDB: Setting log file .\ib_logfile1 size to 768 MB InnoDB: Database physically writes the file full: wait... InnoDB: Progress in MB: 100 200 300 400 500 600 700
Update the Uptime Data Collector configuration:
- Back up the
uptime.conf
file, which is found in the<uptimeInstall>/
directory. - Back up the Data Collector configuration file (
uptime.jcnf
on Linux, orUptimeDataCollector.ini
on Windows), which is found in the<uptimeInstall>/
directory. - Copy the
uptime.conf
, anduptime.jcnf
orUptimeDataCollector.ini
files from the<uptimeInstall>/sample/<size>/<os>/
directories to the<uptimeInstall>/
directory, replacing the existing ones. - Edit both files, replacing all
$VARIABLE$
instances with values that match your Uptime Infrastructure Monitor deployment (for example, the$MS_STRING_FS$
classpath variable, and$DATASTORE_HOST$
). - Restart the Uptime data-collection service (uptime_core on Linux, or "Uptime Data Collector" on Windows)
Update the Uptime Controller configuration:
- Back up the Uptime Controller configuration file:
- Linux: the
start.sh
script, which is found in the<uptimeInstall>/controller/service/
directory - Windows: the
UptimeController.ini
configuration file, which is found in the<uptimeInstall>\controller\service
directory
- Linux: the
- Copy the
start.sh
orUptimeController.ini
file from the<uptimeInstall>/sample/<size>/<os>/
directory to the<uptimeInstall>/controller/service/
directory, replacing the existing one. - Edit the file, replacing all
$VARIABLE$
instances with values that match your Uptime Infrastructure Monitor deployment. - Restart the Uptime Controller service (uptime_controller on Linux, or Uptime Controller on Windows)
Update the Uptime Web server:
- Back up the
php.ini
Uptime Web server configuration file, which is found in the<uptimeInstall>/apache/conf/
directory. - Copy the
php.ini
file from the<uptimeInstall>/sample/<size>/<os>/
directory to the<uptimeInstall>/apache/conf/
directory, replacing the existing one. - Edit the file, replacing all
$VARIABLE$
instances with values that match your Uptime Infrastructure Monitor deployment (for example,$USER_INSTALL_DIR$
). - Restart the Uptime Web server (uptime_httpd on Linux, or "Uptime Web Server" on Windows).