My Fake MySQL Cluster

Okay, so I have two new loaded (each has dual 2.3Ghz G5s, 8GB RAM, hardware RAID-5 w/ 1.2TB drive space, dual gigabit ethernet, etc.) Xserves thanks to those that donated, and I’ve been mucking around with them for a few days now.

One is going to be primarily a web server, and the other will be primarily a MySQL database server. Mac OS X Server makes IP fail-over really easy, so I setup rsync to keep a copy of the web site content on the MySQL server. If one server goes down (or maybe taken down for an upgrade), the other acquires it’s IP address and can continue to serve the requests. The tricky part is the MySQL database and keeping it in sync between the two machines in realtime.

The “ideal” option would be MySQL Cluster, but it requires your databases to be 100% memory resident, and that just didn’t appeal to me (too much memory and scary if someone decided to pull the plug on all the servers). Although I do know that MySQL is working on a disk based option for MySQL Cluster as well as asynchronous replication (that may turn out to be the same thing).

So instead what I did was setup both servers to be masters and both servers to be slaves to each other. This was in fact VERY easy. Add this to your /etc/my.cnf file on the servers (be sure to create a replication slave user named replicate):

Server 1
[mysqld]
log-bin
server-id = 1
master-host = 10.0.0.2
master-user = replicate
Server 2
[mysqld]
log-bin
server-id = 2
master-host = 10.0.0.1
master-user = replicate

So now I can send all SQL queries to the primary database server’s IP address. If that machine is down, the other server acquires it’s IP address. Once the server comes back online, it will automatically get back in sync.

The thing I didn’t like is a double master setup does not always execute the SQL statement in the same order, so there is a (slight) chance of the databases getting out of sync when the server comes back online and there is a lot of catching up to do. So what I did was setup a simple script to check every 5 seconds to see if the servers are in sync. Once they are in sync again, then it will relinquish the public IP address back to the rightful server (the MySQL servers talk on the private 10.0.0.x network which does not change).

My setup is for redundancy/fault tolerance, not load balancing. Although you could send SELECT statements to the slave db server without any problems (since there is nothing to replicate from that).

This will work for now, until MySQL finishes their native async replication. 🙂

Microsoft Announces Internet Explorer 7

Today Bill Gates announced that they are going to have a beta version of IE7 available by the summer. As an end-user, I could care less. IE sucks and probably will always suck from a security standpoint.

What I *do* like about this, is *maybe*, just MAYBE they will bring it into the realm of a modern browser so people can stop doing stupid/unnecessary things to make sites work with Internet Explorer.

If they add “real” CSS support and proper PNG support (they don’t support transparent PNG images), I’ll be happy. It will give webmasters more flexibility.

Personally, I’m so sick of Internet Explorer’s stupidity, my sites will start leaving IE users in the dust if Firefox keeps gaining market share. “Sorry, this site does not support Internet Explorer. Click here to upgrade to Firefox.”

Google Maps

I’ve been predicting it for over a year now… and today Google finally has released (at least in beta form) Google Maps. It’s a pretty awesome implementation too. It uses vector graphics for one… but a really neat thing is you can drag the map around to where ever you want rather than “click to center” like other systems.

It’s tied into Google local, so you can do cool queries like hotels near balboa park in san diego and the map shows them (with the info you would want).

Now, hopefully the rest of my predictions will come true with it. The ability to overlay the maps on satellite imaging (which seems like it might happen since Google acquired Keyhole last year. My other prediction was traffic data overlaid on the maps (Yahoo seems to have been listening to my wishes because they recently added it to Yahoo Maps).

iPods Take Over Microsoft

A high-level manager at Microsoft anonymously disclosed that 80% of Microsoft employees that have portable music players have iPods (which works out to about 20,000 iPods at Microsoft’s headquarters). Microsoft executives have gone as far as to issue memos “frowning” on the usage by Microsoft employees.

Dave Fester, general manager of Microsoft’s Windows Digial Media division sent the following:

“I sure hope Microsoft employees are not buying iPods. We have great alternatives. Check out //experiencemore.”

Now Microsoft employees have started to swap the white headphones with after-market black ones to try and “hide” their iPod usage.

The anonymous source at Microsoft had the following to add:

“These guys are really quite scared. It shows how their backs are against the wall… Even though it’s Microsoft, no one is interested in what we have to offer, even our own employees.”

Kind of funny if you ask me. 🙂 If you can’t win, beg your employees to use your products… Microsoft has enough employees that maybe if they all bought what Microsoft had to offer, it could yield twice their current sales. heh

Islamist Terrorist Group Threatening To Behead An Action Figure

Say it isn’t so! Special Ops Cody (a $40 action figure toy) has been captured by terrorists in Iraq and they are threatening to behead him if Iraqi prisoners are not released by the US.

One thing that really bothered me though is that the US military apparently is forcing action figures to serve in Iraq. They are helpless little pieces of plastic, and I just don’t think it’s fair for them.

This is the picture that was posted on a website by a group calling itself the Al Mujahedeen Brigade:

I thought it was a nice touch (and very clever) that they also used the plastic military assault rifle that came with the toy in the picture.

It seems that terrorists in Iraq must be on a shoestring budget these days. Unable to carry out kidnappings on personnel, they are now kidnapping their toys. Maybe if they go find Osama Bin Laden, they could collect the reward money to fund their little terrorist posse.

I just don’t know what else to say about it. It’s horrible and God will have his vengeance if they carry through with the beheading. Maybe they will make a video of it and post it on their website. hehe

I’m Getting Better At Disc Golf

It’s been a few months now since I’ve had a round where I was over par. I rule the back nine now, and today I birdied the following holes:

11

12

13

15

16

17

Okay, well technically 13 wasn’t a birdie, but I still made it in 2 shots. I had a penalty stroke because I overshot the pin on my initial drive by about 30 feet and went out of bounds. Out of bounds is lame.