FAQ

Most questions will be answered in the discussion group.

  • http://groups.google.com/group/mmm-devel

How many IP addresses do I need?

You will need one for each MySQL server and one for each role.

  • 2(N)+1 where N is the number of servers.
  • For a simple two server master master cluster you will need 5.
    1. server 1
    2. server 2
    3. writer role
    4. reader role 1
    5. reader role 2
  • For a larger four machine cluster you would need 9.
    1. server 1
    2. server 2
    3. server 3
    4. server 4
    5. writer role
    6. reader role 1
    7. reader role 2
    8. reader role 3
    9. reader role 4

How is MMM different from an LVS solution for managing MySQL clusters?

MMM does not any balancing between mysql servers it just keeps system alive by monitoring all servers in cluster and moving roles when some server dies. So I think we should say not “LVS vs MMM”, but “LVS + MMM”.

How is MMM checking the MySQL servers?

MMM perform following checks for every server:

# IP connectivity (fping)
# MySQL connectivity (mysql connect and SELECT NOW())
# MySQL IO and SQL threads status (SHOW SLAVE STATUS)
# MySQL replication backlog - seconds behind master (SHOW SLAVE STATUS)

In addition to these checks MMM manages read-only mode on the server to be sure that slaves could not process writes and only active master could.

How do I configure the IP addresses?

You just need to configure the IP address, for each computer, specified at your Cluster Hosts Addresses section on your Configuration File. As soon as MMM Agent start and communicate with MMM Monitor, it will setup the additional IPs for the roles.

Using Configuration Example as reference, you will ONLY need to setup IPs 192.168.1.8 at master 1 and 192.168.1.9 at master2.

Using Configuration Example as reference you will write to IP 192.168.1.200 and read from 192.168.1.100, 192.168.1.101.

If master1 fails MMM Monitor will move IP address 192.168.1.200 to master2 automatically.

What MySQL privileges needed for monitoring user (in mmm_mon.conf)?

This user account would be used for server monitoring by following checks:

  1. mysql - uses SELECT NOW() which is always available
  2. rep_threads - uses SHOW MASTER STATUS, which requires REPLICATION CLIENT privilege
  3. rep_backlog - the same - REPLICATION CLIENT

So, for monitoring account you'll need *REPLICATION CLIENT* privilege.

What MySQL privileges needed for agent user (in mmm_agent.conf)?

This account would be used to manage servers in cluster so it needs SUPER privileges.

Will MMM work with ethernet bonding?

Yes, but the mode will need to be set to 1 (active backup)

Can I monitor MMM with Nagios?

Yes, use the build-in check_proc function as follows:

./check_procs -C perl -a mmmd_agent -c1:1

./check_procs -C perl -a mmmd_angel -c1:1

For more advanced checks, you can use check_mmm, which is included in http://code.google.com/p/check-mysql-all/

Should I use AUTOMATIC or MANUAL failover?

That entirely depends on how much downtime you can handle, with the following exceptions:

  • Use MANUAL mode if your network is unreliable or you plan to do network maintenance. Small blips in availability can result in a broken MMM installation, with stale arp caches and bad routes.
  • Use MANUAL mode if you plan to do any schema maintenance (Using MMM to ALTER huge tables) in order to prevent accidental failovers during long-running ALTER statements

Where can I go for help?

  • #mmm on irc.freenode.net
  • mmm-devel on Google Groups
mmm1/faq.txt · Last modified: 2009-07-15 23:19 by Ryan Lowe
Show pagesourceOld revisions
[unknown link type]Back to top
CC Attribution-Share Alike 3.0 Unported

MySQL is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Multi-Master Replication Manager for MySQL is in no way affiliated or associated with MySQL AB.

www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0