Hacer una copia de seguridad de PostgreSQL con Amanda Enterprise

Hacer una copia de seguridad de PostgreSQL con Amanda Enterprise

Debe ser una de las siguientes versiones de PostgreSQL:

  • PostgreSQL 8.x, 9.x
  • PostgreSQL Plus 8.3

El cliente que ejecuta PostgreSQL debe tener GNU tar 1.23 o posterior.
 

Cambios para Amanda Enterprise Server
 

Si el directorio temporal de respaldo y el directorio de estado son diferentes a los valores predeterminados de Amanda, edite /etc/zmanda/zmc/zmc_aee/zmc_user_dumptypes para agregar las siguientes líneas a usuario_aplicación_ampgsql:

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

Cambios para el cliente Amanda que ejecuta el servidor PostgreSQL
 

Cree un directorio para su registro de escritura anticipada y asegúrese de que amandabackup pueda leer / escribir:

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

Edite el archivo de configuración de 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

 

Editar amanda-cliente.conf archivo de configuración, esto puede estar en /etc/amanda/backup_set_name/amanda-client.conf (puede que necesite crear el directorio backup_set_name) o globalmente en /etc/amanda/amanda-client.conf. Explicación de la configuración a continuación.
 

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"

 

Para especificar parámetros para más de una instancia de PostgreSQL en un servidor, agregue un prefijo al nombre de la propiedad que corresponde al directorio de respaldo. Por ejemplo:
 

property "PG-USER" "amandabackup"
se convierte en:
property "/path/to/data/dir-PG-USER" "amandabackup"
 

Path_to_PSQL_Data_Dir
La ruta al directorio de datos de PostgreSQL.
 

Path_to_PSQL_Archive_Dir
La ruta hacia donde los segmentos WAL serán almacenados en caché por el servidor PostgreSQL durante la copia de seguridad y luego archivados por el agente de Zmanda Postgres. ¡Esto no debe establecerse en el directorio pg_xlog del servidor PostgreSQL! Especifique una ruta fuera del directorio de datos de PostgreSQL donde el comando de archivo copiará los archivos que se almacenarán entre las ejecuciones de la copia de seguridad completa. El usuario de PostgeSQL debe tener privilegios de lectura, escritura y ejecución en este directorio. Zmanda recomienda usar grupos del sistema para administrar permisos en lugar de otorgar acceso a todos los usuarios, como agregar el usuario amandabackup al grupo de Postgres. La ruta especificada debe ser el directorio de destino del archive_command en el archivo de configuración de PostgreSQL.
 

hostname_or_directory_of_socket_file
Especifique el nombre de host (localhost si es apropiado) o el directorio donde se encuentra un archivo de socket. Las entradas que comienzan con / se interpretan como un directorio de archivos de socket (solo el directorio, por ejemplo, / tmp, no /tmp/.s.PGSQL.5432). Si se utiliza un directorio, el servidor PostgreSQL y el servidor de respaldo de Amanda deben residir en la misma máquina.
 

Path_to_PSQL_Binary
La ruta al archivo ejecutable binario de PostgreSQL psql.
 

PostgreSQL_username
El usuario de la base de datos PostgreSQL con el que conectarse, que debe tener privilegios de superusuario.
 

PSQL_Password
La contraseña de PostgreSQL.
 

Whether_to_clean_up_WAL
Si eliminar o no archivos de segmento WAL antiguos durante las copias de seguridad completas. Los archivos de almacenamiento WAL se eliminan de la ubicación PG_ARCHIVEDIR después de que se completa la copia de seguridad completa. El valor predeterminado es sí.
 

Database_name
La base de datos a la que conectarse. El PG-USER debe tener credenciales para acceder a esta base de datos. El valor predeterminado es "template1" que existe en las instalaciones de PostgreSQL predeterminadas.
* Esta no es la base de datos para respaldar. Todas las bases de datos del Postgres el servidor está respaldado.
 

Cree un rol de LOGIN PostgreSQL llamado amandabackup con privilegios de SUPERUSUARIO y una contraseña que coincida con PG-PASSWORD. Por ejemplo, el siguiente comando se puede ejecutar dentro de la base de datos de PostgreSQL como superusuario:
 

CREATE ROLE amandabackup WITH SUPERUSER LOGIN PASSWORD 'password';
 

Para permitir que Amanda Enterprise Server acceda al servidor PostgreSQL, modifique el archivo pg_hba.conf Un ​​ejemplo que permitiría al usuario amandabackup conectarse desde cualquier IP en 10.0.0.x sería el siguiente:
 

TYPEDATABASEUSERCIDR-ADDRESSMETHOD
Hostallamandabackup10.0.0.0/25md5

Para más información, consultehttp://docs.zmanda.com/Project:Amanda_Enterprise_3.3/Zmanda_App_modules/PostgreSQL