multimaster is a Postgres extension with a set of core patches that turn the DBMS into a synchronous shared-nothing symmetric cluster providing high availability with strong consistency and read scalability.
It offers the following benefits, some of which are not available in traditional streaming replication based solutions:
- Fault tolerance and automatic node recovery
- Fast failover
- Both read and write transactions can be executed on any node.
- Read scalability
- Working with temporary tables on each cluster node
- Online minor upgrades
Documentation for versions released with PostgresPro Enterprise can be found here.
Since multimaster depends on core patches, both Postgres and extension must be compiled. The patched version (based on Postgres 13) is available here. Follow the documentation to build it.
Then enter the build directory and install the extension with
cd contrib
git clone https://github.com/postgrespro/mmts/
cd mmts
make install