Installation

Barmanの公式パッケージは、 Barman downloads page にリストされているリポジトリを介してEnterpriseDBによって配布されます。

重要

The recommended way to install Barman is by using the available packages for your GNU/Linux distribution.

RPMパッケージを使用したRedHat/CentOSへのインストール

Barmanは、RPMパッケージを使用してRHEL7およびRHEL6 Linuxシステムにインストールできます。事前にExtra Packages Enterprise Linux(EPEL)リポジトリと PostgreSQL Global Development Group RPM repository をインストールする必要があります。

Barmanの公式RPMパッケージは、そのWebサイトにある指示に従って、 EnterpriseDBからYumを介して public RPM repository を介して配布されます。

次に、 root として次のように入力します。

yum install barman

注: > Barman関連のパッケージは、 PGDGリポジトリを介して更新されないようにすることをお勧めします。これを行うには、次の行を> /etc/yum.repos.d/pgdg-*.repo ファイル内のBarmanサーバーに含まれるPGDGリポジトリ定義に追加します。

   exclude=barman* python*-barman
``` > これにより、 > Barmanソフトウェアのパッケージ管理をEnterpriseDBリポジトリのみに依存します。

..  NOTE ::
We suggest that you exclude any Barman related packages from getting updated via the PGDG repository. This can be done by adding the following line to any PGDG repository definition that is included in the Barman server inside any `/etc/yum.repos.d/pgdg-*.repo`  file:

```ini
   exclude=barman* python*-barman
``` これを行うことで、 Barmanソフトウェアのパッケージ管理をEnterpriseDBリポジトリのみに依存します。

##  パッケージを使用したDebian / Ubuntuへのインストール

Barmanは、パッケージを使用してDebianおよびUbuntu Linuxシステムにインストールできます。

DebianおよびUbuntuの公式リポジトリで直接入手できますが、これらのリポジトリには利用可能な最新バージョンが含まれていない場合があります。 Barmanの最新バージョンが必要な場合は、次の両方のリポジトリをインストールすることをお勧めします。

*  `Public APT repository <https://apt.2ndquadrant.com/>`__ 、 Barman開発者が直接保守

*  `PostgreSQL Community APT repository <https://apt.postgresql.org/>`__  、  `APT section of the PostgreSQL Wiki <https://wiki.postgresql.org/wiki/Apt>`__

..  NOTE::
Thanks to the direct involvement of Barman developers in the PostgreSQL Community APT repository project, you will always have access to the most updated versions of Barman.

Barmanのインストールは簡単です。 `root` ユーザーとして次のように入力します。

``` bash
apt-get install barman

パッケージを使用したSLESへのインストール

Barmanは、 PGDG SLES repositories で入手可能なパッケージを使用してSLESシステムにインストールできます。

PGDG site にある指示に従って、必要なリポジトリをインストールします。

サポートされているSLESバージョンはSLES 12 SP5およびSLES 15 SP3です。

  • SLES 12のみ*:次のようにOpenSUSE pythonバックポートリポジトリを有効にする必要があります(この手順はSLES 15では必要ありません)。

zypper addrepo https://download.opensuse.org/repositories/devel:languages:python:backports/SLE_12_SP5/devel:languages:python:backports.repo
zypper addrepo https://download.opensuse.org/repositories/devel:/languages:/python:/backports/SLE_12_SP4 devel_languages_python_backports_sp4
zypper refresh

必要なリポジトリがインストールされたら、 root ユーザーとしてBarmanをインストールできます。

zypper install barman

ソースからのインストール

警告

Manual installation of Barman from sources should only be performed by expert GNU/Linux users. Installing Barman this way requires system administration activities such as dependencies management, barman user creation, configuration of the barman.conf file, cron setup for the barman cron command, log management, and so on.

backup サーバーでbarman というシステムユーザーを作成します。 barman ユーザーとして、ソースをダウンロードして解凍します。

システム全体にインストールするには、次のように入力します。

barman@backup$ ./setup.py build
# run this command with root privileges or through sudo
barman@backup# ./setup.py install

ローカルインストールの場合、次のように入力します。

barman@backup$ ./setup.py install --user

barman アプリケーションがユーザーディレクトリ make sure that your `PATH environment variable is set properly <https://docs.python.org/3/install/index.html#alternate-installation-the-user-scheme>`__ にインストールされます。

Barman is also available on the Python Package Index (PyPI)であり、pip を介してインストールできます。

PostgreSQLクライアント/サーバーバイナリ

次のBarman機能はPostgreSQLバイナリに依存しています。

  • backup_method = postgres を使用した Streaming backup vs rsync/SSH (pg_basebackup が必要)

  • streaming_archiver = on を使用した Streaming WAL archiving (pg_receivewal またはpg_receivexlog が必要)

  • barman verify-backup を使用した Verifying backups (pg_verifybackup が必要)

