Highly Available, Multi-Site MySQL

I’ve been playing with designs for this lately, and it’s been interesting, given some of the following considerations:

  • The applications in question are (relatively) low volume, low transaction applications.
  • Only one site will be active at any given time.
  • Delays of 30 seconds or so are acceptable in case of failure within a site.

With that in mind, I’ve been playing with MySQL+Heartbeat/Pacemaker/Corosync+Multi-Master replication. MySQL + Heartbeat/Pacemaker/Corosync gives redundancy within a site, utilizing shared storage (though I could throw DRBD into the mix as well, though for little benefit). Multi-master replication allows for asynchronous replication between sites (hundreds of miles apart—high bandwidth but also relatively high latency) without impacting performance.

The one portion I was a little unsure about was how the MySQL replication would act when connecting to a VIP shared between two systems at a given site, but it seems to work just fine. I’ve got some more testing to do (quite a bit of testing, to be honest), but this should make my life (and job) relatively easy.

As a bit of an aside, MySQL multi-master replication does extend beyond two hosts, but it’s circular in nature. If you have four nodes (A, B, C, and D), your replication goes from A to B, to C, to D, and back to A. If you lose, say, node B, your replication is completely broken. This page includes a very, very clever use of stored procedures to work around this, but as ingenious as it is, that violated the KISS principle a bit too much for my tastes.

MacBook Air Thoughts

It’s been a few weeks with my MBA now, and I have a few more thoughts:

  • The screen on the 13” model could just a bit bigger, with more pixels. Its 1440x900 resolution is pretty good (and better than most Ultrabooks—their biggest shortcoming, in my opinion), but the bezel is large enough that it could—and should—be enlarged a bit.
  • It’s nice and thin. It could have been made a marginal amount thicker to add in an Ethernet, and maybe even a FireWire port, and no one would have objected. The thinness is really just for bragging rights—and not much else.
  • My last MBP ran under $2,000. To get a 15” MBP that’d blow my Air out of the water (i.e., with a 256 GB SSD, higher resolution display, etc.), you’re talking about $2600 or so. Yes, it’d have two more cores, and far better graphics, but 99.999% percent of people wouldn’t be able to tell the difference. Apple has gaps in their product lineup like no other tech company—and they just don’t care.

I can’t get this out of my head, and I don’t necessarily view that as a bad thing. I hear a little bit of The Cure, The Killers, and some of their more humorous lyrics remind me a little of Third Eye Blind even (on their latest album as a whole, not necessarily in this song).

Steve Jobs’ Biography

I finally got around to reading Walter Isaacson’s biography of Steve Jobs, and overall, it was pretty good, with a few caveats. A great deal of it will be very familiar to anyone who has read Owen Linzmayer’s “Apple Confidential” (which I can’t recommend highly enough to anyone with any interest in Apple’s history), and there are plenty of Jobsian anecdotes that you can find on the web that are just as interesting as anything in the book. Specifically, stories you can find here come to mind.

The one thing that kept bothering me about the book was Isaacson’s attempts at being objective, where I think he failed to varying degrees. I think he did a fine job of presenting Steve Jobs as a man, with all the good and all the bad, but I also think he—along with the vast majority of people, really—gives Jobs too much credit for a lot of things.

Make no mistake—Jobs was a perfectionist who was fanatical about making sure his companies’ products (whether at Apple, Next, or Pixar) were as polished as could be. This fanaticism played a big role in the success of things like the iPod and iPhone, but people also look at him as an innovator. And that’s where I have a problem, because Jobs was about as far from an innovator as you could possibly get (in my opinion).

The Mac was not the first computer with a GUI, and even when it did come out, it (arguably) wasn’t the best GUI out there. The iPod wasn’t the world’s first MP3 player. I had a Rio long before the iPod came out, and aside from a lack of storage (which I admit returning it for—the solution for that particular issue would have come with or without Apple), it was pretty damn good. The iPhone wasn’t the first smartphone with a touchscreen. The iPad wasn’t the first tablet. Apple arguably had the iPhone and iPad before those products even came out with the Newton. Which Jobs promptly killed upon his return to Apple before the “innovation” of the i-products.

