Esta é uma questão muito ampla, mas aqui estão algumas dicas.
Para proteger contra falhas de hardware, você desejará investigar o balanceamento de carga (eu uso o ldirector) e / ou o Heart beat. Isso significa que você precisará de outro host mais ou menos idêntico para agir como reserva.
Enquanto eles são projetados para coisas diferentes, de um ponto de vista de alta disponibilidade, eles podem realizar praticamente o mesmo. O Heartbeat permite que um par de servidores monitore a disponibilidade um do outro e alternará serviços (como um servidor da Web) para os quais o host continua a ser executado.
O balanceamento de carga pode alcançar uma configuração semelhante removendo hosts "mortos" do pool.
Há um bom tutorial inicial sobre batimentos cardíacos aqui: link e este link lida com ldirectord no Ubuntu (apesar de não ser a versão que você está usando)
I use a good 30minute+ backup system to ensure power failures less than 30 minutes don't affect my website
Tudo bem, mas quanto tempo levará para restaurar seu backup?
I am also hosting at home so having a redundant network is not possible. If my landline fails, the server goes down. However that doesn't bother me. Data centers can go offline due to network problems so i'm not worried about that.
É claro que não há provas de bombas, mas as probabilidades são de que a disponibilidade de um DC seja muito melhor do que a de uma conexão de banda larga em casa. DC normalmente tem (ou pelo menos deveria ter) Muitas conexões de Internet redundantes, energia de backup, proteção contra inundação e migração de outros sistemas redundantes para manter tudo funcionando.
Se você quiser melhorar a confiabilidade do seu site, obter um VPS ou um servidor alugado de um dos muitos provedores por aí, provavelmente é sua opção mais fácil.
Boa sorte com seu projeto.