Synbak, cara mudah untuk backup

Dengan synbak kita dapat mem-backup file atau database dengan mudah baik backup lokal dan remote. Konfigurasinya sederhana sehingga memudahkan kita untuk menggunakan synbak sesuai kebutuhan, dimana synbak menngunakan satu file konfigurasi untuk masing-masing metode yang digunakan.

Synbak menggunakan beberapa metode untuk menjalankan backup, antara lain:
- RSync over ssh, rsync daemon, smb dan cifs protocols
- Tar archives (tar, tar.gz dan tar.bz2)
- Tape devices
- LDAP databases
- MySQL databases
- Oracle databases
- CD-RW/DVD-RW

Kehebatan lainnya, setelah mem-backup synbak akan menghasilkan report berupa :
- email
- html
- RSS feeds

Dengan report tersebut memudahkan kita untuk memonitoring backup sehingga jika ada kegagalan dalam proses backup kita dapat segera mengetahuinya. Proses instalasi synbak juga mudah dan tidak memakan waktu yang lama. Berikut ini akan saya contohkan instalsi synbak dan konfigurasinya.

Instalasi synbak
Sebelumnya kita harus mengunduh source synbak di : http://www.initzero.it/portal/en/products/opensource/synbak/download

masuklah ke direktori hasil download source synbak dan jangan lupa untuk login sebagai root. berikut ini perintah yang dijalankan di konsole :

# tar zxvf synbak-1.0.11.tar.gz -C /usr/src/

masuklah ke direktori hasil extrak synbak dan kemudian di install

# cd /usr/src/synbak-1.0.11/
# ./configure
# make
# make install

Seperti saya katakan diatas bahwa synbak memerlukan satu file konfigurasi untuk masing-masing metode(laserdisc, ldap, mysql, oracle, rsync, tape, tar) backupnya, misal kita menjalankan synbak sebagi user admin(home direktorinya /home/admin) untuk membackup sistem/komputer dengan nama webserver menggunakan metode tar maka synbak akan memabaca file konfigurasi :

/home/admin/.synbak/tar/webserver.conf

jika dengan metode rsync :

/home/admin/.synbak/rsync/webserver.conf

jika dengan metode mysql( untuk backup database MySQL) :

/home/admin/.synbak/mysql/webserver.conf

Jika kita menjalankannya sebagai user root dengan metode rsync untuk membackup sistem/komputer dengan nama www maka synbak akan menggunkana file konfigurasi:

/root/.synbak/rsync/www.conf

Pada saat instalasi synbak tidak membuat file konfigurasi dan direktori untuk masing metode, kita bisa membuatnya secara manual atau dengan menjalankan synbak untuk memacingnya karena ketika dijalankan synbak akan memeriksa apakah direktori dan file konfigurasi sudah ada jika tidak ada maka synbak akan membuatkan direktori tersebut berserta file konfigurasi contoh(~/.synbak/example.conf). Berikut saya contohkan untuk backup serderhana menggunakan beberapa metode baik untuk baukup lokal maupun remote backup.

Sebagai contoh disini kita login sebagi user root, sebagai persiapannya kita terlebih dahulu membuat direktori yang diperlukan untuk tempat file konfigurasi.

# cd ~
# mkdir .synbak
# cd .synbak
# pwd
/root/.synbak
# mkdir tar mysql rsync

Menggunakan metode tar
sistem/komputer lokal yang akan kita backup di beri nama : lok_etc_squid
dengan direktori yang akan dibackup : /etc/squid
direktori penampung hasil backup : /backup/squid-conf
metode : tar
report : html

maka harus dibuat file configurasi lok_etc_squid.conf di direktori /root/.synbak/tar/, agar lebih mempermudah kita dapat menggunakan contoh file konfigurasi bawaan synbak sebagai acuan ([direktori-hasil-ekstrak-synbak]/examples/example.conf).

# mkdir -p /backup/squid-conf <-- membuat direktori untuk menampung hasil backup
# cd ~/.synbak/tar
# cp /usr/src/synbak-1.0.11/examples/example.conf lok_etc_squid.conf
# pico lok_etc_squid.conf

kemudian editlah file tersebut dan sesuaikan seperti pada baris-baris di bawah ini:

#@@ mandatory backup fields
backup_source = /etc/squid
backup_destination = /backup/squid

#@@ email output reporting
#report_email = no
#report_email_on_errors = yes
#report_email_rcpt = support@initzero.it

#@@ html/rss output reporting
report_html = yes
report_html_on_errors = yes
report_html_destination = /var/www/html/admin/log/backup
report_html_uri = http://localhost/admin/log/backup
report_html_logo = yes
report_html_logo_image =
report_html_logo_link = http://www.initzero.it

Perhatian:
pastikan direktori untuk report_html_destination(/var/www/html/admin/log/backup) ada dan user yang menjalankan synbak mempunyai akses untuk menulis ke direktori tersebut.

