Hello again, I'm struggling with my mysql cluster which seems to have some hickups. I try to explain: I have two load balancers (master - backup) load balancing two webservers. The load balancers load balance also two data servers running a mysql cluster. These two data servers also run a nfs. I've used the 192.168.0.0/24 network for the internal network, to the outside I connect to the 172.16.9.0/24 network of our university 's lab. I also use a 192.168.1.0/24 network to connect the two load balancers with eachother (which is rather useless but it seemed a good idea at the time). Three virtual ip addresses have been configured on the load balancers, one for each network. Via masquerading I connected the webservers so that the 172.16.9.x virtual ip's passes requests on port 80 to the webservers. I then set up the nfs cluster. Between the two data servers I used heartbeat (according to Falko Timme's tutorial) and that also went fine. The nfs listens to 192.168.0.20 (a virtual ip set up on the two data servers). All servers (so the 2 webservers and the 2 data servers) use the 192.168.0.x virtual ip address as default gateway. So the load balancers also function as a router for that matter. This all works fine. Finally I've set up the sql server: the two sql databases are run from the data servers, the management server is installed on the first load balancer (again according to one of Falko Timme's fine tutorials). When I tried to use the 192.168.0.x virtual ip to connect the mysql cluster to, I couldn't get it to work. I presume the masquerading prevents a good connection. So I've set up the cluster to listen to the virtual 192.168.1.x. I presumed I'd had to use masquerading too since the virtual ip address is on another network as the actual mysql servers, but when nmapping to this virtual address, I saw that port 3306 was filtered. I then changed the config of the real servers in /etc/ha.d/ldirectord.cf from masq to gate and tried again. To my surprise it now stated 'open' instead of 'filtered'. So I thought all problems were solved. But when making a mysql connection using [/CODE]mysql -u user -h 192.168.1.x -p[/CODE] I only can connect every second time (connecting from one of the webservers via my-sqlclient-4.1). When disconnecting one of the two nodes the problem seems solved no matter which data server is disconnected. So actually installing a load balanced mysql cluster decreased availability with 50%? I also can connect without problems directly to each one of the nodes. Can anybody help me out? (P.S: my excuses for the elaborate explanation ) Here are some configuration files: /etc/ha.d/ldirectord.cf: Code: checktimeout=2 checkinterval=1 autoreload=no logfile="local0" quiescent=yes virtual=172.16.9.240:80 real=192.168.0.11:80 masq real=192.168.0.12:80 masq fallback=127.0.0.1:80 service=http request="ldirector.html" receive="Test Page" scheduler=rr protocol=tcp checktype=negotiate virtual = 192.168.1.240:3306 service = mysql real = 192.168.0.21:3306 gate real = 192.168.0.22:3306 gate checktype = negotiate login = "ldirector" passwd = "ldirectorpassword" database = "ldirectordb" request = "SELECT * FROM connectioncheck" scheduler = wrr /etc/network/interfaces from load balancer 1: Code: # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 172.16.9.2 netmask 255.255.255.0 network 172.16.9.0 broadcast 172.16.9.255 gateway 172.16.9.254 auto eth1 iface eth1 inet static address 192.168.1.2 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 auto eth2 iface eth2 inet static address 192.168.0.2 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 up iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.0.0/24 down iptables -t nat -D POSTROUTING -j MASQUERADE -s 192.168.0.0/24
I will post my solution tomorrow or the day after tomorrow. I have to make a tutorial so that other student are able to reconstruct my whole setup, which I'm going to do this weekend. The problems of my setup came from the combination of the sql cluster, the apache cluster and a nfs. This problem in particuliar was caused by two lines of code in /etc/network/interfaces: Code: up iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.0.0/24 down iptables -t nat -D POSTROUTING -j MASQUERADE -s 192.168.0.0/24 Thanks for the reply!