- “Live” Backup Untuk Zimbra Open Source Edition
- Category: Free/Open Source,Teknoblogia,Tips
Tags: Script, Zimbra Salah satu problem pada Zimbra Open Source Edition adalah tidak adanya fitur backup. Fitur backup hanya dimiliki pada Zimbra Network Edition.
Beberapa hari yang lalu, saya sempat diskusi dengan salah satu kawan tentang live backup untuk Zimbra Open Source Edition. Dan dia memberikan beberapa URL sebagai referensi untuk saya baca. Yang pertama referensinya adalah tentang ZCS to ZCS Migrations. Dan referensi yang kedua adalah sebuah script perl untuk melakukan backup semua account di zimbra.
Berbekal dua referensi itu saya membuat bash script untuk melakukan backup account user di zimbra. Script ini akan melakukan backup account untuk semua user. Selain itu proses backup juga hanya dilakukan di mesin yang terinstalasi zimbra. Oh, hampir lupa, untuk restore data bisa dilakukan dengan membuat sebuah account kosong dan kemudian berkas tgz ini di import melalui menu Preferences > Export/Import di zimbra.
Keuntungan menggunakan backup dengan metode seperti ini adalah tidak memerlukan proses stop/start pada zimbra. Dengan kata lain zimbra masih berjalan dengan normal dan semua layanan masih bisa diakses dengan normal dan sementara itu proses backup tetap berjalan. Inilah yang saya maksud dengan “Live” backup
.
Script ini rencananya nanti akan saya tambahkan fitur rsync melalui ssh, penambahan fitur rsync dan ssh di inspirasi dari wiki zimbra mengenai backup.
Ide besarnya adalah sebagai berikut:
- Backup masing-masing account di zimbra dalam format tgz. Misal di backup di /tmp/zimbra (anggap saja ini dilakukan di server A)
- Ekstrak masing-masing tgz di dalam folder /tmp/zimbra tersebut ke sebuah direktori tertentu misal ke /tmp/ekstrak
- Lakukan sinkronisasi /tmp/ekstrak ke server lainnya (misalnya di server B di direktori /tmp/newbackup) dengan menggunakan rsync.
- Selanjutnya bash script ini akan melakukan proses kompresi masing-masing account dalam format tgz di server B, atau bisa saja ada script tersendiri di server B yang akan melakukan tahapan ini.
- Kompress semua account format tgz yang ada di /tmp/newbackup (Server B) ke dalam satu kompresi besar misalkan dalam format tar.bz2 dengan label tanggal, bulan dan tahun.
- Move/copy berkas tar.bz2 tersebut ke tape drive atau ke hard disk eksternal.
- Hapus semua berkas-berkas yang sudah tidak dibutuhkan, namun jangan hapus direktori /tmp/newbackup yang ada di server B, karena nanti direktori ini akan disinkronisasi lagi dengan direktori /tmp/ekstrak yang ada di server A.
- Aktifkan crontab untuk script ini agar melakukan proses secara berkala.
Sebenarnya proses nomor 2, 3, 4 dan 5 bisa di-bypass, jadi dari nomor 1 bisa langsung loncat ke proses nomor 5. Jika langsung di-bypass maka proses kompresi di nomor 5 akan langsung dilakukan di server A. Setelah itu tinggal ditransfer ke server lain (bisa melalui scp, rsync ataupun metode lainnya). Salah satu kelemahan jika di-bypass maka pada saat proses transfer data akan berjalan lama jika file yang di backup berukuran besar.Buat yang mau memodifikasi script ini silakan saja, tapi jangan lupa dishare lagi ya.
- February 11, 2010 @ 6:12 pm
30 Comments
On February 11, 2010 7:56 pm Mozilla Firefox 3.5.3 Linux
Thanks boss, sudah saya share ke milis openSUSE Indonesia dan Zimbra Indonesia
On February 12, 2010 7:49 am Mozilla Firefox 3.5.6 Fedora Linux
#1: vavai. yup. bantuin di modifikasi dong scriptnya, biar bisa lebih lengkap
. saya lagi ngurusin sesuatu nih, jadi belum sempet ngoprek scriptnya lagi. btw, saya barusan request join ke milis id-zimbra. di approve ya.
On February 12, 2010 12:30 pm Mozilla Firefox 3.6 Windows XP
opo toh ikie kang?
*rak mudeng, dulinan twitter n fb maneh*
On February 13, 2010 11:47 pm Google Chrome 4.0.253.0 Linux
mbuh pe. pas nulis ndasku pas ngelu. saiki yo lali
On February 15, 2010 7:11 am Google Chrome 5.0.309.0 Linux
Salam kenal…Thanks buat sharingnya…nice artikel.
On February 22, 2010 11:31 am Google Chrome 4.0.249.89 Windows XP
Bookmarked. Nanti kalo mau ngoprek tinggal buka.
On February 26, 2010 8:36 am Mozilla Firefox 3.5.8 Windows XP
sama, nggak mudeng, kebanyakan fesbukan, tapi cool themenya, keren taglinenya: Imagination is more important than knowledge, keliatannya harus sering sering mampir sini nih
On March 10, 2010 11:45 am Mozilla Firefox 3.5.8 SuSE Linux
Barusan saya coba, kalau pakai multi domain, ganti baris ini :
NAME=
echo $ACCOUNT | awk -F@ '{print $1}'
;jadi seperti ini :
NAME=
echo $ACCOUNT
;Karena kalau tidak, nama account yang sama dibeda domain akan tertimpa.
On March 10, 2010 3:29 pm Mozilla Firefox 3.5.4 Fedora Linux
#8: ah, thanks vai atas koreksinya. kemarin memang dicoba hanya untuk single domain.
On March 19, 2010 7:37 am Mozilla Firefox 3.5.8 Fedora Linux
Thanks Berat Boss… sangat berguna bagi instansi kami yang memakai Zimbra CS OpenSource…
On March 20, 2010 8:09 am Google Chrome 5.0.355.0 Linux
#10: can masagi, si vavai udah memodifikasi script ini untuk proses migrasi hingga restore. coba kunjungi blognya dia.
On April 15, 2010 11:18 am Mozilla Firefox 3.5.9 Fedora Linux
Boss.. Oom Vavai mah pake OpenSuse he he
Sayah pakai CentOS jadi rada susah penyesuaiannya… latas pas implementasi ada error sbb:
“ERROR: service.FAILURE (system failure: GET failed, status=501 not implemented yet)”
Kenapa ya?
On April 24, 2010 3:43 pm Mozilla Firefox 3.0b5 Linux
zimbra community ga mendukung push mail ??? parah nih
On May 6, 2010 12:37 pm Mozilla Firefox 3.5.9 Fedora Linux
#12: can masagi, kalau liat pesan errornya fitur itu belum di implementasikan. emangnya pake zimbra versi berapa?
On June 4, 2010 9:21 am Mozilla Firefox 3.6.3 Windows XP
keren…..
On November 18, 2010 2:23 pm Safari 533.18.5 Windows 7
Mas Kl Error nya begini knp ya?
ERROR: service.INVALID_REQUEST (invalid request: can only be used with “zmprov -l/–ldap”)
mv: cannot stat `*.tgz’: No such file or directory
aku pake zimbra versi 6
thanks ya
On November 18, 2010 2:40 pm Safari 533.18.5 Windows 7
Mas Sudah bisa ternyata ditambah -l
tapi kenapa selalu minta password user zimbra ya setiap backup per user?
On November 23, 2010 11:49 am Mozilla Firefox 3.6.12 Fedora Linux
#17: waktu scriptnya di running harus sbg user zimbra, jangan sebagai root.
On December 20, 2011 3:00 pm Mozilla Firefox 8.0 Windows XP
om,, kalau restorenya gemana?
On July 2, 2012 5:46 pm Mozilla Firefox 13.0.1 Windows 7
mas kalo error kaya ini kenapa?
mv: cannot stat `*.tgz’: No such file or directory
On July 9, 2012 1:21 pm Google Chrome 20.0.1132.47 Linux
#20: akbar, itu berarti belum ada file *.tgz yang dihasilkan dari proses backup.
On October 25, 2012 12:23 pm Mozilla Firefox 16.0 Windows 8
kalau pakai server ubuntu gimana scripnya pak., mohon bantuannya..,
On November 10, 2012 9:20 pm Google Chrome 22.0.1229.94 Windows 7
hadeh kaga mudeng neh gan, btw slm kenal yah
On December 27, 2012 5:04 pm Mozilla Firefox 14.0.1 Ubuntu Linux
Saya nemui error spt ini :
“ERROR: zclient.IO_ERROR (Unable to get ?fmt=tgz)(cause: java.net.SocketTimeoutException Read timed out)”
saya coba untuk modif code ini:
su – zimbra -c “zmmailbox -z -m $ACCOUNT getRestURL ‘//?fmt=tgz’ > $DIR/$NAME.tgz”
menjadi
su – zimbra -c “zmmailbox -z -m $ACCOUNT getRestURL ‘//?fmt=zip’ > $DIR/$NAME.zip”
Hasilnya : tetap error spt diatas.
Zimbra yang saya pake, versi 6.1
penyebab apa yach ? … sepertinya karena ada account yang memiliki ukuran mailbox sangat besar.
lalu gimana cara mengatasinya ?
thanks
On March 5, 2013 3:05 pm Mozilla Firefox 19.0 Windows 7
Artikel yang menarik. Thanks Gan!
On August 4, 2013 10:40 pm Google Chrome 28.0.1500.95 Windows 7
mantap aplikasinya
On August 4, 2013 10:42 pm Google Chrome 28.0.1500.95 Windows 7
aku ra mudeng tapi senang dengan orang yang suka berbagi
On February 4, 2014 3:48 pm Google Chrome 32.0.1700.102 Windows XP
makasih info nya di tunggu postingan selanjutnya
On March 14, 2016 11:14 am Google Chrome 48.0.2564.116 Mac OS X 10.10.5
Halo,
ketika saya menjalankan scriptnya, muncul error seperti berikut di semua account yg dibackup,
mungkin karena port admin 7071 sudah saya ganti
ERROR: zclient.IO_ERROR (invoke Connection refused, server: localhost) (cause: java.net.ConnectException Connection refused)
terima kasih
On July 3, 2016 7:24 am Google Chrome 51.0.2704.106 Linux
#30: ruben gimana kabar? masih ingat saya? saya dudi yang dulu di Asia Source 3.
Untuk soal backup zimbra, mending ikutan mailing zimbra aja lah