add a README which describes all the functionality, how to use it, and the pre-requisites necessary for the module
This commit is contained in:
parent
6031165200
commit
32fa53a593
1 changed files with 102 additions and 0 deletions
102
README
Normal file
102
README
Normal file
|
@ -0,0 +1,102 @@
|
|||
Introduction/Notes
|
||||
==================
|
||||
|
||||
This module manages your mysql resources.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
If you are wanting munin integration, you will need the munin module installed.
|
||||
|
||||
If you are wanting shorewall integration, you will need the shorewall module
|
||||
installed.
|
||||
|
||||
If you are wanting nagios integration, you will need the nagios module
|
||||
installed, specifically it must have nagios::plugin::deploy functionality.
|
||||
|
||||
You will need to have activated storedconfigs on the puppetmaster.
|
||||
|
||||
Mysql Server
|
||||
============
|
||||
|
||||
On a node where you wish to have a mysql server installed, you should first
|
||||
define the mysql root password and then include mysql::server, for example:
|
||||
|
||||
node foo {
|
||||
$mysql_rootpw = "b00changem3"
|
||||
include mysql::server
|
||||
}
|
||||
|
||||
This will manage the necessary directories and configuration files, it will
|
||||
install the mysql client program and set the root password as you designated,
|
||||
along with setting a /root/.my.cnf for various module operations. It will also
|
||||
make sure the mysql service is running, and setup all the databases, users and
|
||||
grant tables.
|
||||
|
||||
The my.cnf file will installed from one of many possible places, see
|
||||
manifests/server/base.pp for possible locations for managing this.
|
||||
|
||||
Backups
|
||||
-------
|
||||
|
||||
If you wish to automatically setup a cronjob to backup your databases, you can
|
||||
set the "$mysql_backup_cron = true" variable. This will setup a cronjob to do a
|
||||
mysqldump at 1am of all the databases on the system and put them in
|
||||
/var/backups/mysql by default. You can override this location by specifying
|
||||
$mysql_backup_dir.
|
||||
|
||||
Optimizing tables
|
||||
-----------------
|
||||
|
||||
If you wish mysql to periodically optimize tables, set the
|
||||
"$mysql_optimize_cron = true" variable before you include mysql::server.
|
||||
|
||||
Munin
|
||||
-----
|
||||
|
||||
If you wish to use munin you need to set the variables: $munin_mysql_password
|
||||
and "$use_munin = true", before you include mysql::server. This will be used to
|
||||
setup a mysql user for munin, with reduced privileges to allow for the various
|
||||
munin graphs to be setup and queried. The munin graphs are: mysql_bytes,
|
||||
mysql_queries, mysql_slowqueries and mysql_threads. NOTE: The
|
||||
$munin_mysql_password is not necessary on Debian systems as it will handled with
|
||||
Debian's /etc/mysql/debian.cnf.
|
||||
|
||||
Nagios
|
||||
------
|
||||
|
||||
If you wish nagios to check mysql, you should set the variable "$use_nagios =
|
||||
true" along with the "$nagios_check_mysql = true" variable. You will also need
|
||||
to set a password for the nagios mysql user which will be automatically created
|
||||
for you with reduced privileges used only for nagios checks. You can do that by
|
||||
setting the variable: $nagios_mysql_password = "f00changem3". These should be
|
||||
set before you include mysql::server.
|
||||
|
||||
Unless you specify otherwise, the default nagios check which will be performed
|
||||
is the basic 'check_mysql' nagios plugin which simply tests connectivity to a
|
||||
MySQL server. You can specify more advanced mysql health checks as follows:
|
||||
|
||||
mysql::server::nagios::check_health { [ 'connection-time', 'uptime', 'threads-connected',
|
||||
'slave-lag', 'slave-io-running', 'slave-sql-running' ]: }
|
||||
|
||||
See the files/nagios/check_mysql_health script for the various mysql health
|
||||
checks that you can perform. Additionally, see the define "check_health" in
|
||||
manifests/server/nagios.pp for various options that you can pass to check_health.
|
||||
|
||||
Firewall
|
||||
--------
|
||||
|
||||
If you wish to have firewall rules setup automatically for you, using shorewall,
|
||||
you will need to set: $use_shorewall = true. See the shorewall module for more
|
||||
information about how this works.
|
||||
|
||||
|
||||
Client
|
||||
======
|
||||
|
||||
On a node where you wish to have the mysql client managed, you can 'include
|
||||
mysql::client' in the node definition. This will install the appropriate
|
||||
package.
|
||||
|
||||
You can also 'include mysql::client::ruby' if you want the 'libmysql-ruby'
|
||||
libraries installed.
|
Loading…
Reference in a new issue