OneIS

INFORMATION MANAGEMENT

for professional teams of 5 to 50

Infrastructure complete

There are two visible parts to OneIS, the information management service and the OneIS application which our customers use to store their information. But there’s also an invisible part, the infrastructure which runs the OneIS application. It’s just as important as the other two parts, but it’s success is judged by our users not noticing it.

Today, we took delivery of the final server for the infrastructure needed to launch OneIS. I thought I’d write a little bit about what we use, and why we chose it.

An opportunity

It’s about two years since we started the OneIS project. Since we started with a completely blank slate, we were able to look at information management in a new way. Older projects were designed at a time when computing had some very hard limits, but with the hardware available now and in the next few years, these limits have just vanished.

It’s incredibly liberating to look at the problem and decide what’s needed to solve it, and not need to compromise because the hardware isn’t up to the job. Now is a great time to be designing a new system, taking advantage of the opportunities that modern high-end servers can offer us.

Choosing carefully

We spent quite a bit of time looking around for the best possible platform. We needed something which was solid, reliable, and tried and trusted, but also at the cutting edge to enable us to take advantage of all that’s on offer.

We chose hardware from Sun Microsystems running their Solaris operating system. Solaris has been around for decades, and is trusted by huge companies to just work. Combining it with hardware from the same vendor means we can be completely confident it’ll run perfectly.

Even though Solaris is one of the older operating systems out there, the pace of development in the last few years has been staggering. We’re using a few of it’s key technologies, and they’re enabling us to get the full benefit of the servers. But most importantly, it’s tuned to work well on the new generation of computer hardware, so we’ll be ready for whatever the future holds.

Warning: Technical content ahead

I’m going to go into a bit of detail about some of the specific choices we made, and why.

First of all, we use a X2100 M2 for our basic services, like web sites, email and monitoring. This was our first Sun server, and is probably the smallest system you can buy from Sun. We actually replaced four aging servers with this single server. The old servers were beginning to show hardware faults and used about 2000W of electricity. Our single X2100 M2 server uses 350W, and saves space in our data-centre.

I don’t think we could have done this without Solaris. It has this wonderful feature called “zones”, where a single server can behave like many servers. Unlike the virtualisation systems from other vendors, zones have a tiny overhead in terms of memory and processor usage, so the cheapest possible server was able to take over the job of four servers.

Running OneIS

However, while the X2100 M2 is cheap and reliable, it doesn’t quite have the horsepower to run OneIS for many clients at the snappy response speeds we demand.

For that, we chose Sun X4150 servers. These squeeze a huge amount of technology into a tiny box. Compared to systems from the other big names in computer hardware, you get more disc space, more memory, more connectivity and more expansion capabilities. Since we’re pushing the boundaries as much as we can, it was an easy choice.

And on the environmental side, these servers are very energy efficient, and because there’s more packed into the box, we need less of them.

Redundancy and reliability

However reliable your equipment is, something will always go wrong. There are two things you can do to cope with this without anyone noticing, and we’ve done both.

Firstly, you buy computers where there’s a duplicate of everything which can go wrong. The X4150s are great, as everything with moving parts works in pairs. When you are running a server farm, there’s a reasonable chance that one of these parts will fail in the average year, as moving mechanical systems wear out. But running everything in redundant pairs means the other one will take over seamlessly. Of course, I get an alert from the monitoring system and replace the failed part, but no one else will notice.

Secondly, we have extra servers ready to take over in case of major failures. We currently have two X4150s, with one of them ‘spare’, ready just in case. It’s not really wasted, as we’ll be using it for performance testing and other tasks which don’t have to be available 24 hours a day. As we add more servers for more clients, the percentage of our capacity which is spare will go down, making us a more efficient operation. With two servers, 50% is spare. With three, 33%, with four, 25%, and so on.

It may seem inefficient and maybe even a little wasteful to work at such levels of redundancy, but because our service is hosted, we benefit from economies of scale. If every one of our customers had their own pair of servers, that would be wasteful! But because resources and redundancy are shared between the isolated information systems we host, we can offer levels of reliability and availability which are uneconomic to provide to a single client.

You’ll notice that we only have one X2100 M2. Because we use a single OS and a single hardware vendor, the spare X4150 can take over if we have problems with that machine.

So in summary, we buy the highest quality hardware we can get our hands on, then we plan and test for any failures which may occur. We’ve designed and built an infrastructure that reaches the highest possible standards of performance and reliability. Our clients deserve nothing less.

The future

Choosing Sun has given us one more essential thing, future proofing. Computer manufacturers have given up on making single processors faster, so they’re integrating multiple processors together. If you’ve bought a computer recently, it’s probably been a “dual core” model with two processors in one.

Sun is at the forefront of this move with their UltraSPARC CoolThreads processors. In their latest systems, you get the equivalent of 64 processors, and I hear that systems with 128 will be available soon. While these servers have high price tags, they’re actually quite cheap per unit of computing power.

But even when looking at it as a cost per unit of computing power, there are so many units of computing power that they’re still out of the range of a new company. Fortunately, in the last few months Sun has started a special scheme, Startup Essentials. Through this, new companies can buy Sun CoolThreads hardware at some really exceptional prices, as well as getting other assistance from Sun. We’ll be using this scheme to continue to build OneIS on exceptionally high-quality infrastructure.

While writing software to get the most of such systems is not easy, applications like OneIS lend themselves to running well on this hardware. Our current X4150s have eight cores, and we’re tuning it to take advantage of more. When we need to expand our infrastructure, we’ll be ready as we already use Sun hardware and Solaris.

Fired up, ready to go

We’re entering the final phase of development, and then we’ll be out there getting more clients using our system. Our infrastructure is ready and waiting to support them, and we have a clear plan for adding capacity as required.

We’re just as proud of our infrastructure as we are our service and our system. While it might not be something anyone sees, it’s the basis for everything we do.

h3. Related links and resources

Sun servers: X2100 M2, X4150

Sun CoolThreads