MariaDB ColumnStore System Monitoring Configuration
Contents
A Parent OAM Module in MariaDB ColumnStore is one of the performance module node, which in addition to query processing like other PM nodes, also monitors the overall system health, resource usage and PM node failover management. Various mcsadmin commands can be used to configure the monitoring parameters. The monitored resources are System, processes, servers, CPU usage, disk usage, RAID, memory usage, and swap space.
System Monitoring Configuration
Viewing System configuration
To view the system configuration, use getSystemConfig command in mcsadmin, or simply use mcsadmin getSystemConfig from the operating system prompt.
Example: # mcsadmin getSystemConfig getsystemconfig Wed Mar 28 10:17:49 2016 System Configuration SystemName = sn-perf-1 SoftwareVersion = 3.0 SoftwareRelease = 0 ParentOAMModuleName = pm1 StandbyOAMModuleName = pm2 NMSIPAddr = 0.0.0.0 ModuleHeartbeatPeriod = 1 ModuleHeartbeatCount = 3 DBRootCount = 6 DBRoot1 = /usr/local/mariadb/columnstore/data1 DBRoot2 =/usr/local/mariadb/columnstore/data2 DBRoot3 = /usr/local/mariadb/columnstore/data3 DBRoot4 = /usr/local/mariadb/columnstore/data4 DBRoot5 = /usr/local/mariadb/columnstore/data5 DBRoot6 = /usr/local/mariadb/columnstore/data6 DBRMRoot = /usr/local/mariadb/columnstore/data1/systemFiles/dbrm/BRM_saves ExternalCriticalThreshold = 90 ExternalMajorThreshold = 80 ExternalMinorThreshold = 70 MaxConcurrentTransactions = 1000 SharedMemoryTmpFile = /usr/local/mariadb/columnstore/data1/systemFiles/dbrm/CalpontShm VersionBufferFileSize = 1 OIDBitmapFile = /usr/local/mariadb/columnstore/data1/systemFiles/dbrm/oidbitmap FirstOID = 3000 TransactionArchivePeriod = 10
Setting System Configuration
Module heartbeats
Heartbeat monitoring occurs between modules(Both UM and PM). The module heartbeat settings are the same for all modules.
- The module heartbeat period refers to how often the heartbeat test is performed. For example, if you set the period to 5, then the heartbeat test is performed every 5 seconds.
To set the module heartbeat period, use setSystemConfig ModuleHeartbeatPeriod n command in mcsadmin, or simply use mcsadmin setSystemConfig ModuleHeartbeatPeriod n from the operating system prompt, where where n= number of seconds - The module heartbeat count refers to how many failures in a row must take place before a fault is processed. To disable heartbeat monitoring, set the period to -1.
To set the module heartbeat count, use setSystemConfig ModuleHeartbeatCount n command in mcsadmin, or simply use mcsadmin setSystemConfig ModuleHeartbeatCount n from the operating system prompt, where n= number of failures.
Disk Threshold
Thresholds can be set to trigger alert when file system usage crosses a specified percentage of a file system on a server. Critical, Major or Minor threshold can be set for the disk usage for each server.
- Minor threshold parameter: EXTERNALMinorThreshold
- Major threshold parameter: EXTERNALMajorThreshold
- Critical threshold parameter: EXTERNALCriticalThreshold
To disable a threshold, set it to 0.
To set a particular threshold, use setSystemConfig <threshold parameter> n command in mcsadmin, or simply use mcsadmin setSystemConfig <threshold parameter> n from the operating system prompt, where where n= threshold limit as percentage of disk usage
Example: To set Major threshold to 80% # mcsadmin setSystemConfig ExternalMajorThreshold 80 setsystemconfig Sat Jun 11 03:53:08 2016 Successfully set ExternalMajorThreshold = 80
Viewing Storage configuration
To view the storage configuration, use getStorageConfig command in mcsadmin, or simply use mcsadmin getStorageConfig from the operating system prompt.
Example: # mcsadmin getstorageconfig Wed Mar 28 10:40:34 2016 System Storage Configuration Storage Type = internal System DBRoot count = 6 DBRoot IDs assigned to 'pm1' = 1 DBRoot IDs assigned to 'pm2' = 2 DBRoot IDs assigned to 'pm3' = 3 DBRoot IDs assigned to 'pm4' = 4 DBRoot IDs assigned to 'pm5' = 5 DBRoot IDs assigned to 'pm6' = 6
Module Monitoring Configuration
For each module (PM and UM), following resource monitoring parameter can be configured
Resource Monitoring Paraemter | mcsadmin command |
---|---|
CPU thresholds | setModuleTypeConfig (module name) ModuleCPU(Clear/ Minor/Major/Critical)Threshold n (where n= percentage of CPU usage) |
Disk file system use threshold | setModuleTypeConfig (module name) ModuleDisk(Minor/ Major/Critical)Threshold n (where n= percentage of disk system used) |
Module swap thresholds | setModuleTypeConfig (module name) ModuleSwap(Minor/ Major/Crictical)Threshold n (where n= percentage of swap space used) |
Alarm Trigger Count Threshold
For an alarm, a threshold can be set for how many times the alarm can be triggered in 30 minutes. The default threshold is 100.
setAlarmConfig (alarmID#) Threshold n (where n= maximum number of times an alarm can be triggered in 30 minutes), Example to change Alarm ID 22's threshold to 50: # mcsadmin setAlarmConfig 22 Threshold 50