I’m not necessarily trying to take anything away from the man, or Apple. Their products are generally pretty damn good, and Jobs was a big reason for that. But, just about anything Apple did was done by others before them. Jobs and Apple made the world a better place, but not through innovation. Instead, it was evolution and polish.

It’s an important distinction to make, and one that I think Isaacson understood in his head, but was altered in print by the infamous RDF. The folks who came before Apple tend to be forgotten, but without them, Jobs and Apple alike could have never gotten to where they were/are today.

religiousragings:

How to Save the American Economy

religiousragings:

How to Save the American Economy

(Reblogged from amplexushoc)

A Few More Apple Things

  • I already ordered a sleeve and “ScreenSavr” from RadTech. They look nice, and should suit my OCD-ness quite well. It’s particularly important now that my laptop will actually get used on my lap (instead of sitting on my desk with an external LCD, keyboard, and mouse attached to it at all times).
  • I’ve wanted a truly dockable Mac for years, and Thunderbolt should make that possible (mostly). Well, it’s already possible if I wanted to drop another grand on Apple’s 27” display, but I think I’ll wait for this instead.
  • It might be time to upgrade all the wireless access points throughout the house to ones that support wireless N.
  • A MBA with 8 GB of RAM will come out the day after my return period expires. Guaranteed.
  • Full screen mode kicks ass for Terminal. Don’t really need it for anything else.
  • Who the hell buys iPads when you can get a MacBook Air instead?

New Computer Time

It was about a year ago that I bought a used ThinkPad off eBay, and with that, I started to think my Mac days were nearing an end. The hardware is still top-notch, but I had serious questions about their commitment to OS X, as well as whether or not the changes to the OS were positive ones (or just attempts to turn it into an iOS clone, which is not a compliment).

With my MacBook Pro nearing 4 years old, it had started feeling a little slow (mostly owing to its hard disk, honestly), and I had never really used it as a laptop anyway, so I started considering my options. In the end, I was between a brand-new ThinkPad T420S and a 13” MacBook Air (in both cases with a SSD—having one in my computer at work has spoiled me). As tempted as I was to go with the ThinkPad, I’m trying out a MacBook Air instead.

And so far, so good. The ThinkPad I have is great for a lot of things, but it’s a tad too small to be a primary computer. My MBP is just a bit too big. The 13” MBA (with the same resolution as my 15” MBP) is just about perfect. I didn’t opt for the i7 option, but the i5 is plenty fast enough, particularly in conjunction with the SSD.

Lion is a bit of a change, and I’ve gone through and reverted just about everything I can do the Leopard/Tiger way (scrolling direction/bars, Dashboard, Exposé, 2D dock, etc.). The under-the-hood improvements since Tiger have generally been great, but the UI changes have been mostly shit, in my book. I’ve said it before, and I’ll say it again here—on the OS front, Apple’s lead over Microsoft is marginal at best, and their attitude towards perfection in consistency is rapidly disappearing.

But all in all, it’s still phenomenal hardware, and the OS—once its default flaws are fixed—is still just a little nicer than Windows Vista/7. Plus, I’m a UNIX geek at heart, and I love having a bash shell just a Terminal click away (yeah, yeah, yeah… I know all about Cygwin. It’s not the same.).

This guy (Bryan Cantrill) is awesome. Larry Ellison is the devil. Proof of both in just over a hour, objectivity aside.

Recycling RSA Appliances

RSA hasn’t gotten a whole lot of great publicity in the past year, and rightfully so. However, the old SecurID appliances (the ones with LCDs on the front panel) are pretty nice and recyclable systems. I’m specifically referring to the ones where RSA sourced the boxes from Celestix. They’re pretty much standard x86-based servers that don’t consume a whole lot of power, and can run any OS you want without much trouble.

We replaced our RSA boxes at work earlier this year, and we were getting ready to throw two of the old ones away. So naturally, I adopted them and brought them home. One of them has already replaced an ancient Gateway (366 MHz Celeron) box, and the other (with 4 NICs on-board) is poised to replace my little ALIX firewall (hardware-wise, it’s very much like the step between an ASA 5505 and a 5520).

If only the driver/controller software for the front-panel LCD were available (source code or otherwise), I’d have them saying “PC LOAD LETTER” in no time.