Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

PalvelinPostgreSQL:n versioTodettu pvmTila
Siilo910.607.9.2017(warning) Ei vielä luotu.
Neula9.5711.9.2017(error) Odottaa sitä, että Nuolen ja Monokkelin varmuuskopiointi ensin pyörii onnistuneesti pari päivää. Kompassin tietokantaan en uskalla vielä Barmania pultata saamatta ensin halvemmista tietokannoista kokemusta.(tick) Varmuuskopiointi toiminnassa.
Nuoli9.57.9.2017(tick) Varmuuskopiointi toiminnassa.
Monokkeli9.57.9.2017(tick) Varmuuskopiointi toiminnassa.
Kurikka9.17.9.2017(error) Ei Barmanin piirissä. Siellä on niin vanha PostgreSQL, että sitä ei yhtä kätevästi saa pultattua kiinni Barmaniin. Täytyy tyytyä jokaöiseen sqldumppiin.

...

Code Block
languagebash
themeMidnight
titlepiilossa
sudo -u barman barman check siilo								# onko kaikki hyvin?
sudo -u barman barman backup siilo								# tee base-varmuuskopio
sudo -u barman barman list-backup siilo							# listaa varmuuskopiot
sudo -u barman barman recover siilo 20170902T162930 /tmp/foo 	# palauta varmuuskopio annettuun sijaintiin

Siilo räjähti – Paniikkipalautus Nuolelle

Case: Siilo katosi maan päältä. Piilo toimii, varmuuskopiot tallessa. Hoida tietokannan ajantasaisin tila vaan johonkin jossa conikuvat.fi pääsee käsiksi siihen.

Järjestä barman@piilolle SSH-pääsy Nuolelle esim. omalle käyttäjätunnuksellesi (oma avain barman@piilon authorized_keysiin ja ssh -A barman@piilo).

Code Block
languagebash
barman@piilo $ barman recover siilo 20181025T093714 --remote-ssh-command 'ssh japsu@nuoli.tracon.fi' /home/japsu/main
root@nuoli # curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
root@nuoli # cat > /etc/apt/sources.list/pgdg.list << EOF
deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main
EOF
root@nuoli # apt update && apt install postgresql-11
root@nuoli # rm -rf /var/lib/postgresql/11/main
root@nuoli # mv /home/japsu/main /var/lib/postgresql/11/
root@nuoli # chown -R postgres:postgres /var/lib/postgresql/11/main
root@nuoli # cat >> /etc/postgresql/11/main/pg_hba.conf << EOF

# docker bridge
host    all             all             172.17.0.1/16           md5
EOF
root@nuoli # cat >> /etc/postgresql/11/main/postgresql.conf << EOF
listen_address = '*'
root@nuoli # sudo ufw allow from 172.17.0.1/16 to any port 5433
root@nuoli # service postgresql start

Nyt voikin sit muuttaa Ansiblesta esim. edegal_postgresql_hostname = nuoli.tracon.fi:5433 ja deplata.

Tiettyyn ajanhetkeen palaaminen varmuuskopiosta

...

Code Block
languagebash
themeMidnight
titlepiilossa
sudo -u barman barman check siilo						# näyttää parit FAILEDit
sudo -u barman barman receive-wal --create-slot siilo
sudo -u barman barman receive-wal --reset siilo
sudo -u barman barman check siilo						# saattaa kestää muutaman sekunnin kunnes FAILEDit ovat vaihtuneet OK:ksi
sudo -u barman barman backup siilo

pgAdmin4-hallintakäyttöliittymä

Tietokantojen hallintaan on asennettu pgAdmin4-käyttöliittymä seuraaviin osoitteisiin:

Pääsääntöisesti tietyllä koneella pyörivästä pgAdminista pääsee käsiksi samalla koneella pyörivään PostgreSQL:ään. Poikkeuksena Nuoli, jolta pääsee lisäksi Kurikalle.

Käyttäjätunnuksen ja salasanan löydät Ansible Vaultista (group_vars/all/vault) tai voit kysyä sen Japsulta.

...

PostgreSQL:n päivitys

Oletus: vanha versio 10, uusi versio 11, päivitettävä palvelin Siilo, varmuuskopiointipalvelin Piilo

Code Block
languagebash
titlepiilossa
# eka on hyvä käydä ottaas täys varmuuskopio piilossa vanhalla versiolla
sudo -u barman barman backup siilo
 
# ja asentaas uuden version clientit ku vanhat ei oo yhteensopivia uuden serverin kanssa
sudo apt update
sudo apt upgrade
sudo apt install postgresql-client-11
Code Block
languagebash
titlesiilossa
# ÄLÄ poista vanhaa versiota palvelimesta vielä tässä vaiheessa! Sen binäärejä tarvitaan rullaamaan kanna uuteen versioon.
sudo apt update
sudo apt upgrade
sudo apt install postgresql-11
 
# asennus loi tyhjän tietokannan, joka on tiellä. varmistathan että tässä on UUDEN version numero, ei vanhan
sudo pg_dropcluster 11 main
 
# ja sit me päivitetään
sudo pg_upgradecluster 10 main
 
# tässä vaiheessa on hyvä testaa että esim. https://conikuvat.fi toimaa
# sit voiki poistaa vanhan. varmista että tässä on VANHAN version numero, ei uuden
sudo pg_dropcluster 10 main
sudo apt purge postgresql-10
Code Block
languagebash
titlepiilossa
# Sit pitäis vielä suostutella Barman jatkamaan varmuuskopiointia uudesta versiosta. Höhö lol mitenhän se tehdään.
sudo -iu barman
cd /var/lib/barman
mv siilo siilo-10
barman cron
barman switch-wal siilo
 
# Sit iteroidaan kunnes kaikki FAILEDit muuttuu OK:ks
barman status siilo
 
# Otetaan täys backup uudesta versiosta
barman backup siilo
 
# Lopuks hyvä tarkastaa vielä kaikki
for cmd in check status replication-status; do barman $cmd siilo; done