It seems that Linode offers IP failover, so you could possibly just purchase another node, keep your static content synced between them (rsync cron job?), set up
datbase replication for postgresql and purchase/enable the IP failover option. Seem reasonable ?