Amanda Enterprise를 사용하여 PostgreSQL 백업

Amanda Enterprise를 사용하여 PostgreSQL 백업

다음 PostgreSQL 버전 중 하나 여야합니다.

  • 포스트그레SQL 8.x, 9.x
  • PostgreSQL 플러스 8.3

PostgreSQL을 실행하는 클라이언트에는 GNU tar 1.23 이상이 있어야합니다.
 

Amanda Enterprise Server의 변경 사항
 

백업 임시 디렉터리 및 상태 디렉터리가 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 Client의 변경 사항
 

미리 쓰기 로그에 대한 디렉터리를 만들고 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
백업 중에 PostgreSQL 서버에서 WAL 세그먼트를 캐시 한 다음 Zmanda Postgres 에이전트에 의해 보관할 경로입니다. 이것은 PostgreSQL 서버의 pg_xlog 디렉토리로 설정되어서는 안됩니다! 아카이브 명령이 전체 백업 실행 사이에 저장할 파일을 복사 할 PostgreSQL 데이터 디렉터리 외부의 경로를 지정합니다. PostgeSQL 사용자는이 디렉토리에서 읽기, 쓰기 및 실행 권한이 있어야합니다. Zmanda는 amandabackup 사용자를 Postgres 그룹에 추가하는 것과 같이 모든 사용자에게 액세스 권한을 부여하는 대신 시스템 그룹을 사용하여 권한을 관리 할 것을 권장합니다. 지정된 경로는 PostgreSQL 구성 파일에있는 archive_command의 대상 디렉터리 여야합니다.
 

hostname_or_directory_of_socket_file
호스트 이름 (해당되는 경우 localhost) 또는 소켓 파일이있는 디렉토리를 지정하십시오. /로 시작하는 항목은 소켓 파일 디렉토리 (예 : /tmp/.s.PGSQL.5432가 아닌 / tmp와 같은 디렉토리)로 해석됩니다. 디렉토리를 사용하는 경우 PostgreSQL 서버와 Amanda 백업 서버가 동일한 시스템에 있어야합니다.
 

Path_to_PSQL_Binary
PostgreSQL psql 바이너리 실행 파일의 경로입니다.
 

PostgreSQL_username
연결할 PostgreSQL 데이터베이스 사용자로서 수퍼 유저 권한이 있어야합니다.
 

PSQL_Password
PostgreSQL 비밀번호입니다.
 

Whether_to_clean_up_WAL
전체 백업 중에 이전 WAL 세그먼트 파일을 제거할지 여부입니다. 전체 백업이 완료된 후 WAL 아카이브 파일이 PG_ARCHIVEDIR 위치에서 제거됩니다. 기본값은 예입니다.
 

Database_name
연결할 데이터베이스입니다. PG-USER는이 데이터베이스에 액세스 할 수있는 자격 증명이 있어야합니다. 기본값은 기본 PostgreSQL 설치에있는 "template1"입니다.
* 백업 할 데이터베이스가 아닙니다. 의 모든 데이터베이스 포스트 그레스 서버가 백업됩니다.
 

SUPERUSER 권한 및 PG-PASSWORD와 일치하는 암호를 사용하여 amandabackup이라는 LOGIN PostgreSQL 역할을 생성합니다. 예를 들어 다음 명령은 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