It's very difficult, if not nearly impossible, to run a system with 100% uptime without resorting to things like clustering or other live-failover solutions. Any single server that is not mirrored or clustered in some way is a single point of failure and is at some point going to experience a measure of downtime.
If you are absolutely determined to have the best possible uptime, then aside from clustering (which is often pricey), one of the first measures that can be taken is to set up a mirrored hot-pluggable RAID array. A simple version of such would consist of two hard disks, with the same data written redundantly to each. If one fails, it can be swapped out for a new one on the fly without incurring any system downtime. Since hard drives are one of the most common elements in a computer to suffer a failure, this is probably the best first step.
This was first published in July 2004