Share Pengalaman : Upgrade Mail Server Multi Node
Beberapa waktu yang lalu, saya bersama team Excellent berangkat ke kantor klien untuk melakukan proses upgrade mail server. Upgrade mail server sebenarnya bukan sesuatu yang baru bagi team Excellent, namun upgrade mail server dalam skema multi serverĀ memilikiĀ pressure yang lebih tinggi. Selain karena jumlah server ada sekitar 20 VM, jumlah account sekitar 30 ribu dan trafik yang cukup tinggi membuat proses upgrade harus direncanakan dan dijalankan dalam tenggat waktu yang ketat. Upgrade ini juga mutlak diperlukan karena ada beberapa celah keamanan sistem pada versi sebelumnya yang dikhawatirkan akan menjadi sumber exploitĀ yang digunakan untuk mengganggu operasional sistem.
Untuk keperluan tersebut, saya berangkat dengan team Excellent secara komplit. Membawa kendaraan sendiri dan membuat simulasi sebelumnya di markas Excellent. Meski persiapan sudah cukup lama dan simulasi sudah dilakukan, saya tetap merasa khawatir karena proses rollback jika terjadi kegagalan upgrade tidak terlalu mudah dilakukan.
Masalah rollback ini tidak mudah dilakukan karena proses backup secara snapshot dan cloning tidak memungkinkan untuk dilakukan. Alasannya simple dan klasik. Kapasitas disk untuk menampung tidak mencukupi, karena kapasitas masing-masing mailbox sebesar 2 TB dan kapasitas storage untuk backup masih dalam proses pengadaan. Plan B yang saya lakukan terhadap hal ini adalah melakukan rsync data seluruh folder mailbox sebagai tindakan antisipasi jika suatu waktu ada keperluan recovery.
Proses upgrade rencananya dilakukan pada hari Sabtu malam atau Minggu dini hari. Untuk keperluan ini perlu ada down time sistem karena prosesnya harus dilakukan secara berurutan dan simultan. Saya minta waktu antara 6-8 jam namun manajemen klien hanya memberikan waktu maksimal 5 jam, mulai pukul 01.00 dini hari hingga pukul 06.00 WIB. Pemilihan waktu hari Sabtu malam atau Minggu dini hari diambil berdasarkan data statistik 1-2 minggu terakhir yang menunjukkan pada periode tersebut trafik email relatif sepi, dalam kisaran 10 ribu hingga 20 ribu email per jam dibandingkan saat peak yang bisa mencapai 50 ribu hingga 150 ribu email per jam.
Team Excellent berangkat ke kantor klien sekitar pukul 09.00 WIB dan tiba di sekitaran lokasi sekitar pkl. 12.00 WIB. Perlengkapan di drop dulu di hotel sekaligus istirahat sejenak dan kami baru keluar untuk makan siang sekaligus berangkat ke kantor klien sekitar pkl. 16.00 WIB. Waktunya memang masih agak lama karena proses upgrade sendiri baru akan dilaksanakan jam 1 malam namun saya memerlukan waktu pengecekan akhir jadi memutuskan untuk tiba di kantor klien lebih awal.
Setelah proses pengecekan akhir selesai dilakukan, saya menemukan ada beberapa VM yang tidak bisa diupgrade secara mulus. Salah satunya adalah VM LDAP replica yang menjadi sumber authentikasi account bagi mailbox server dan MTA server. Saya coba 2-3 kali ternyata hasilnya masih sama dan saya merasa ini bisa menjadi batu sandungan saat proses upgrade sebenarnya dilakukan, meski ada harapan bahwa masalah itu terjadi karena skema network simulasi berbeda dengan skema server production.
Proses upgrade dilaksanakan tepat pukul 01.00 WIB, dengan urutan sebagai berikut :
- Shutdown service sistem mail server, non aktif auto service saat sistem booting
- Power off VM
- Penyesuaian standarisasi spesifikasi VM, terutama mencakup memory/RAM, processor/vCPU dan kapasitas disk masing-masing VM
- Power on semua VM
- Upgrade VM dimulai dari LDAP master, LDAP replica, semua VM proxy dan MTA dan terakhir VM mailbox server
Sesuai dengan perkiraan, ada masalah upgrade LDAP replica, persis dengan situasi simulasi sebelumnya. Setelah saya coba beberapa tips perbaikan tidak berhasil sedangkan waktu terus berjalan dan proses uprade VM lain menunggu upgrade LDAP replica, akhirnya saya memutuskan skenario kedua, yaitu membangun ulang LDAP replica.
Proses pembangunan ulang LDAP replica ini berhasil dilakukan dan saya bisa melanjutkan proses upgrade ke tahap selanjutnya.
Saat waktu sudah berjalan hingga pukul 03.00 WIB, sudah ada sekitar 8 VM yang berhasil diupgrade. Pukul 04.00 WIB sudah ada 14 VM yang berhasil diupgrade. Masih ada sekitar 6 VM yang belum diupgrade dan semuanya merupakan VM krusial karena berisi data mailbox semua user. Sempat agak ragu apakah prosesnya bisa selesai tepat waktu pukul 06.00 WIB atau tidak, namun saya putuskan untuk melanjutkan proses upgrade karena andaikan melakukan proses roll back, waktu yang dibutuhkan juga cukup lama.
Upgrade mailbox server pertama gagal karena ada pesan kegagalan koneksi ke LDAP replica. Hmmmh, saya mencoba mengecek pesan error yang terjadi namun karena tidak bisa konsentrasi mengingat tenggat waktu yang ketat, akhirnya saya coba skip mailbox server pertama dan melakukan upgrade ke mailbox server kedua. Ternyata upgrade mailbox server kedua hingga terakhir berjalan dengan lancar sesuai harapan, meski waktunya meleset dari jadwal maksimal. Minimal, sebagian user sudah bisa menggunakan sistem dan hanya sebagian user yang masih menunggu karena masih dalam proses upgrade.
Setelah semua mailbox server selesai diupgrade, saya kembali menangani mailbox server pertama. Karena sudah bisa berkonsentrasi, saya bisa memastikan sumber masalah yang terjadi dan kemudian menyelesaikannya. Menjelang pukul 07.00 WIB, semua sistem berhasil diupgrade.
Selesai proses upgrade, saya dan team melakukan proses monitoring log, memastikan akses kirim, terima dan koneksi mail server berjalan dengan lancar. Ujicoba via webmail, email client, mobile devices dan lain-lain berjalan dengan lancar. Mailing list sempat bermasalah karena ada perubahan format dan mekanisme penyimpanan data konfigurasi namun akhirnya bisa diselesaikan dengan baik.
Sekitar pukul 8.00 WIB, proses monitoring masih dijalankan namun saya sudah bisa makan dan minum dengan hati yang tenang. Sebelumnya saya nggak kepingin makan sama sekali, paling minum saja supaya tidak dehidrasi :-). Sambil makan, saya minta team Excellent membereskan semua perlengkapan dan merapikan catatan untuk keperluan laporan pekerjaan.
Sekitar pukul 09.00 WIB, saya berdiskusi dengan pihak pendamping dari team IT klien. Mereka confirmed terhadap pekerjaan yang sudah dilakukan dan proses monitoring bisa dilanjutkan secara remote dari hotel. Kami kembali ke hotel dan saya tidur serasa pingsan mulai dari jam 11 siang sampai sekitar pukul 13.00 WIB.
Menulis pengalaman seperti ini serasa deja vu karena saya pernah menuliskan pengalaman sejenis :Ā Share Pengalaman : Tanggung Jawab & Kekhawatiran Saat Migrasi Sistem. Secara prinsip, semua pekerjaan memang ada resiko masing-masing. Kita boleh dan pantas khawatir pada kegagalan, karena hal tersebut akan membuat kita lebih berhati-hati dan mempersiapkan segalanya secara lebih lengkap.
membaca nya ikutan deg-deg an juga jadinya ..hehehehe , tapi keren mas vavai kisah nya ..
congratulation mas .. akhir nya berhasil upgrade nya ..
thx n i note it : “Kita boleh dan pantas khawatir pada kegagalan, karena hal tersebut akan membuat kita lebih berhati-hati dan mempersiapkan segalanya secara lebih lengkap.”
berarti tetap harus meluangkan waktu yang cukup banyak ya buat upgrade multi node ini hehe