MPP |
CodePin.org |
| ABOUT |
|
MPP is a MySQL State Manager for MySQL server failover negotiation and
management.
It is intended to be used as a 2nd party management application
used in combination with any
load balancing management software. It was initially designed to be used in
conjunction with Linux Virtual Server, and later F5 Networks BigIP, but can
work with any load balancer that can utilize external check scripts or
accomplish an HTTP REST call.
MPP now integrates with MySQL Proxy using an injection mechanism.
|
| INTEGRATION |
|
MPP was written as a 2nd party plugin to controllers. These controllers are what enact the physical change of state of MySQL nodes.
|
| REQUIREMENTS |
|
The PERL requirements for using MPP is as follows: MODULE MIN VERSION AVAILABLE ----------- ----------- -------------- CGIbasic 0.010 MPP Bundled Config_info 1.00803 MPP Bundled LogBasic 0.00.003 MPP Bundled Storable PERL >= 5.8 PERL Bundled Net::HTTP PERL >= 5.8 PERL Bundled Net::Ping PERL >= 5.8 PERL Bundled IO::FILE PERL >= 5.8 PERL Bundled DBD::MySQL 2.9006 CPAN DBI 1.46 CPAN |
| AVAILABILITY | ||||||||||||||||||||
|
This software was recently imported from our internal engineering lab, and has been merged with modification recomendations from our real world implementation. The resulting code available here has been tested and considered ready for release.
DocumentationRead an overview in articles on MPP and State Management on the MySQL Developer Zone:
MySQL Failover Strategy using State Management, introducing MPP - Part 2
MySQL Failover Strategy using State Management, introducing MPP - Part 3
View the MPP Subversion repository online. Get the codeYou can download the source code from Subversion.
|
| FUTURE |
|
There is a plan in progress that MPP will be combined into MySQL Proxy. The plan is multi-phased:
MPP was written to act as a plugin, to add intelligence to 2nd party controllers. MPP negotiates MySQL node States of ACTIVE, STANDBY, FAIL and Statuses of OK, INFO, WARN, CRITICAL, FAIL in a transitional flow. |