Re : Plication Postgresql ( Lab 9.3 )

Ya kembali lagi dengan saya, kali ini saya akan menjelaskan cara menciptakan data base replication pada postresql, jadi pada lab kali ini kita akan melanjutkan dari lab yang sebelumnya,



Apasih Data Base Replication ?

data base replcation ialah sebuah teknologi yang menyalin data dari satu server data base ke server database satunya, jadi menyerupai ini contohnya, bila kita menciptakan sebuah data base di server A maka secara eksklusif seolah olah kita juga telah menciptakan data base di server B, istilahnya menyerupai cloning gitu...

untuk topologinya kita membutuhkan 2 server menyerupai yang saya sebutkan, jadi sanggup digambarkan menyerupai berikut

Konfigurasi 

1. pertama tama kita harus setting dns, dengan menambahkan node1 pada zona forward dan reverse untuk mengkonversi dari server database replication nya atau sanggup dibilang slave menjadi sebuah domain 

2. kemudian buka postgresql.conf yang terletak di var/opt/rh/rh-postgresql95/lib/pgsql/data

nano /vat/opt/rh/rh-postgresql95/lib/pgsql/data/postgresql.conf


kemudian uncomment pada wal_level kemudian ubah menjadi hot_standby,uncomment juga pada synchronous_commit dan menjadi local 
  • WAL ( Write-Ahead Logging ) adalah sebuah metode untuk memastikan sebuah integritas data, dalam penggunaanya dengan semua modifikasi yang dilakukan pada system akan tercatat pada log sebelum modifikasi tersebut digunakan. pada lab ini wal_level yang saya gunakan dalah hot_standby, dengan diaturnya dengan level ini semua info akan tercatat di arsip ditambah dengan beberapa info yang diperlukan. 
  • Synchronous_commit adalah sebuah opsi atau pilihan yang memungkinkan pertukaran data pada server database dengan replikanya menjadi lebih cepat, disini saya mengaturnya menjadi local karena sinkornisasi yang saya buat ialah untuk master dan slave

uncomment pada bab archive_mode dan ubah valuenya menjadi on untuk mengaktifkan, pada bab archive_command lakukan juga uncomment dan isikan sebagai berikut 

' cp xp /var/opt/rh/rh-postgresql95/lib/pgsql/arcive/%f ' 

scipt diatas berfungsi untuk melaksanakan pengarsipan pada database server kita 


kemduian cari lagi syntak max_wal_senders lakukan uncomment dan isikan valuenya menjadi 2 iini berfungsi untuk memilih jumlah maksimum dari proses walsender, lakukan juga uncomment pada wal_keep_segments dan ubah valuenya menjadi 10 ini bertujuan untuk memilih besar logfile segment dalam satuan MB 


sesudah itu cari lagi syntak synchronous_standby_names lakukan uncomment dan berikan nama server replication anda sesuai dengan yang anda inginkan, bila sudah kemudian save 


3. kini kita harus mengedit file pga_hba.conf yang terletak di var/opt/rh/rh-postgresql95/lib/pgsql/data/

nano var/opt/rh/rh-postgresql95/lib/pgsql/data/pga_hba.conf


kemdian tambahkan pada bab bawah menjadi menyerupai berikut 


skrip ini mendefinisikan 3 host yang dipakai yaitu host pertama yang merupakan host local dengan alamat ip loopback, kemudian host selanjutnya merupakan server database dengan ip 192.168.88.2/32 dan host satunya ialah server database replica dengan ip address 192.168.88.3/32, jika sudah kemudian save 

4. lakukan restart layanan postgresql 

systemctl restart rh-postgresql95-postgresql 


5. selanjutnya masuk ke shell postgresql dengan command

su - postgres 


dan buat user untuk replication

createuser --replication -P replica 


Konfigurasi Node 

 1. pertama kita harus mengentikan layanan postgresql pada node kita terlebih dahulu dengan command 

systemctl stop rh-postgresql95-postgresql


