Posted by Ricardo Santos in database, mysql, performance, zabbix
on Feb 17th, 2012 | 2 comments
In March 2011, I create a poll in Zabbix Forum with this question:
It received 92 votes and MySQL was the most voted with 71.74% followed by PostgreSQL with 21.74%
Personally I found many problems with Oracle 11g when reach more than 1000 nvps (new values per second).
My results with MySQL was very good reaching more than 3500 nvps.
Unfortunately I still could not test PostgreSQL, but there are many positive posts in Forum.
And you, which database are you...
Posted by Ricardo Santos in social, zabbix
on Feb 16th, 2012 | 0 comments
I always dreamed of seeing the Zabbix spreading in all social networks, because it’s fundamental for an Open Source project. Is very difficult bring some serious TI guys to this social world, but this tools can be very powerful when wisely used.
Finally Zabbix annunciated in February’s Newsletter the Zabbix page on Facebook: https://www.facebook.com/zabbix
Over 1100 people follow the Zabbix on Twitter: https://twitter.com/zabbix
Linkedin also has an expressive Zabbix Group with 643 members:...
Posted by Ricardo Santos in database, mysql, performance, zabbix
on Oct 24th, 2011 | 5 comments
Most of these tips is useful for many application, but I’ll keep focus on Zabbix.
Use a Dedicated Server
Database is the main bottleneck from Zabbix. Try to use a Dedicated Server for MySQL and make sure that server has great resources (CPU, memory and fast disks).
This is the specs for an environment with 3000 values per second:
Dell PowerEdge R610
CPU: Intel Xeon L5520 2.27GHz (16 cores)
Memory: 24GB RAM
Disks: 6x SAS 10k with RAID10 by hardware
Create one file per table
innodb_file_per_table=1
By default, InnoDB creates all tables inside an unique datafile. With this option the new tables...
Posted by Ricardo Santos in backup, database, mysql, scripts, zabbix
on May 30th, 2011 | 15 comments
This script is a simple way to backup all configuration tables (eg. templates, hostgroups, hosts, triggers…) without the history data.
As the result is very small (around 30 MB), is possible run this backup many times per day.
https://github.com/xsbr/zabbixzone/blob/master/zabbix-mysql-backupconf.sh[crayon]
#!/bin/bash
#
# zabbix-mysql-backupconf.sh
# v0.2 – 20111105
#
# Configuration Backup for Zabbix 1.8 w/MySQL
#
# Author: Ricardo Santos (rsantos at gmail.com)
# http://zabbixzone.com
#
# Thanks for suggestions from:
# – Oleksiy Zagorskyi (zalex)
# – Petr Jendrejovsky
#
#...
Posted by Ricardo Santos in database, mysql, performance, server, zabbix
on May 18th, 2011 | 27 comments
Many performance problems on Zabbix are related to the database and it became visible only when we have thousands of items. On another side, we have to handle enormous tables and it makes impossible operational routines like housekeeping and backup.
Use all information and scripts at your own risk. Make backups!
My suggestion is disable housekeeping and to partition some tables based on clock, an unix timestamp field. If you wanna know more about partitioning access the MySQL Reference Manual – Partitioning Overview.
The Concept
An easy way to handle partitioning is splitting the tables...
Posted by Ricardo Santos in database, mysql, performance, server, zabbix
on May 12th, 2011 | 9 comments
First, I recommend to you read about the differences between the history and trends table.
Each item on Zabbix can have your own housekeeper value. But this feature turns housekeeping process a performance killer, because delete_history() function executes a DELETE per item every turn. If you have 100k items, 100k DELETE queries will be executed.
This can be a big problem using InnoDB engine on MySQL, because DELETE is extremelly slow on large tables and deleted rows doesn’t release space on disk.
My proposed and tested solution is disable housekeeping and partitioning some tables.
To know more...