Strategi Blibli.com Migrasi dari Data Center ke Layanan Cloud
- Mathilda Gian Ayu
- •
- 15 Sep 2022 12.17 WIB
Blibli.com merupakan salah satu toko online pertama di Indonesia yang berdiri sejak tahun 2011. Blibli.com merupakan salah satu bagian perusahaan dari grup Djarum. Pada awalnya penggunaan teknologi Blibli.com menggunakan Monolith serta data center dan sekarang menggunakan Microservices dan memanfaatkan teknologi Cloud.
"Dalam sisi teknologi pada Blibli.com sendiri terdiri lebih dari 200 engineers, 100 microservices, 500 application nodes, dan hampir semua backend microservices dibuat menggunakan JVM Stacks serta semua frontend baru dibuat menggunakan VueJS," ujar Technical Architect Blibli, Eko Kurniawan Khaneddy dalam paparannya di webinar 'Rapid Application Development Using Cloud Services', Rabu (14/9/2022).
"Sebelum menggunakan Cloud, Blibli.com dimulai dengan menggunakan data center sendiri dan saat menggunakan monolith, pertumbuhan yang dikejar tidak terlalu besar, hal ini dikarenakan secara aplikasi belum bisa menangani pertumbuhan yang terlalu cepat," jelas Eko.
Eko menambahkan, namun ketika tahun 2017 semua aplikasi sudah Microservices sehingga secara otomatis dituntut untuk pertumbuhan yang signifikan seperti dari segi pengguna, traffic, fitur dan aplikasi baru. kecepatan pertumbuhan ini akhirnya tidak bisa dikejar apabila harus menggunakan data center sendiri.
"Pada tahun 2017, Blibli.com mulai melakukan peralihan secara besar-besaran ke teknologi Cloud dan pada tahun 2018, semua aplikasi selesai di migrasi ke Cloud terkecuali yang secara regulasi mengharuskan tetap di data center seperti salah satu contohnya adalah payment," ungkap Eko.
Di sisi lain, Eko juga menjelaskan strategi yang dilakukan dalam melakukan migrasi ke Cloud yakni dilakukan secara bertahap. Tahap pertama fokus ke Automation CI/CD, proses migrasi ke cloud dilakukan dengan dibentuknya sebuah tim khusus yang bernama Developer Experience. Pada awalnya Blibli.com menggunakan Bamboo dengan keterbatasan jumlah agent dalam Virtual Machine (VM). Saat proses Move to Cloud, Blibli.com menggunakan Jenkins dengan Kubernetes sebagai agent sehingga bisa mempercepat CI/CD.
Strategi selanjutnya adalah migrasi aplikasi stateless ke Kubernetes, pada tahap ini salah satu masalah scalability terbesar adalah di aplikasi stateless. Hal ini dikarenakan menggunakan data center dan VM biasa, secara otomatis horizontal scalability lebih sulit dilakukan. Setelah menyelesaikan semua CI/CD Automation, strategi berikutnya adalah memindahkan semua aplikasi stateless ke Cloud.
Blibli.com memiliki container dibanding VM, oleh karena itu di Blibli dibuatkan standarisasi untuk membuat container image dan juga cara deployment oleh tim Developer Experience. Hal ini membuat proses migrasi lebih mudah karena semua mengikuti standarisasi.
"Tahap ketiga adalah migrasi aplikasi stateful ke Cloud, migrasi aplikasi stateful (seperti database) merupakan proses migrasi yang paling rumit, hal ini dikarenakan kita berharap tidak ada downtime ketika proses migrasi," kata Eko.
Oleh karena itu, tambah Eko, untuk melakukan migrasi kita lakukan dengan cara membuat replika terlebih dahulu di Cloud, dan setelah semua proses sync replika selesai, kita lakukan perpindahan master dari data center ke replika yang terdapat di Cloud. Sampai saat ini, untuk aplikasi stateful mayoritas masih menggunakan VM Based agar mudah di-turning.
"Strategi terakhir adalah migrasi Message broker. Pada proses migrasi terakhir ini menjadi proses yang sangat beresiko. Hampir semua microservices di Blibli.com menggunakan Kafka sebagai Message Broker-nya. Strategi yang dilakukan adalah secara bertahap dengan menambahkan node baru pada cluster Message Broker di Cloud yang tergabung dengan cluster di data center," pungkas Eko.