17. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
OÙ INTERVIENT PGBACKREST ?
Peut prendre un « instantané de vos données » (cluster wide)
Récupére les journaux complets pour les placer « en lieu sûr »
Fournit un catalogue et des actions sur les backups
18. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
Gestion en ux, parallélisme et asynchronise
Compression en parallèle (multicore) sur serveur de base
Les archives sauvegardées (et restaurées) en parallèle et asynchrones, une
seule fois
Support des tablespaces et de liens
19. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
Opérations locales ou distantes
S'appuie fortement sur SSH
Accès à PostgreSQL localement (en utilisant SSH)
Support de Amazon S3
20. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
Backups
Complet
Différentiels (ref = dernier complet)
Incrémentaux (ref = dernier complet ou diff)
21. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
Gestion intelligente des rétentions
Pour les backups complets et différentiels
Pour les archives (tous les backups ou le dernier)
22. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
Intégrité, sécurité (et performance), chiffrement
Checksums sur tous les chiers du backup
Les backups sont au même format que dans un cluster
Véri cation des checksums/page si actif sur cluster
Chiffrement des backups possible
23. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
Restauration
Delta, seuls les chiers dont le checksum a changé sont restaurées, le tout
de façon parallèle
Remapping des tablespaces possible
Restauration parallèles et asynchrones
Restauration des archives manquantes uniquement (cksum)
24. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
INSTALLATION AVEC DEBIAN
Récupération des paquets du PGDG :
Installation
Installer sur le serveur DB et sur le serveur de backup.
echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main"
> /etc/apt/sources.list.d/pgdg.list
apt-get install wget ca-certificates
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
apt-get update
apt install pgbackrest
25. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
CONFIGURATION DE PGBACKREST
Le chier /etc/pgbackrest.conf sous Debian.
Principe de stanza
Con guration principale
[dbdemo]
# Identique au data_directory de postgresql.conf
pg1-path=/var/lib/postgresql/10/main
[global]
# Existe déjà sous Debian
repo1-path=/var/lib/pgbackrest
# Rétention 2 full, + 1 diff
repo1-retention-diff=1
repo1-retention-full=2
start-fast=y
[global:archive-push]
# global:command => spécifique à la commande
# stanza:command existe également
compress-level=3
29. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
PREMIER BACKUP
VÉRIFICATION DU BACKUP
pgbackrest --log-level-console=info --stanza=dbdemo backup
pgbackrest --log-level-console=info --stanza=dbdemo info
30. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
DEMO BACKUP LOCAL
jc@vega:~/dev/loxodata/presentation/demos/pgbackrest_meetup$ vagrant ssh db2
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Tue May 29 08:29:52 2018 from 10.0.2.2
vagrant@pgdb-2:~$ sudo su - postgres
postgres@pgdb-2:~$ vim /etc/postgresql
00:20
32. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
ECHANGE DES CLÉS SSH
Génération des clés : sur le serveur de backup et les hôtes DB
Placer les clés publiques dans .ssh/authorized_keys
Tester les connexions dans les deux sens
ssh-keygen -t rsa -n 4096
33. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
SERVEUR DE REPOSITORY (SSH)
Con guration de la base
Con guration sur le serveur
[dbdemo]
pg1-path=/var/log/postgresql/10/main
[global]
repo1-host=backuphost
repo1-host-user=postgres
[dbdemo]
pg1-host=serveurmeetup
pg1-host-user=postgres
pg1-path=/var/lib/postgresql/10/main
[global]
repo1-path=/var/lib/pgbackrest
# Chiffrement
repo1-cipher-pass=DemoMeetupToulouse20180605!
repo1-cipher-type=aes-256-cbc
# Parallelisme
process-max=2
# Rétention
repo1-retention-diff=1
repo1-retention-full=2
34. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
DEMO BACKUP DISTANT
jc@vega:~/dev/loxodata/presentation/demos/pgbackrest_meetup$ vagrant ssh db1
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon May 28 10:05:43 2018 from 10.0.2.2
vagrant@pgdb-1:~$ sudo su - postgres
postgres@pgdb-1:~$ vim /et
00:12
35. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
UTILISATION
On peut restaurer jusqu'à un certain point dans le temps :
Préciser le backup à utiliser :
utiliser info pour identi er le backup à appliquer
et --set
Action de n de restauration lors du lancement pgbackrest restore :
L'option --type permet de dé nir la nature des objectifs de restauration
(temps, xid, nom, ...)
--type=time --target="2018-06-05 19:30:00.1234567+00" restore
pgbackrest info
--type=time "--target="2018-06-05 19:30:00.1234567+00" --set=<nomduset> restore
--target-action={promote,pause,shutdown}
36. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
DEMO DE RESTAURATION
jc@vega:~/dev/loxodata/presentation/demos/pgbackrest_meetup$ vagrant ssh db1
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Tue May 29 09:48:48 2018 from 10.0.2.2
vagrant@pgdb-1:~$ sudo su - postgres
00:05
37. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
UTILISATION
Désactiver ou activer pgbackrest (global ou stanza):
Récupérer les archives (hot-standby et SR), chier recovery.conf généré
automatiquement
exemple de chier recovery.conf:
stop
ou
start
archive-get
standby_mode = 'on'
restore_command = 'pgbackrest --stanza=dbdemo archive-get %f "%p"'
38. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
HOT STANDBY
pgbackrest sait gérer la restauration en mode standby (génération du
recovery.conf)
pgbackrest.conf la stanza doit comprendre :
Peut être multiple :
Rajoute archive-get automatiquement
Gère automatiquement les recovery_target (time, name)
On peut exiger qu'il n'y ait pas d'écriture de recovery.conf :
recovery-options=stanby_mode=on
recovery-options=stanby_mode=on
primary_conninfo=db=test user=replicatonr host=dbdemomeetup
--type=preserve
43. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
Rendre les femmes de PostgreSQL plus visibles
@PostgresWomen
https://www.facebook.com/PostgresWomen/
https://www.postgresql.org/list/pgsql-women/
44. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
All we need is love!
: last friday of July
: 256th day of the year
: rst friday of July
Sysadmin appreciation day
Day of the Programmer
DBA appreciation day
45. LOXODATA
pgBackRest Meetup PostgreSQL Toulouse 2018-06-05 - - cc-by-nc@jcarnu jc.arnu@loxodata.com
QUESTIONS ?
C'est ni !
Nous recrutons !
recrutement@loxodata.com
MERCI ! :-)
Logo pgBackRest créé par Alexander Skowalsky