summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-03-07Merge branch 'shared'Micah Anderson
2012-03-07fix typo in name of mysql_qcache_mem graphMicah Anderson
2012-03-07Merge branch 'shared'Micah Anderson
2012-03-07Merge commit '356fdab8147f8a32a3f14514f2bb77f4f312c734' into sharedMicah Anderson
Conflicts: files/munin/mysql_connections manifests/server/base.pp manifests/server/munin/default.pp
2012-03-07Merge branch 'shared'Micah Anderson
2012-03-07Merge remote-tracking branch 'lelutin/root_pw_no_arg' into sharedMicah Anderson
Conflicts: manifests/server/base.pp
2012-02-29Merge remote-tracking branch 'lelutin/nagios_service'Micah Anderson
2012-02-23Use the right parameter to nagios::service::mysqlGabriel Filion
check_hostname is not defined. We need to use check_host instead
2012-02-10correct key for trocla lookupmh
2012-02-10migrate everything to hiera/trocla and use the new scoping stylemh
2012-01-22add the trigger privilege to the list of potential MYSQL_USER_PRIVSMicah Anderson
2012-01-17add innodb_file_per_table option by defaultmh
mysql has one innodb file per default and this can become very huge, which can trigger various issues [1]. So in general it is recommended to set the innodb_file_per_table option [2]. [1] http://forums.mysql.com/read.php?35,121880,121886 [2] http://dev.mysql.com/doc/refman/5.0/en/innodb-multiple-tablespaces.html
2012-01-16fix missing endMicah Anderson
2012-01-01Instead of doing an update table_priv, we need to do GRANT/REVOKE statementsMicah Anderson
When we are working with tables_priv we need to first get a downcased array of the currently set privileges, and a downcased array of the desired permissions. Then we make a list of the permissions to revoke by subtracting the requested permissions from the currently set ones. If the list of permissions to revoke is not empty, then we issue a REVOKE. Then we make a list of the permissions to add by subtracting the requested permissions from the current set (no need to add select again if it is already there). Then if the set of permissions to add is not empty, then we actually execute the statement.
2012-01-01table privileges need to be handled with GRANT/REVOKE statements instead of ↵Micah Anderson
inserts of Y/N values into the table. To handle this, this comment removes the create_row for table_privs, it also selects the actual value of the Table_priv so its value can be used instead of the method that is used for Y/N value settings
2012-01-01change the type name and the table_name to be less confusingMicah Anderson
2012-01-01changed the matches regexp to be not greedy so other things like tables and ↵Micah Anderson
columns can be matched
2012-01-01table privileges don't have the name with _privs on the end, also the ↵Micah Anderson
actually available privileges are less than was originally thought, so I trimmed those down
2011-12-30add column grant to mysql_grantMicah Anderson
2011-12-30add table grant privilege handling to mysql_grantMicah Anderson
2011-12-30Merge remote-tracking branch 'riseup/master'Micah Anderson
2011-12-30Revert "add table and column privilege management to mysql_grant"Micah Anderson
This reverts commit 74bf6b84e413b3cc1cce83c334341c1fe58b3b1c. It was accidentally pushed to shared_mysql before it was ready
2011-12-30add table and column privilege management to mysql_grantMicah Anderson
2011-10-27add admin_user define with troclamh
2011-10-18make it possible to retrieve password from troclamh
2011-05-12fix grant on newer mysql versionmh
MySQL introduced some new privileges in Versions > 5.1.6, add them to our set, so puppet still knows what :all is.
2011-04-03we should pass the architecture to devel packagesmh
2011-03-18--all is deprecatedLaurent Bachelier
2011-03-17BDB is not compiled anymore on Debian systemsLaurent Bachelier
It would make the daemon fail to load if put in the config.
2011-02-25Remove other default accounts due to security reasonsmh
2011-02-14improve default database define to also support setting db and user to absentmh
2010-12-21add some other mysql pluginsmh
2010-12-18Avoid root password leak to process listGabriel Filion
The current procedure of setting the root MySQL password leaks the root password by giving it to the setmysqlpass.sh script on the command line. This means that during the couple of seconds that the script is executing, the password is visible in the process list! Since we're already writing the password in the /root/.my.cnf file, make the setmysqlpass.sh script parse this file to retrieve the password instead of receiving it from a command line argument. Also, in some shells the 'echo' command might appear in the process list. Use a heredoc notation to create the output without using a command. Signed-off-by: Gabriel Filion <lelutin@gmail.com>
2010-12-15Avoid root password leak to process listGabriel Filion
The current procedure of setting the root MySQL password leaks the root password by giving it to the setmysqlpass.sh script on the command line. This means that during the couple of seconds that the script is executing, the password is visible in the process list! Since we're already writing the password in the /root/.my.cnf file, make the setmysqlpass.sh script parse this file to retrieve the password instead of receiving it from a command line argument. Also, in some shells the 'echo' command might appear in the process list. Use a heredoc notation to create the output without using a command. Signed-off-by: Gabriel Filion <lelutin@gmail.com>
2010-11-02add mysql::client::perl, same as mysql::client::rubyMicah Anderson
2010-11-01add mysql munin graphs and adjust the file distribution to match the right ↵Micah Anderson
location of where they are
2010-10-29fully qualify the path to mysqladmin, without it, you will get this error:Micah Anderson
Parameter unless failed: 'mysqladmin -uroot status > /dev/null' is both unqualifed and specified no search path at /etc/puppet/modules/mysql/manifests/server/base.pp:62 unless you have set globally: Exec { path => "/usr/bin:/usr/sbin/:/bin:/sbin:/usr/local/bin:/usr/local/sbin" }
2010-10-26fixed stray semicolonMicah Anderson
2010-10-26fix script_path_in parameterMicah Anderson
2010-10-26fix munin script pathMicah Anderson
2010-10-26move the mysql::server::munin::base class to its own fileMicah Anderson
2010-10-26fix incorrect munin graph namesMicah Anderson
2010-10-26add the mysql munin graphs:Micah Anderson
. mysql_connections . mysql_qcache . mysql_qcache_mem . mysql_size_all
2010-10-18. remove the check_mysql_health script from the mysql module, instead it ↵Micah Anderson
belongs in the nagios module . change the default nagios::service::mysql check to use the check_mysql_health 'connection-time' check mode, which is identical to the original check, with some additional information . stop using nagios::plugin::deploy because this doesn't work when more than one node attempts to realize this class . stop exporting the nagios_command because this doesn't work when more than one node attempts to realize this class . remove the check_health define, instead this be how it was before, as the previous nagios::service::mysql define
2010-10-18change the default $check_hostname variable to be the localhost interface. ↵Micah Anderson
This seems to make more sense than using $fqdn
2010-10-17add a README which describes all the functionality, how to use it, and the ↵Micah Anderson
pre-requisites necessary for the module
2010-10-17simplify the nagios check_mysql_health plugin process:Micah Anderson
1. use the new plugin deploy feature in nagios (nagios::plugin::deploy) 2. remove unnecessary classes and inheritance - this plugin seems reasonable to install by default, and in fact it could be argued that the other 'check_mysql' plugin that still remains can be removed, as its functionality is vastly overshadowed by this one 3. add the 'repl_client_priv' mysql grant privs to the nagios user. these are needed for the check_mysql_health plugin slave replication modes. According to http://dev.mysql.com/doc/refman/5.0/en/privileges-provided.html#priv_replication-client - The REPLICATION CLIENT privilege enables the use of SHOW MASTER STATUS and SHOW SLAVE STATUS. These privileges are not too much to provide to the nagios user, as they are only informational 4. setup the define "check_health" so it can be used easily
2010-10-17add new version of check_mysql_health pluginMicah Anderson
2010-09-27add a more advanced mysql health check plugin:Micah Anderson
* create a mysql::server::nagios::base class with the common parts needed for the basic plugin, and the health plugin * make mysql::server:nagios inherit mysql::server:nagios::base * create a new class mysql::server::nagios::check_health inheriting ::base the nagios module has also received a new define to setup the different nagios::service pieces for the different health check modes that might be desired its assumed you would setup the different health check modes in site-mysql/init.pp as different hosts will require different modes and/or parameters, for example: class site-mysql::server { include mysql::server::nagios::check_health nagios::service::mysql_health { [ 'connection-time', 'uptime', 'threads-connected', 'threadcache-hitrate' ]: require => Mysql_grant[$nagios_mysql_user], } case $hostname { "eider": { nagios::service::mysql_health { [ 'slave-io-running', 'slave-sql-running', 'slave-lag' ]: require => Mysql_grant[$nagios_mysql_user], } } } }
2010-09-22fixing merge error which removed a / -- round 2Micah Anderson