">

PostgreSQL Cluster Kurulumu

PostgreSQL Cluster Kurulumu

Merhaba,

PostgreSQL Cluster Kurulumu için aşağıdaki adımlar izlenir;

  • sudo apt-get update
  • sudo apt-get install postgresql-9.6
  • sudo passwd postgres

--ssh ile şifresiz geçiş için

  •  ssh-keygen

 

  • ssh-copy-id Karşımakina_ips

Master Server konfigurasyonu:

Postgres user'i ile çalıştırılır.(postgres user'ı postgreSQL kurulumunda otomatik olarak geliyor.)

 

  • psql -c "CREATE USER rep REPLICATION LOGIN CONNECTION LIMIT 1 ENCRYPTED PASSWORD 'yourpassword';"

Cd /etc/postgresql/9.6/main


aşağıdaki dosya konfigure edilir.


nano pg_hba.conf


--satır sonuna aşağıdaki kısım yazılır

host    replication     rep     IP_address_of_slave/32   md5

 

Sonrasında aşağıdaki dosya konfigure edilir.


nano postgresql.conf

listen_addresses = '*'
wal_level = 'hot_standby'
archive_mode = on
archive_command = 'cd .'
max_wal_senders = 1
hot_standby = on

 

Sonrasında master servisi restart edilir.

 

 

service postgresql restart

 

Slave Server konfigurasyonu:

 

service postgresql stop

 

cd /etc/postgresql/9.6/main

 

nano pg_hba.conf

host    replication     rep     IP_address_of_master/32  md5

 

nano postgresql.conf

 

listen_addresses = '*'
wal_level = 'hot_standby'
archive_mode = on
archive_command = 'cd .'
max_wal_senders = 1
hot_standby = on

 

Cd /var/lib/postgresql/9.6

 

mv main main-orijinal

 

pg_basebackup -h 192.168.1.52 -D /var/lib/postgresql/9.6/main -U rep -v -P

 

cd /var/lib/postgresql/9.6/main/

 

vim recovery.conf

 

Dosyanın içerisine aşağıdaki kısım yapıştırılır.

 

------------------------------------------------------------------------

standby_mode = 'on'

primary_conninfo = 'host=192.168.1.52 port=5432 user=rep password=ReplicA2018'

restore_command = 'cp .'

trigger_file = '/tmp/postgresql.trigger.5432'

 

------------------------------------------------------------------------

 

 

service postgresql restart

 

 

TEST

 

Master server'a login olunur.

 

su - postgres

psql -c "select application_name, state, sync_priority, sync_state from pg_stat_replication;"

 

psql -x -c "select * from pg_stat_replication;"

 

su - postgres

psql

 

CREATE TABLE rep_test (hakase varchar(100));

INSERT INTO rep_test VALUES ('enginyilmaz.gen.tr');

INSERT INTO rep_test VALUES ('This is from Master');

 

INSERT INTO rep_test VALUES ('pg replication by hakase-labs');

 

 

Sonrasında Slave server'a logn olunur.

 

su - postgres

Psql

 

 

 

select * from rep_test;

 

Umarım faydalı olmuştur.

 

Yorumlar

Henüz yorum yapılmadı.

Yorum Yapın