setelah disimpan kita sudah bisa melakukan backup dengan perintah :

# synbak -s lok_etc_squid -m tar -M gz

Catatan:
maksud perintah diatas adalah memrintahkan synbak untuk membackup sistem yang bernama lok_etc_squid(-slok_etc_squid) dengan metode tar(-m tar) dan dengan hasil backup yang di kompres(-M gz) dimana hasil dari backup akan berupa file dengan ekstensi tar.gz. Jika kita ingin hasil dari backup berupa file kompresi bz2 maka bisa menggunkan opsi -M bz2. Untuk metode tar terdapat 3 opsi yaitu tar, gz dan bz2.
Ketika dalam proses backup synbak juga menghasilkan report yang ditampilkan pada layar sehingga jika ada error/kegagalan dapat diketahui.

Menggunakan metode rsync untuk remote backup via ssh
Misal kita ingin membackup direktori /var/www/htdoc di komputer lain dengan IP Address 192.168.10.7 dan sistem/komputer tersebut kita beri nama www, file hasil backup akan ditempatkan di direktory /backup/www pada komputer kita.
Karena metode yang digunakan rsync via ssh maka kita harus konfigure ssh server dan client agar autentifikasinya menggunakan key dan pastikan user yang digunakan mempunyai hak akses terhadap data yang akan di backup. Disini tidak akan dijelaskan bagaimana mengkonfigur autentifikasinya ssh dengan key, tutorial untuk membuat autentifikasi ssh dengan key dapat anda lihat di sini.

Setelah konfigurasi ssh dengan autentifikasi key sudah dibuat selanjutnya membuat file konfigurasinya, berikut langkah-langkahnya :

# mkdir /backup/www
# cd ~/.synbak/rsync
# cp /usr/src/synbak-1.0.11/examples/example.conf www.conf

kemudian editlah file tersebut dan sesuaikan seperti pada baris-baris di bawah ini:

#@@ mandatory backup fields
backup_source = /var/www/htdocs
backup_destination = /backup/www

#@@ remote backup
backup_remote_uri = ssh://root@192.168.10.7

#@@ email output reporting
#report_email = no
#report_email_on_errors = yes
#report_email_rcpt = support@initzero.it

#@@ html/rss output reporting
report_html = yes
report_html_on_errors = yes
report_html_destination = /var/www/html/admin/log/backup
report_html_uri = http://localhost/admin/log/backup
report_html_logo = yes
report_html_logo_image =
report_html_logo_link = http://www.initzero.it

setelah disimpan kita sudah bisa melakukan backup dengan perintah :

# synbak -s www -m rsync

Membackup database MySQL
Synbak bisa digunakan untuk membackup database lokal maupun database di mesin lain, tetapi jika dilakukan untuk membackup database secara remote tentunya akan membahayakan apalagi jika koneksinya melalui jaringan publik(internet) karena ada kemungkinan di sadap.
Berikut contoh backup database MySQL dengan menggunakan metode mysql, misal database yang akan di backup berada di mesin lokal yang diberi nama lok_mysql dan hasil backup di tempatkan di direktori /backup/mysql.

# mkdir /backup/mysql
# cd ~/.synbak/mysql
# cp /usr/src/synbak-1.0.11/examples/example.conf lok_mysql.conf

kemudian editlah file tersebut dan sesuaikan seperti pada baris-baris di bawah ini:

#@@ mandatory backup fields
#backup_source = /
backup_destination = /backup/mysql

#@@ remote backup
backup_remote_uri = mysql://user:password@localhost

#@@ email output reporting
#report_email = no
#report_email_on_errors = yes
#report_email_rcpt = support@initzero.it

#@@ html/rss output reporting
report_html = yes
report_html_on_errors = yes
report_html_destination = /var/www/html/admin/log/backup
report_html_uri = http://localhost/admin/log/backup
report_html_logo = yes
report_html_logo_image =
report_html_logo_link = http://www.initzero.it

Perhatian:
pada baris backup_remote_uri = mysql://user:password@localhost, sesuaikan dengan user dan password database MySQL.

setelah disimpan kita sudah bisa melakukan backup dengan perintah :

# synbak -s lok_mysql -m mysql

Hasil backup dengan metode diatas berupa mysql dump yang dikompress dengan format bzip2.

Penjadwalan backup
Jika ingin menjalankan backup secara berkala kita dapat menggunakan cron sehingga kita tidak perlu report menjalankan setiap peride tertentu. Untuk melakukan penjadwalan dengan cron dapat anda lihat di sini. http://www.scrounge.org/linux/cron.html


Referensi
http://www.initzero.it/products/opensource/synbak/
http://www.linux.com/feature/120062

Related Posts by Categories



Relatedpost Widget by Hoctro | Jack Book