Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
admin:maj_infra_2014_04 [2014/04/09 20:24] rjuju |
admin:maj_infra_2014_04 [2014/05/01 11:41] (Version actuelle) rjuju |
||
---|---|---|---|
Ligne 11: | Ligne 11: | ||
* Installation d' | * Installation d' | ||
* durée de rétention des sauvegardes ? (5 jours pour le moment) | * durée de rétention des sauvegardes ? (5 jours pour le moment) | ||
- | * passer le listen_addresses à ' | + | * <del>passer le listen_addresses à ' |
* envoi de mails depuis les crons ? si oui à quelle adresse ? | * envoi de mails depuis les crons ? si oui à quelle adresse ? | ||
- | * utilisation des liens symboliques **/data** plutôt que des vrais chemins **/ | + | * <del>utilisation des liens symboliques **/data** plutôt que des vrais chemins **/ |
* les seuls scripts différents sur les 2 machines sont | * les seuls scripts différents sur les 2 machines sont | ||
- | * les crontabs | ||
* le '' | * le '' | ||
* le '' | * le '' | ||
- | * le script de sauvegarde PITR (rsync vers le serveur) | + | * les crontabs: |
===== Actions ===== | ===== Actions ===== | ||
* Suppression de l' | * Suppression de l' | ||
+ | * < | ||
* Migration de [[celeste]] vers postgresql 9.3.4 | * Migration de [[celeste]] vers postgresql 9.3.4 | ||
* temps estimé : TODO | * temps estimé : TODO | ||
- | * Mise en réplication entre [[celeste]] et [[tantor]] | + | * <del>Mise en réplication entre [[celeste]] et [[tantor]]</ |
- | * log shipping | + | * <del>log shipping</ |
- | * streaming replication | + | * <del>streaming replication</ |
- | * pas de hot standby | + | * <del>pas de hot standby</ |
- | * Mise en place d'une sauvegarde PITR de [[celeste]] (en plus du pg_dumpall déjà en place) | + | * <del>Mise en place d'une sauvegarde PITR de [[celeste]] (en plus du pg_dumpall déjà en place)</ |
* Déplacement des sauvegardes pg_dumpall + rsync de celles-ci sur le FS / | * Déplacement des sauvegardes pg_dumpall + rsync de celles-ci sur le FS / | ||
- | * Installation de sysstat sur [[celeste]] et [[tantor]] | + | * <del>Installation de sysstat sur [[celeste]] et [[tantor]]</ |
* Mise en place de rapports pgBadger et pgCluu quotidiens | * Mise en place de rapports pgBadger et pgCluu quotidiens | ||
Ligne 57: | Ligne 57: | ||
</ | </ | ||
- | * Installation de la 9.3 | + | * <del>Installation de la 9.3</ |
- | * Configuration du dépôts apt.postgresql.org sur [[tantor]] : | + | * <del>Configuration du dépôts apt.postgresql.org sur [[tantor]] :</ |
- | * fichier / | + | * <del>fichier / |
deb http:// | deb http:// | ||
- | * + autres étapes, voir http:// | + | * <del>+ autres étapes, voir http:// |
- | * sudo apt-get install postgresql-9.3 postgresql-client-9.3 postgresql-contrib-9.3 | + | * <del>sudo apt-get install postgresql-9.3 postgresql-client-9.3 postgresql-contrib-9.3</ |
- | * sur [[celeste]] et [[tantor]] | + | * <del>sur [[celeste]] et [[tantor]]</ |
<note important> | <note important> | ||
Ligne 75: | Ligne 75: | ||
* < | * < | ||
- | * Création des répertoires d' | + | * <del>Création des répertoires d' |
- | * on utilise les liens symboliques **/data** point sur **/ | + | * <del>on utilise les liens symboliques **/data** point sur **/ |
- | * **/ | + | * <del>**/ |
- | * **/ | + | * <del>**/ |
- | * Ajout d'un utilisateur de réplication | + | * <del>Ajout d'un utilisateur de réplication</ |
- | * CREATE ROLE repli REPLICATION ; | + | * <del>CREATE ROLE repli REPLICATION ;</ |
< | < | ||
- | création d'un mot de passe et mise en place d'un fichier .pgpass ou du trust ? | + | <del>création d'un mot de passe et mise en place d'un fichier .pgpass ou du trust ?</ |
+ | Mot de passe et .pgpass (rjuju) | ||
</ | </ | ||
- | * Modification de la configuration postgres sur celeste : | + | * <del>Modification de la configuration postgres sur celeste :</ |
< | < | ||
archive_mode = on | archive_mode = on | ||
- | archive_command = 'rsync -a %f postgres@tantor.postgresql.fr:/ | + | archive_command = 'rsync -a %p postgres@tantor.postgresql.fr:/ |
wal_level = hot_standby # au cas où on veuille passer en hot_standby | wal_level = hot_standby # au cas où on veuille passer en hot_standby | ||
checkpoint_completion_target = 0.9 | checkpoint_completion_target = 0.9 | ||
Ligne 107: | Ligne 108: | ||
</ | </ | ||
- | * Modification de la configuration postgres sur tantor : | + | * <del>Modification de la configuration postgres sur tantor :</ |
< | < | ||
archive_mode = on | archive_mode = on | ||
- | archive_command = 'rsync -a %f postgres@celeste.postgresql.fr:/ | + | archive_command = 'rsync -a %p postgres@celeste.postgresql.fr:/ |
wal_level = hot_standby # au cas où on veuille passer en hot_standby | wal_level = hot_standby # au cas où on veuille passer en hot_standby | ||
checkpoint_completion_target = 0.9 | checkpoint_completion_target = 0.9 | ||
Ligne 129: | Ligne 130: | ||
</ | </ | ||
- | * Modification du pg_hba.conf sur celeste et tantor : | + | * <del>Modification du pg_hba.conf sur celeste et tantor :</ |
< | < | ||
#connexions locales | #connexions locales | ||
Ligne 151: | Ligne 152: | ||
</ | </ | ||
- | * Création du recovery.conf sur tantor : | + | * <del>Création du recovery.conf sur tantor :</ |
< | < | ||
standby_mode = on | standby_mode = on | ||
primary_conninfo = ' | primary_conninfo = ' | ||
- | restore_command = 'cp / | + | restore_command = 'cp / |
# pas de cleanup comme on a une sauvegarde pitr, ils seront purgés par le cron PITR | # pas de cleanup comme on a une sauvegarde pitr, ils seront purgés par le cron PITR | ||
# pas de trigger file | # pas de trigger file | ||
Ligne 209: | Ligne 210: | ||
==== Mise en place de la sauvegarde PITR ==== | ==== Mise en place de la sauvegarde PITR ==== | ||
- | * Script de sauvegarde PITR sur celeste: | + | * <del>Script de sauvegarde PITR sur celeste:</ |
<code bash> | <code bash> | ||
- | SRVSRC="celeste" | + | # |
- | SRVDEST="tantor" | + | SRVDEST="tantor.postgresql.fr" |
+ | VERSION="9.3" | ||
+ | INST=" | ||
SNAPNAME=" | SNAPNAME=" | ||
- | PGDIR=" | + | PGDIR="/ |
- | DESTDIR="/ | + | DESTDIR="/ |
rc=0 | rc=0 | ||
- | psql -c " | + | psql --cluster ${VERSION}/ |
if [ $? -ne 0 ]; then | if [ $? -ne 0 ]; then | ||
echo " | echo " | ||
Ligne 226: | Ligne 229: | ||
fi | fi | ||
- | rsync -avp ${PGDIR} postgres@${SRVDEST}: | + | rsync -avp --exclude " |
if [ $? -ne 0 ]; then | if [ $? -ne 0 ]; then | ||
echo "Error during rsync of ${PGDIR} to postgres@${SRVDEST}: | echo "Error during rsync of ${PGDIR} to postgres@${SRVDEST}: | ||
Ligne 232: | Ligne 235: | ||
fi | fi | ||
- | psql -c " | + | psql --cluster ${VERSION}/ |
if [ $? -ne 0 ]; then | if [ $? -ne 0 ]; then | ||
echo " | echo " | ||
Ligne 239: | Ligne 242: | ||
exit ${rc} | exit ${rc} | ||
+ | |||
</ | </ | ||
- | * Script de sauvegarde PITR sur tantor (en cas de switchover) : | + | * <del>Script de sauvegarde PITR sur tantor (en cas de switchover) :</ |
<code bash> | <code bash> | ||
- | SRVSRC="tantor" | + | # |
- | SRVDEST="celeste" | + | SRVDEST="celeste.postgresql.fr" |
+ | INST="main" | ||
SNAPNAME=" | SNAPNAME=" | ||
- | PGDIR=" | + | PGDIR="/ |
- | DESTDIR="/ | + | DESTDIR="/ |
rc=0 | rc=0 | ||
- | psql -c " | + | psql --cluster ${VERSION}/ |
if [ $? -ne 0 ]; then | if [ $? -ne 0 ]; then | ||
echo " | echo " | ||
Ligne 258: | Ligne 263: | ||
fi | fi | ||
- | rsync -avp ${PGDIR} postgres@${SRVDEST}: | + | rsync -avp --exclude " |
if [ $? -ne 0 ]; then | if [ $? -ne 0 ]; then | ||
echo "Error during rsync of ${PGDIR} to postgres@${SRVDEST}: | echo "Error during rsync of ${PGDIR} to postgres@${SRVDEST}: | ||
Ligne 264: | Ligne 269: | ||
fi | fi | ||
- | psql -c " | + | psql --cluster ${VERSION}/ |
if [ $? -ne 0 ]; then | if [ $? -ne 0 ]; then | ||
echo " | echo " | ||
Ligne 273: | Ligne 278: | ||
</ | </ | ||
- | * Script de purge PITR (snapshot + WAL) sur celeste (en cas de switchover) : | + | * <del>Script de purge PITR (snapshot + WAL) sur celeste (en cas de switchover) |
- | + | ||
- | <code bash> | + | |
- | RETENTION=5 | + | |
- | # Suppression des snapshots de plus de $RETENTION jours | + | |
- | find /data/ | + | |
- | + | ||
- | # Suppression des WAL de plus de $RETENTION jours | + | |
- | find /data/xlog -type f -mtime +${RETENTION} -print -delete | + | |
- | </code> | + | |
- | + | ||
- | * Script de purge PITR (snapshot + WAL) sur tantor : | + | |
<code bash> | <code bash> | ||
+ | #!/bin/bash | ||
RETENTION=5 | RETENTION=5 | ||
# Suppression des snapshots de plus de $RETENTION jours | # Suppression des snapshots de plus de $RETENTION jours | ||
- | find / | + | find / |
# Suppression des WAL de plus de $RETENTION jours | # Suppression des WAL de plus de $RETENTION jours | ||
- | find /data/xlog -type f -mtime +${RETENTION} -print -delete | + | find /data/ |
</ | </ | ||
Ligne 298: | Ligne 293: | ||
==== pgBadger + pgCluu ==== | ==== pgBadger + pgCluu ==== | ||
- | * Installation de sysstat | + | * <del>Installation de sysstat</ |
sudo apt-get install sysstat | sudo apt-get install sysstat |