PostgreSQL is a very powerful server. It's developers are also extremely picky as to how things are done and that it conforms very dominantly to SQL ANSI Specification to every degree, including down to how it does it internally bit for bit.
Having said that, providing failover, clusters, replication, is a bit harder and still very kludgy as it itself does not directly support any of these methods on it's own because no perfect means has been created to do this.