# Requirements for installing repmgr

repmgr is developed and tested on Linux and OS X, but should work on any UNIX-like system supported by PostgreSQL itself. There is no support for Microsoft Windows.

&repmgr; &repmgrversion; is compatible with all PostgreSQL versions from 9.4. See section &repmgr; compatibility matrix for an overview of version compatibility.

If upgrading from &repmgr; 3.x, please see the section upgrading-from-repmgr-3.

All servers in the replication cluster must be running the same major version of PostgreSQL, and we recommend that they also run the same minor version.

&repmgr; must be installed on each server in the replication cluster. If installing repmgr from packages, the package version must match the PostgreSQL version. If installing from source, &repmgr; must be compiled against the same major version.

The same "major" &repmgr; version (e.g. `&repmgrversion;.x`) must be installed on all node in the replication cluster. We strongly recommend keeping all nodes on the same (preferably latest) "minor" &repmgr; version to minimize the risk of incompatibilities.

If different "major" &repmgr; versions (e.g. 4.1.x and &repmgrversion;.x) are installed on different nodes, in the best case &repmgr; (in particular &repmgrd;) will not run. In the worst case, you will end up with a broken cluster.

A dedicated system user for &repmgr; is not required; as many &repmgr; and &repmgrd; actions require direct access to the PostgreSQL data directory, these commands should be executed by the `postgres` user.

See also Prerequisites for configuration for information on networking requirements.

We recommend using a session multiplexer utility such as `screen` or `tmux` when performing long-running actions (such as cloning a database) on a remote server - this will ensure the &repmgr; action won't be prematurely terminated if your `ssh` session to the server is interrupted or closed.

## &repmgr; compatibility matrix

The following table provides an overview of which &repmgr; version supports which PostgreSQL version.

## &repmgr; compatibility matrix

&repmgr; version | Supported? | Latest release | Supported PostgreSQL versions | Notes
&repmgr; 5.4 | (dev) | &repmgrversion; (&releasedate;) | 9.4, 9.5, 9.6, 10, 11, 12, 13, 15 |
&repmgr; 5.3 | YES | &repmgrversion; (&releasedate;) | 9.4, 9.5, 9.6, 10, 11, 12, 13, 14, 15 | PostgreSQL 15 supported from &repmgr; 5.3.3
&repmgr; 5.2 | NO | 5.2.1 (2020-12-07) | 9.4, 9.5, 9.6, 10, 11, 12, 13 |
&repmgr; 5.1 | NO | 5.1.0 (2020-04-13) | 9.3, 9.4, 9.5, 9.6, 10, 11, 12 |
&repmgr; 5.0 | NO | 5.0 (2019-10-15) | 9.3, 9.4, 9.5, 9.6, 10, 11, 12 |
&repmgr; 4.x | NO | 4.4 (2019-06-27) | 9.3, 9.4, 9.5, 9.6, 10, 11 |
&repmgr; 3.x | NO | 3.3.2 (2017-05-30) | 9.3, 9.4, 9.5, 9.6 |
&repmgr; 2.x | NO | 2.0.3 (2015-04-16) | 9.0, 9.1, 9.2, 9.3, 9.4 |

The &repmgr; 2.x and 3.x series are no longer maintained or supported. We strongly recommend upgrading to the latest &repmgr; version.

Following the release of &repmgr; 5.0, there will be no further releases of the &repmgr; 4.x series. Note that &repmgr; 5.x is an incremental development of the 4.x series and &repmgr; 4.x users should upgrade to this as soon as possible.

## PostgreSQL 9.4 support

Note that some &repmgr; functionality is not available in PostgreSQL 9.4:

- In PostgreSQL 9.4, `pg_rewind` is not part of the core distribution. `pg_rewind` will need to be compiled separately to be able to use any &repmgr; functionality which takes advantage of it.

PostgreSQL 9.3 has reached the end of its community support period (final release was 9.3.25 in November 2018) and will no longer be updated with security or bugfixes.

Beginning with &repmgr; 5.2, &repmgr; no longer supports PostgreSQL 9.3.

PostgreSQL 9.4 has reached the end of its community support period (final release was 9.4.26 in February 2020) and will no longer be updated with security or bugfixes.

We recommend that users of these versions migrate to a supported PostgreSQL version as soon as possible.

For further details, see the PostgreSQL Versioning Policy.