Pengaturan cookie dan langganan newsletter
- Situs web ini menggunakan cookie, pixel tag, dan penyimpanan lokal untuk tujuan performa, personalisasi, dan pemasaran.
- Hanya cookie yang wajib yang diaktifkan secara default.
- Dapat berlangganan newsletter.
Migrasi Figma ke Kubernetes
- Penulis: Ian VonSeggern, Manajer Rekayasa Perangkat Lunak Figma
- Topik: Proses dan alasan Figma bermigrasi ke Kubernetes dalam waktu 12 bulan
Platform komputasi Figma
- Pada awal 2023, Figma menyelesaikan pekerjaan untuk menjalankan semua layanan dalam container.
- Menggunakan AWS Elastic Container Service (ECS) untuk dengan cepat memulai beban kerja yang telah dikontainerisasi.
- Dalam perspektif jangka panjang, Figma mulai mempertimbangkan versi generasi berikutnya dari platform komputasinya.
Kekurangan fitur Kubernetes
- Beberapa keterbatasan ECS menghabiskan banyak waktu rekayasa.
- Karena ECS tidak memiliki fitur StatefulSets milik Kubernetes, ada kesulitan dalam menjalankan klaster etcd.
- Kurangnya dukungan untuk definisi layanan melalui Helm chart.
- Sulit untuk menghentikan satu mesin EC2 saat menjalankan EC2 di ECS.
Akses ke ekosistem Cloud Native Computing Foundation
- Dengan menggunakan ECS, Figma tidak dapat memanfaatkan teknologi open source dari ekosistem CNCF.
- Ekosistem Kubernetes memiliki kemampuan autoscaling yang sangat baik.
- Mempertimbangkan kemungkinan untuk mengadopsi service mesh.
Keunggulan platform yang populer
- Kubernetes digunakan oleh banyak perusahaan besar sehingga kestabilannya telah terbukti.
- Dapat menghindari vendor lock-in.
- Lebih mudah merekrut engineer yang memiliki pengalaman Kubernetes.
Menetapkan cakupan migrasi
- Untuk migrasi yang aman, perubahan pada sistem inti diminimalkan.
- Menargetkan perpindahan ke EKS.
- Beberapa perbaikan juga dimasukkan ke dalam cakupan migrasi.
Perbaikan yang termasuk dalam migrasi
- Pengalaman developer: Menyederhanakan definisi layanan dan proses deployment.
- Peningkatan keandalan: Meningkatkan keandalan layanan dengan menggunakan tiga klaster EKS.
- Efisiensi biaya: Mendukung autoscaling node untuk menurunkan biaya.
Pekerjaan yang dikeluarkan dari cakupan
- Pekerjaan untuk menyelesaikan kompleksitas pipeline log dikeluarkan.
- Pekerjaan autoscaling level pod dikeluarkan.
Menjalankan migrasi yang aman
- Load testing: Melakukan load testing untuk memahami performa klaster.
- Mekanisme rollout bertahap: Memindahkan traffic secara bertahap dengan menggunakan entri DNS berbobot.
- Menjalankan layanan nyata: Menjalankan layanan nyata di lingkungan staging untuk menemukan masalah lebih awal.
- Meminimalkan YAML kustom: Meminimalkan definisi YAML yang dapat membingungkan pengguna.
- Bekerja erat dengan pemilik layanan: Bekerja sama dengan pemilik layanan untuk memperbarui monitoring dan alert.
- Penempatan personel yang tepat: Membentuk tim yang mampu menangani masalah tak terduga.
Hasil migrasi
- Hingga Januari 2024, layanan utama telah dimigrasikan ke klaster EKS.
- Mendapatkan manfaat seperti penghematan biaya, peningkatan keandalan, dan perbaikan pengalaman developer.
Periode setelah peluncuran
- Meningkatkan alat akses pengguna melalui inferensi otomatis klaster dan peran.
- Merencanakan pekerjaan seperti penyederhanaan pipeline log, dukungan horizontal pod autoscaling, dan migrasi ke prosesor Graviton.
Ringkasan GN⁺
- Figma mencapai penghematan biaya, peningkatan keandalan, dan perbaikan pengalaman developer melalui migrasi dari ECS ke Kubernetes.
- Dengan memanfaatkan teknologi open source dari ekosistem CNCF, Figma meningkatkan kemungkinan adopsi autoscaling dan service mesh.
- Dalam proses migrasi, Figma menggunakan metode yang aman seperti load testing, rollout bertahap, dan menjalankan layanan nyata.
- Setelah peluncuran, Figma memperbaiki alat akses pengguna dan merencanakan pekerjaan optimasi tambahan.
1 komentar
Opini Hacker News
ada pengguna yang menyukai k8s
migrasi untuk meningkatkan infrastruktur itu bagus
banyaknya pendapat anti-k8s di HN terasa mengejutkan
pengelolaan deployment dengan Terraform dan ECS terlalu rumit
mempertanyakan pendapat bahwa migrasi ke Kubernetes memakan waktu beberapa tahun
keputusan organisasi besar tampaknya tidak didasarkan pada kebutuhan pengguna atau perusahaan
penasaran apakah ada sistem atau layanan modern yang layak dibanggakan karena bisa dimigrasikan dalam waktu kurang dari 1 tahun
suka membaca laporan dari lapangan
artikel ini menjelaskan manfaat Kubernetes dengan jelas
penasaran berapa lama waktu yang dibutuhkan untuk menghentikan migrasi