ターゲットOSに応じて、これらのバイナリはPostgreSQLクライアントまたはサーバーパッケージでインストールされます。

  • RedHat/CentOSおよびSLESの場合: * pg_basebackup およびpg_receivewal /pg_receivexlog バイナリはPostgreSQLクライアントパッケージとともにインストールされます。 * pg_verifybackup バイナリはPostgreSQLサーバーパッケージとともにインストールされます。 *すべてのバイナリは/usr/pgsql-${PG_MAJOR_VERSION}/bin にインストールされます。

  • Debian/Ubuntuの場合: * すべてのバイナリはPostgreSQLクライアントパッケージとともにインストールされます。 *バイナリは/usr/lib/postgresql/${PG_MAJOR_VERSION}/bin にインストールされます。

次のいずれかを確認する必要があります。

  1. Barmanユーザーは、そのパスに適切なPG_MAJOR_VERSION のbin ディレクトリを持っています。

  2. path_prefix オプションは、各サーバーのBarman構成で設定され、適切なPG_MAJOR_VERSION

のbin ディレクトリを指します。

上記のバイナリに加えて、( https://www.postgresql.org/docs/current/app-psql.html )[psql]プログラムをお勧めします。 Barmanは直接使用しませんが、ドキュメントには、PostgreSQL接続が意図したとおりに機能していることを確認する方法の例が記載されています。 psql バイナリは、PostgreSQLクライアントパッケージにあります。

Upgrading Barman

Barmanはトランクベースの開発パラダイムに従っているため、安定したバージョンは最新の1つだけです。コミットするたびに、 Barmanは、サポートされているPostgreSQLバージョンおよびサポートされている各Linuxディストリビューションについて、何千もの自動テストを実行します。

また、 すべてのバージョンは以前のバージョンと互換性があります 。したがって、 Barmanをアップグレードするには、通常、 yum update またはapt update を使用してパッケージを簡単に更新する必要があります。

ただし、開発履歴には次の例外があり、構成に小さな変更が必要でした。

Barman 3.0.0へのアップグレード

Rsyncバックアップのデフォルトのバックアップアプローチがコンカレントになりました

backup_options でconcurrent_backup もexclusive_backup も指定されていない場合、 Barmanは同時バックアップを使用するようになりました。これは、デフォルトで排他的バックアップを使用する以前のBarmanバージョンとは異なります。

排他的バックアップが必要な場合は、 Barman構成でexclusive_backup をbackup_options に追加する必要があります。

PostgreSQL 15に対して実行する場合、排他的バックアップはまったくサポートされないことに注意してください。

メタデータの変更

バージョン3.0.0で作成されたすべてのバックアップのbackup.info ファイルに保存されているメタデータに、 compression という名前の新しいフィールドが追加されます。これは、pg_basebackup の組み込みの圧縮機能を使用して取得したバックアップから回復するときに使用されます。

このフィールドが存在することは、 Barmanの以前のバージョンではBarman 3.0.0で作成されたバックアップを読み取れないことを意味します。これは、 Barman 3.0.0から以前のバージョンにダウングレードする場合、3.0.0で取ったバックアップを手動で削除するか、各バックアップのbackup.info ファイルを編集してcompression フィールドを削除する必要があることを意味します。

同じメタデータの変更が(https://github.com/EnterpriseDB/pg-backup-api)[pg-backup-api]に影響するため、 pg-backup-apiを使用している場合はバージョン0.2.0に更新する必要があります。

Barman 2.10からのアップグレード

barman-cloud-wal-archive またはbarman-cloud-backup を使用している場合、バージョン2.11からすべてのクラウドユーティリティが新しいbarman-cli-cloud パッケージに移動されていることに注意してください。したがって、最新バージョンへのアップグレードの一部としてbarman-cli-cloud パッケージが適切にインストールされていることを確認する必要があります。上記のツールを使用していない場合は、通常どおりに最新バージョンにアップグレードできます。

Barman 2.X(2.8より前)からのアップグレード

Barman 2.7以前のバージョンからアップグレードする前に、プライマリサーバーでrsync バックアップ方法を使用するユーザーは、 backup_options をBarman (PostgreSQL 9.6以降に推奨)またはexclusive_backup (現在のデフォルト)に設定する必要があります。 。

Barman 1.Xからのアップグレード

Barmanインストールが1.Xの場合、アーカイブ戦略を明示的に構成する必要があります。以前は、 archiver によって制御されるファイルベースのアーカイバーがデフォルトで有効になっていました。

Barmanインストールを最新バージョンにアップグレードする前に、次の行をグローバルに、またはそれを必要とするサーバーに追加してください。

archiver = on

さらに、いくつかのリリースでは、 Barmanはアーカイブ戦略を明示的に設定していないサーバーで透過的に archiver = on を設定し、警告を出力します。