2. kemudian kita harus menghapus semua file yang berada di direktori /var/opt/rh/rh-postgresql95/lib/pgsql/data/

rm -rf /var/opt/rh-rh-postgresql95/pgsql/data/*


3. masuk kedalam shell postgres dan lakukan backup dari server data base kita dengan command 

pg_basebackup -h 'ipserverdb' -U replica -D /var/opt/rh/rh-postgresql95/lib/pgsql/data/ -P --xlog 

kemudian isikan password user replica yang sebelumnya telah kita buat  


  • pg_basebackup, untuk mengabil backup data yang berada pada Postgresql 
  • -h 192.168.88.2, untuk mendefinisikan host dari server database 
  • -U replica, untuk mendefinisikan user yang dipakai yaitu replica 
  • -D /var/opt/rh/rh-postgresql95/lib/pgsql/data/, untuk mendefinisikan dimana letak data yang akan dibackup 
  • -P, untuk mendefinisikan password
  • --xlog untuk mencatat proses perpindahan data yang berlangsung 


4. kemudian buka postgresql.conf 

nano /var/opt/rh/rh-postgresql95/lib/pgsql/data/postgresql.conf 


nyalakan mode hot_standby dengan uncommnet dan mengubah valuenya menjadi on 


5. copy file recovery.conf.sample dan ubah menjadi recovery.conf 

cp /opt/rh/rh-postgresql95/root/usr/share/pgsql/recovery.conf.sample /var/opt/rh/rh-postgresql95/lib/pgsql/data/recovery.conf  


6. sesudah itu edit file recovery.conf 

nano /var/opt/rh/rh-postgresql95/lib/pgsql/data/recovery.conf 

cari syntak restore_command kemudian uncomment, pada valuenya isikan sperti berikut 

'scp 192.168.88.2:/var/opt/rh/rh-postgresql95/lib/pgsql/archive/&f &p

command ini berfungsi untuk mengambil segmen file wal yang akan di arsipkan, dicomamnd ini memakai scp (secure copy) yang diikuti dengan ip beserta direktory disimpannya file yang telah di copy 


7. kemudian cari syntak standby_mode lakukan uncomment dan ubah valuenya menjadi on untuk mengaktifkan 


8. sesudah itu cari lagi syntak primary_conninfo lakukan uncomment dan isikan valuenya menyerupai berikut 

host='ipserverdb' port=5432 user=replica password='password' application_name=re-node1

  • host=192.168.88.2, alamat ip dari server database master
  • port-5432, port default yang dipakai oleh postgresql
  • user=replica, user yang dipakai yaitu replica
  • password=anjay, password dari user replica 
  • application_name=re-node1, nama dari server replication yang sebelumnya telah kita setting
bila sudah kemudian save

9. lakukan start layanan postgresql 


Check Server Master DB

1. nah untuk mengeceknya masuk ke shell postgres 

su - postgres

kemudian gunakan command 

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


nah sanggup kita lihat bahwa server slave kita, sudah tersinkronisasi dengan baik dengan server master database kita 

Verifikasi 

1. untuk verifikasi lakukan jalan masuk server master, memakai phppgadmin melalui browser. kemudian login, sebelumnya anda harus mempunyai user terlebih dahulu, bila belum sanggup dilihat dipostingan saya yang sebelumnya 


2. kemdian buat schema gres dengan cara klik database > Schedule > Schemas, Create Schema


isikan nama schema, kemudian klik create 

nah sanggup kita lihat pada gambar dibawah ini terdapat schema gres pada server master kita 



3. selanjutnya login ke server slave dengan cara yang sama yaotu melalui phppgadmin


dan taraaaaaa.... schema yang telah kita buat di server master, juga tersedia di dalam server replication kita 


nah sekian tutorial kali ini mengenai reolication, hingga jumpa lagi dan biar bermanfaat...

0 Response to "Re : Plication Postgresql ( Lab 9.3 )"

Posting Komentar