AmandaEnterpriseを使用したPostgreSQLのバックアップ

AmandaEnterpriseを使用したPostgreSQLのバックアップ

PostgreSQLの次のバージョンのいずれかである必要があります。

  • PostgreSQL 8.x、9.x
  • PostgreSQL プラス 8.3

PostgreSQLを実行しているクライアントには、GNU tar1.23以降が必要です。
 

Amanda EnterpriseServerの変更
 

バックアップ一時ディレクトリと状態ディレクトリがAmandaのデフォルト値と異なる場合は、編集します。 /etc/zmanda/zmc/zmc_aee/zmc_user_dumptypes 次の行をに追加するには app_ampgsql_user:

  • property "TMPDIR" "Path_to_temp_dir"
  • property "STATEDIR" "Path_to_state_dir"

PostgreSQLサーバーを実行しているAmandaクライアントの変更
 

ログ先行書き込み用のディレクトリを作成し、amandabackupが読み取り/書き込みできることを確認します。

# mkdir /var/lib/amanda/postgres
# chown amandabackup:post
gres /var/lib/amanda/postgres
 

PostgreSQL構成ファイル($ pgdatadir / postgres.conf)を編集します。
 

archive_mode = on
archive_command = 'cp %p /var/lib/amanda/postgres/%f'
wal_level = archive # only required on Postgres 9.x or greater, acceptable options being archive or hot_standby

 

編集 アマンダクライアント.conf 構成ファイル、これは次のいずれかになります /etc/amanda/backup_set_name/amanda-client.conf (backup_set_nameディレクトリを作成する必要がある場合があります)またはグローバルに /etc/amanda/amanda-client.conf。 以下の設定の説明。
 

property "PG-DATADIR" "Path_to_PSQL_Data_Dir"
property "PSQL-PATH" "Path_to_PSQL_Binary"
property "PG-ARCHIVEDIR" "Path_to_PSQL_Archive_Dir"
property "PG-CLEANUPWAL" "Whether_to_clean_up_WAL_Yes_or_No"
property "PG-USER" "PostgreSQL_username"
property "PG-PASSWORD" "PSQL_Password"
property "PG-HOST" "hostname_or_directory_of_socket_file"
property "PG-PORT" "TCP_port_to_connect_to. Default: 5432"
property "PG-DB" "Database_name"

 

サーバー上の複数のPostgreSQLインスタンスのパラメーターを指定するには、バックアップディレクトリに対応するプロパティ名にプレフィックスを追加します。 例えば:
 

property "PG-USER" "amandabackup"
になります:
property "/path/to/data/dir-PG-USER" "amandabackup"
 

Path_to_PSQL_Data_Dir
PostgreSQLデータディレクトリへのパス。
 

Path_to_PSQL_Archive_Dir
WALセグメントがバックアップ中にPostgreSQLサーバーによってキャッシュされ、ZmandaPostgresエージェントによってアーカイブされる場所へのパス。 これは、PostgreSQLサーバーのpg_xlogディレクトリに設定しないでください。 PostgreSQLデータディレクトリの外部のパスを指定します。このパスでは、archiveコマンドが完全バックアップの実行の間に保存されるファイルをコピーします。 PostgeSQLユーザーは、このディレクトリで読み取り、書き込み、および実行の権限を持っている必要があります。 Zmandaは、Postgresグループにamandabackupユーザーを追加するなど、すべてのユーザーにアクセスを許可するのではなく、システムグループを使用して権限を管理することをお勧めします。 指定するパスは、PostgreSQL構成ファイル内のarchive_commandのターゲットディレクトリである必要があります。
 

hostname_or_directory_of_socket_file
ホスト名(適切な場合はlocalhost)またはソケットファイルが配置されているディレクトリを指定します。 /で始まるエントリは、ソケットファイルディレクトリとして解釈されます(たとえば、/ tmp / .s.PGSQL.5432ではなく、/ tmpのディレクトリのみ)。 ディレクトリを使用する場合は、PostgreSQLサーバーとAmandaバックアップサーバーが同じマシン上に存在する必要があります。
 

Path_to_PSQL_Binary
PostgreSQLpsqlバイナリ実行可能ファイルへのパス。
 

PostgreSQL_username
接続するPostgreSQLデータベースユーザー。スーパーユーザー権限が必要です。
 

PSQL_Password
PostgreSQLのパスワード。
 

Whether_to_clean_up_WAL
フルバックアップ中に古いWALセグメントファイルを削除するかどうか。 WALアーカイブファイルは、完全バックアップが完了した後、PG_ARCHIVEDIRの場所から削除されます。 デフォルトはyesです。
 

Database_name
接続するデータベース。 PG-USERは、このデータベースにアクセスするための資格情報を持っている必要があります。 デフォルト値は「template1」で、デフォルトのPostgreSQLインストールに存在します。
*これはバックアップするデータベースではありません。 内のすべてのデータベース ポストグレス サーバーがバックアップされます。
 

SUPERUSER権限とPG-PASSWORDに一致するパスワードを使用して、amandabackupと呼ばれるLOGINPostgreSQLロールを作成します。 たとえば、次のコマンドをPostgreSQLデータベース内でスーパーユーザーとして実行できます。
 

CREATE ROLE amandabackup WITH SUPERUSER LOGIN PASSWORD 'password';
 

Amanda Enterprise ServerがPostgreSQLサーバーにアクセスできるようにするにはpg_hba.confファイルを変更します。amandabackupユーザーが10.0.0.xの任意のIPから接続できるようにする例は次のとおりです。
 

TYPEDATABASEUSERCIDR-ADDRESSMETHOD
Hostallamandabackup10.0.0.0/25md5

詳細についてはhttp://docs.zmanda.com/Project:Amanda_Enterprise_3.3/Zmanda_App_modules/PostgreSQL