tirto.id - Menjalankan aplikasi di cloud itu sebuah kenyamanan bagi startup: gampang, praktis, tinggal klik ini-itu langsung jalan. Tapi di balik kenyamanan itu, ada tagihan bulanan yang makin lama makin membengkak. Ini adalah sebuah cerita menegangkan tentang pengalaman sebuah startup POS, Qasir.id, memindahkan layanannya keluar dari cloud.
Sekitar awal 2023, David Heinemeier Hansson (DHH), menulis tentang perusahaannya yang memutuskan keluar dari cloud dan hemat USD1,5 juta atau sekitar Rp24 miliar per tahun. Bagi yang belum tahu, DHH adalah pengembang Ruby on Rails, CTO 37signals (perusahaan di balik aplikasi Basecamp & HEY). Lalu ada juga tweet dari X Engineering yang bercerita gimana mereka bisa menurunkan biaya cloud hingga 60 persen per bulan dengan memindahkan beberapa layanan mereka ke on premise (pengelolaan mandiri server fisik di data center). Dua tulisan tersebut mendorong Qasir.id untuk mulai merencanakan keluar dari cloud demi menghemat biaya server.
Setelah riset panjang dan cari tahu tentang bagaimana cara keluar dari cloud dan apa aja risikonya, di pertengahan 2023 Qasir.id akhirnya merasa siap untuk pindah ke on premise. Awalnya dicoba untuk cari vendor layanan server yang ada di Indonesia tapi dari beberapa pilihan terbaik yang ada, sepertinya tidak memenuhi bujet. Jadi Qasir.id memutuskan untuk membangun infrastruktur server secara mandiri: 1) menyewa server rack, 2) langganan internet, 3) menyewa perangkat server.
Untuk itu, Qasir.id menggandeng Bersama Digital Data Center (BDDC) sebagai mitra data center berkualitas premium yang juga menyediakan layanan koneksi internet, dan menyewa perangkat server dari penyedia terpercaya dengan harga yang terjangkau. Hasilnya? Biaya infrastruktur Qasir.id turun sampai 72 persen! Sebuah pencapaian yang membanggakan.. tapi dengan proses yang melelahkan!
Proses Migrasi: Kayak Pindahan Rumah, Tapi Lebih Ribet
Migrasi server itu tentu saja nggak kayak pindah rumah yang cuma butuh kardus dan pick-up. Juga nggak kayak mindahin software yang kita download dari satu komputer ke komputer lain. Ini serius, menantang, dan sekaligus bikin pusing. Qasir.id memulai dari layanan paling aman dengan biaya cloud cukup tinggi: kubernetes. Biar nggak terlalu berisiko, kubernetes dijalankan paralel di cloud dan on premise. Jadi kalau ada apa-apa, kubernetes di cloud masih bisa jadi backup.
Setelah itu, giliran memindahkan layanan pendukung dan monitoring—redis, airflow, grafana, promotheus, fluentbit, intinya semua yang bikin aplikasi bisa tetap “melek” dan bisa dipantau di “rumah” yang baru. Nah, sampai di sini kondisi masih cukup aman.
Lalu drama terjadi pas migrasi database. Ini kayak mindahin gajah yang beratnya berton-ton dari dari satu pulau ke pulau lain. Proses migrasi database ini membutuhkan backup and restore data dan data di master database nggak boleh bergerak selama proses migrasi berjalan. Ini artinya, layanan Qasir.id harus berhenti total!
Untuk melakukan backup data butuh beberapa jam dan restore juga serupa. Jadi proses ini butuh maintenance dengan down time terlama yang pernah Qasir.id lakukan. Meskipun sudah ada persiapan matang, tetap ada detik-detik horor saat nunggu proses backup dan restore selesai. Kalau gagal maka prosesnya harus diulangi lagi keesokan harinya. Dan proses migrasi database ini sempat gagal sekitar 5 kali sebelum akhirnya berhasil dilakukan. Meskipun proses ini dilakukan di dini hari, tetap aja ada user yang ngomel-ngomel karena memang ada beberapa pengguna yang masih beroperasi sampai lewat tengah malam.
Walaupun proses terberatnya sudah dilewati, tetap saja kondisi menegangkan di mana database server di on premise ternyata punya performa yang lebih rendah dari cloud, sehingga kadang database menjadi lambat dan kadang membuat layanan Qasir tidak bisa diakses untuk beberapa saat.
Ini tidak cuma terjadi sekali dua kali, tapi berkali-kali. Tentunya disertai dengan komplen keras dari pelanggan. Semua orang merasakan lelah yang luar biasa. Tim Qasir lelah melayani komplain, vendor lelah menstabilkan server, pelanggan juga lelah komplain terus. Bener-bener menguras tenaga hingga ke titik nol!
Puncaknya di akhir Desember 2023, Qasir.id akhirnya berhasil menjadikan database di on premise sebagai master database, sementara database di cloud menjadi slave database. Dan itulah momen di mana proses migrasi dianggap sudah selesai walaupun masih ada hal-hal kecil yang tersisa.
Semua tahapan proses di atas butuh waktu tiga bulan untuk eksekusi karena memang harus ekstra hati-hati dengan observasi ketat. Dan setelah migrasi pun, masih ada proses performance tuning untuk menyamakan performa di on premise dengan di cloud. Kadangkala, beberapa layanan terpaksa “dikembalikan” ke cloud untuk sementara karena konfigurasi di on premise yang masih belum optimal. Proses tuning ini sendiri memakan waktu tiga bulan dengan berbagai drama gangguan yang membuat rating Qasir.id di Play Store merosot drastis.
Apa yang Qasir.id Pelajari dari Migrasi Ini?
Setelah tiga bulan eksekusi, plus tiga bulan lagi buat performance tuning, akhirnya proses migrasi keseluruhan selesai dilakukan. Harus diakui proses migrasinya tidak mulus dan banyak kesalahan yang terjadi karena keterbatasan biaya, tenaga, waktu, dan pengetahuan. Berbagai hal tidak nyaman dihadapi oleh tim Qasir.id. Ada guncangan, ada stress, ada ketegangan, semua orang lelah selelah-lelahnya.
Tapi kabar baiknya, selain biaya infrastruktur turun drastis, tagihan biaya infrastruktur Qasir.id jadi lebih stabil setiap bulannya, nggak ada lagi kenaikan atau lonjakan biaya yang bikin deg-degan tiap bulannya. Dan ternyata jalanin server di luar cloud enggak semenakutkan itu selama kita punya mitra yang tepat. Untungnya, Qasir.id didampingi oleh ahli infrastruktur server seperti Trinix Systems, yang sudah bantu kelola infrastruktur Qasir.id dengan keahlian mereka yang unik dalam menangani server bertahun-tahun sejak pertama kali Qasir.id diluncurkan.
Migrasi on premise sebenarnya nggak perlu dilakukan secara keseluruhan. Kita tetap bisa jalanin layanan kita secara hybrid, sebagian di cloud dan sebagian di on promise. Keuntungannya adalah kalau resources di on premise sudah menipis, maka kita bisa scale-out ke cloud sambil menunggu waktu yang tepat untuk pengadaan server tambahan.
Worth It, tapi Butuh Nyali
Migrasi ke on premise ini tidak cocok buat semua startup. Kalau skalanya masih kecil, traffic masih minim, atau biaya cloud belum tembus puluhan juta, maka cloud akan selalu jadi pilihan terbaik. Tapi kalau tagihan cloud sudah lebih mirip angka telepon, mungkin ini waktu yang tepat untuk siapkan nyali, tenaga, dan kopi yang banyak, karena migrasi ke on premise akan jadi perjalanan menantang dan penuh aktivitas berbahaya. []
Penulis adalah co-founder Qasir, sebuah perusahaan rintisan di bidang aplikasi kasir dan punya misi menciptakan peluang ekonomi yang setara untuk UMKM melalui teknologi.
*) Isi artikel ini menjadi tanggung jawab penulis sepenuhnya.