- Pengalaman seorang developer yang memindahkan infrastruktur dari AWS ke server sendiri dan memangkas biaya infrastruktur bulanan hingga sepersepuluh, dari $1.400 menjadi $120 per bulan sambil mendapatkan performa server yang lebih kuat
- Server bare metal yang ditawarkan penyedia seperti Hetzner berharga sekitar $190 per bulan untuk 80 core, 7–18 kali lebih murah dibanding instance AWS dengan spesifikasi serupa
- Alasan para engineer cloud menentang pengelolaan server sendiri adalah karena keamanan kerja dan ketergantungan pada infrastruktur yang kompleks, sementara beban biaya nyata ditanggung oleh perusahaan
- Sebagian besar bisnis kecil tidak membutuhkan fitur kelas enterprise seperti high availability, replikasi multi-zone, atau failover otomatis, dan satu server saja sudah bisa menangani jutaan request per hari
- Pengelolaan server cenderung stabil setelah konfigurasi awal, dan dengan bantuan alat AI, hambatan masuk untuk mengelola server Linux kini lebih rendah daripada sebelumnya
Contoh penghematan biaya cloud
- Baru-baru ini semua proyek dipindahkan keluar dari cloud, menghasilkan pengurangan biaya AWS bulanan hingga 10 kali lipat dan penghematan ribuan dolar
- Tagihan AWS bulanan turun dari sekitar $1.400 menjadi kurang dari $120
- Mendapatkan infrastruktur server yang lebih kuat dengan biaya lebih rendah
- Performa meningkat 2 kali lipat dan terbebas dari vendor lock-in
- Setelah tweet ini viral, ada dua temuan: banyak developer tertarik pada caranya, dan banyak lainnya menunjukkan penolakan keras serta sikap konfrontatif terhadap ide ini
- Dari sudut pandang bisnis, penghematan biaya 10 kali lipat, peningkatan performa 2 kali lipat, dan lepas dari vendor lock-in adalah keuntungan yang jelas, tetapi tetap memicu reaksi keras
Kepentingan para pendukung cloud
- Sebagian besar orang yang menentang memiliki kata kunci seperti "devops", "cloud engineer", "serverless guy", "AWS certified" di profil mereka
- Mereka tidak menjalankan proyek mereka sendiri di cloud, dan tidak membayar sendiri biaya cloud tersebut
- Mereka tidak peduli pada tagihan AWS perusahaan, dan tidak merasakan langsung sakitnya ketika ribuan dolar terbuang setiap bulan
- Mengapa AWS nyaman bagi mereka
- Secara teknis terlihat rumit sehingga membuat mereka tampak pintar di depan developer lain
- Menciptakan efek ketergantungan dan lock-in sehingga mereka terasa tak tergantikan sebagai karyawan
- Karena penggunaan cloud menjamin gaji yang tinggi, mereka tidak punya insentif untuk mengambil keputusan yang efisien bagi bisnis
- Justru semakin rumit dan sulit dipahami infrastruktur bisnis, semakin aman posisi pekerjaan mereka
- Mereka tidak akan mengatakan kebenaran bahwa server sebenarnya murah
Opsi sewa server murah
- Pindah ke Hetzner (tanpa afiliasi, hanya menawarkan server murah)
- Bisa menyewa server bare metal 80 core dengan harga di bawah $190 per bulan
- Instance AWS seri C5-C6 dengan spesifikasi serupa berharga $2.500–$3.500 per bulan, 13–18 kali lebih mahal
- Bahkan dengan reserved instance, biayanya masih sekitar $1.300 per bulan, tetap 7 kali lebih mahal, dan perlu pembayaran di muka $46.000 serta kontrak 3 tahun
- Opsi VPS juga menarik
- Mesin 48 vCPU tersedia seharga $300 per bulan, tanpa biaya setup atau kontrak jangka panjang, dengan fleksibilitas penuh
- Mesin 8 core, RAM 32GB seharga $50 per bulan, cukup untuk menjalankan semua proyek sekaligus kecuali jika harus menangani jutaan request per hari
Membeli server dan memanfaatkan data center
- Dalam jangka panjang, membeli server lebih murah
- Bisa membeli server rack-mount dengan 44 CPU, RAM 256GB, dan SSD NVMe 2TB dengan harga di bawah $1.000
- Dengan harga lebih murah dari biaya cloud bulanan, aplikasi bisa dijalankan selama bertahun-tahun
- Opsi menyewa ruang rack di data center
- Bisa menyewa cage data center atau ruang rack bersama yang menyediakan listrik, internet, pendinginan, dan keamanan
- Bisa mencari data center lokal lewat situs seperti DatacenterMap
- Untuk developer kecil, ini terlalu rumit
- Perlu merekrut engineer, bernegosiasi soal harga, dan melalui proses yang merepotkan
- Umumnya ditujukan untuk perusahaan menengah hingga besar, sehingga tidak praktis untuk tim kecil
- Pada praktiknya sama saja dengan menyewa server yang sudah dipasang oleh penyedia seperti Hetzner, sambil mengurangi beban pengelolaan hardware
Bantahan terhadap kritik "bukankah itu masih cloud?"
- Kritik paling umum: "Bukankah itu masih cloud?" atau "Kamu tidak keluar dari cloud, cuma ganti penyedia cloud"
- Kritik ini meleset dari inti persoalan
- Yang penting adalah nilai dari mengelola server sendiri vs menganggap cloud sebagai default
- Menjalankan mesin Linux kecil untuk menggantikan layanan terkelola mahal seperti RDS bisa memangkas biaya 10 hingga 100 kali
- Sebagian besar developer takut pada server, padahal mereka hanya butuh sedikit dorongan untuk sadar bahwa server sendiri bisa dikonfigurasi dengan murah
- Di dunia nyata, hampir tidak ada yang benar-benar membutuhkan layanan terkelola cloud yang mahal; beberapa box Linux dengan software biasa sudah cukup
- Perdebatan soal penamaan mengaburkan substansi
- Entah itu VPS, bare metal, on-premise, atau colo, namanya tidak penting
- Faktanya server memang harus ditempatkan di suatu tempat, dan yang penting adalah apakah lebih banyak uang tersisa di kantongmu atau diserahkan ke pemegang saham Amazon
- Orang yang berargumen seperti ini pada dasarnya bertindak sebagai penjaga gerbang (gatekeeper)
- "Itu belum dilakukan dengan benar, kamu harus beli switch sendiri, bikin rack sendiri, dan colok kabel Ethernet sendiri"
- Ini argumen yang toksik dan malas, terobsesi pada detail dangkal untuk menghindari inti pembahasan
Biaya cloud pada dasarnya memang mahal
- Upaya gaslighting dari para pendukung cloud
- "Kamu pakai cloud dengan cara yang salah", "Mahal karena kamu salah melakukannya", "Kamu harus tahu cara menggunakan cloud"
- Mereka sendiri tidak pernah benar-benar mencoba alternatif, dan tidak punya pengalaman nyata mengelola server untuk proyek mereka sendiri
- Penulis sendiri akrab dengan AWS dan pernah mempelajari sertifikasi AWS
- Memastikan infrastrukturnya tidak overprovisioned
- Memeriksa apakah ada biaya untuk layanan yang tidak digunakan
- Sudah menghabiskan banyak sekali waktu untuk optimasi biaya AWS, bahkan pernah berhasil memangkas tagihan AWS bulanan lebih dari setengah dari angka di atas $5.000
- Serverless computing, reserved instance, dan lainnya semuanya sudah dipahami
- Reserved instance justru memperburuk masalah: menciptakan vendor lock-in dan mengikat diri ke kontrak 3 tahun
- Jika sedang mempertimbangkan keluar dari cloud, kontrak 3 tahun adalah pilihan terburuk
- Kesimpulan setelah mencoba semuanya: cloud memang terlalu mahal
Penyebab reaksi keras
- Mengapa begitu banyak orang peduli soal penghematan biaya ini?
- Ada dua kesimpulan utama
- Penghidupan mereka dipertaruhkan: jika cukup banyak orang terbujuk oleh pandangan seperti ini, mereka bisa kehilangan pekerjaan
- Perdebatan irasional karena rasa takut: selama 10 tahun terakhir membangun di cloud menjadi tren dan melahirkan jutaan peran "devops" dan "cloud engineers"; jika keluar dari cloud menjadi tren berikutnya, karier banyak ahli cloud bisa berakhir
- Banyak developer diam-diam tahu bahwa cloud tidak sebaik janji awalnya
- Mereka melihat pengeluaran AWS perusahaan 10 kali lebih besar dari yang semestinya, tetapi tetap menganggapnya "ya sudahlah"
- Mereka tidak ingin mengambil risiko membuat manajer marah atau memikul tanggung jawab
- Mereka takut pada biaya politik ketika pendapat mereka berbeda dengan orang paling vokal di tim
- AWS memiliki pengikut seperti kultus yang kuat
- Sertifikasi melatih orang untuk menghafal halaman penjualan dan deskripsi produk yang sebenarnya
- Ada evangelist yang mendorong dogma alih-alih pragmatisme
- Menanamkan ketakutan terhadap dunia luar (server itu berbahaya! tidak bisa diskalakan!)
- Menjadikan "cloud engineer" sebagai identitas, memudahkan orang masuk tetapi sulit keluar
- Karena penghidupan mereka dipertaruhkan, para pengikut AWS terjebak dalam dogma dan terus mengulang argumen yang tidak rasional
- Mereka mengulang poin-poin dari landing page penjualan AWS satu per satu tanpa berpikir apakah itu benar-benar dibutuhkan
- Karena ini perdebatan soal sistem kepercayaan, orang jadi irasional
Sejarah cloud
- Dulu semua orang menjalankan server mereka sendiri
- Di VPS, layanan hosting, bare metal di data center, ruangan gelap di kantor, atau bahkan di rumah
- Semua orang terbiasa dan nyaman SSH ke mesin
- Pada awal 2010-an dimulailah kampanye psyops pemasaran cloud
- Ini gerakan yang disengaja untuk menjual teknologi enterprise kepada startup tahap awal
- Strateginya adalah membuat mereka terkunci sedini mungkin agar bisa dieksploitasi saat mereka mendapat pendanaan
- Strategi AWS
- Mulai menawarkan kredit khusus startup
- Berkeliling accelerator startup untuk mencoba meng-onboard semua startup
- Triknya sederhana: buat semuanya terasa sangat murah (bahkan gratis!) saat startup sedang membangun infrastruktur, lalu ketika mereka tumbuh, buat semuanya menjadi sangat mahal, sehingga mereka terjebak dan sulit keluar dari ekosistem
- IBM cloud juga punya strategi serupa (acara tahun 2014)
- Saat itu semua dijalankan di Heroku dan semuanya bekerja baik-baik saja
- Muncul pertanyaan, "Apa sebenarnya semua cloud ini dan bagaimana cara memakainya?"
- Rasanya seperti sedang dijual sesuatu yang memang tidak dirancang untuk mereka
- Selama beberapa tahun terakhir, perusahaan-perusahaan ini menghabiskan jutaan dolar untuk kampanye promosi cloud demi mendorong startup awal mengadopsi teknologi enterprise
- Era suku bunga nol selama 10 tahun terakhir ikut berkontribusi pada situasi saat ini
- Kini ada gerakan tandingan
- Banyak dipimpin oleh @dhh dan komunitas Rails
- Secara mendasar terasa segar, benar, dan selaras dengan realitas kebanyakan bisnis software di dunia
Sebagian besar bisnis tidak membutuhkan cloud
- Sebagian orang benar-benar memiliki pandangan yang jauh dari realitas bisnis software sesungguhnya
- Mereka berpikir dari sudut pandang Fortune 500 dan menganggap enterprise sebagai standar
- Mereka mengira bisnis rata-rata membutuhkan high availability, replikasi multi-zone, failover otomatis, cluster Kubernetes terdistribusi, dan semua fitur cloud lainnya
- Padahal hanya sangat sedikit bisnis software yang benar-benar membutuhkan semua itu
- Sebagian besar bisnis akan tetap kecil mengikuti hukum power law
- Di Amerika Serikat, bisnis kecil mencakup 99,9% dari seluruh bisnis
- Di Uni Eropa, SME (kurang dari 250 karyawan) mencakup 99% dari seluruh bisnis
- Kebanyakan developer melebih-lebihkan kebutuhan skalabilitas
- Standar mereka untuk "traffic tinggi" terlalu rendah
- Sebagai acuan: saat ini setup 2 server menangani jutaan request per hari untuk jutaan pengunjung bulanan
- Indie maker seperti @levelsio menjalankan semuanya dengan satu server
- Kebanyakan developer belum pernah menjalankan proyek mereka sendiri dengan pengguna nyata dan traffic produksi di satu server
- Kebutuhan teknis juga dilebih-lebihkan
- Hanya segelintir bisnis software yang benar-benar membutuhkan fitur-fitur itu, dan biasanya mereka memang punya alasan teknis yang cukup
- Misalnya Netflix: harus mentranskode dan streaming video dalam jumlah sangat besar ke pelanggan di seluruh dunia, jadi butuh sistem terdistribusi, CDN, dan edge computing
- Jika hanya aplikasi kecil dengan seribu pengguna yang bertukar objek JSON, hal seperti itu sama sekali tidak perlu
- Banyak developer punya gagasan magis bahwa proyek mereka seperti Netflix
- Itu bentuk angan-angan yang bisa dimengerti, tetapi tetap mengarah pada keputusan teknis yang salah
- Mereka merasa perlu server yang tersebar di seluruh dunia karena mengira pengguna akan menyadari selisih beberapa milidetik saat menekan tombol
Server akan baik-baik saja
- Banyak orang punya pemikiran magis tentang cara kerja data center
- Mereka membayangkan server di data center rapuh, labil, dan bisa lenyap begitu saja
- Bahkan ada yang berpikir petir bisa merobohkan seluruh data center
- Data center modern sudah mempertimbangkan semua masalah itu dan menyiapkan banyak perlindungan
- Bukan hanya untuk hal biasa seperti petir, tetapi hampir semua hal yang dapat mengancam uptime
- Catu daya redundan, pendingin redundan, koneksi internet redundan, sistem pemadam redundan, sistem keamanan redundan, serta banyak pengamanan fisik
- Semua yang ada di data center dirancang dengan ketahanan dan redundansi (minimal N+1, kadang 2N) demi menjaga uptime
- Ini terutama pendapat yang berbasis rasa takut dan merupakan hasil dari pemasaran cloud yang sukses dan kampanye psyops
- AWS menaruh mesinnya di mana? Tempat ajaib di bawah pelangi?
- Bagaimana mungkin hanya mesin AWS yang secara ajaib terlindung dari masalah yang juga dimiliki data center lain?
- Bencana memang bisa terjadi (kebakaran OVH tahun 2021), jadi backup tetap diperlukan
- Tetapi dari pengalaman mengelola server selama sekitar 15 tahun, kejadian seperti itu jarang, dan tidak pernah mengalami downtime lebih dari beberapa menit
Mengelola server bukan pekerjaan penuh waktu
- Siapa pun yang cukup lama mengelola server tahu bahwa sebagian besar waktu habis di konfigurasi awal, setelah itu server relatif stabil
- Kerusakan hardware relatif jarang, dan begitu server berjalan, biasanya ia bekerja sempurna selama bertahun-tahun tanpa intervensi besar
- Mengelola server sendiri bukan pekerjaan penuh waktu
- Tidak perlu mempekerjakan tim devops berisi 5 orang
- Bahkan tidak perlu merekrut orang khusus server: kamu bisa melakukannya sendiri, dan itu tidak sesulit yang dibayangkan
- Claude dan ChatGPT punya pemahaman yang baik tentang sistem Linux dan cara mengelolanya, dan bisa dimintai bantuan
- Setelah tweet itu diposting, orang-orang mengira ini adalah pengalaman pertama mengelola server dan menganggap penulis terlalu optimistis tentang arti sebenarnya dari menjalankan server
- Penulis sudah punya pengalaman mengelola server sejak 2006
- Berawal dari mengedit skrip PHP dan mengunggahnya ke server FTP
- Belajar memasang WordPress, mengedit template WP, dan dari sana semuanya berkembang
- Itu pengalaman yang berharga dan mengajarkan dasar-dasarnya
- Belajar apa itu Linux dan cara menavigasinya
- Pada 2007, sampai meminta CD-ROM Ubuntu dari Canonical lewat pos lalu memasangnya di partisi komputer orang tua untuk belajar Linux
- Pengalaman awal seperti itu mengajarkan dasar pengembangan web, dan semua hal lain dibangun di atas fondasi tersebut
Pentingnya belajar Linux
- Developer generasi baru (Gen Z, Gen Alpha) benar-benar terputus dari hardware tempat software mereka berjalan
- Mereka tidak memiliki pengalaman dasar seperti ini
- Mereka lahir di era ketika orang acak di YouTube mengajarkan cara menjalankan perintah tertentu sambil mempromosikan vendor tertentu yang katanya bisa menyelesaikan semua masalah infrastruktur secara ajaib
- Wajar jika mereka memiliki asumsi magis tentang apa itu server dan bagaimana cara kerjanya
- Mereka mengaku bisa bekerja dengan "serverless" tanpa menyadari bahwa mereka tetap menjalankan kode di banyak box lain
- Tentu banyak juga yang belajar lebih dalam tentang Linux dan server, tetapi lulusan bootcamp rata-rata tidak punya pengalaman Linux praktik seperti para pengoprek FTP 20 tahun lalu
- Ini bukan penilaian moral, bukan soal baik atau buruk — ini hanya kondisi web development saat ini
- Akibatnya, perusahaan seperti Vercel menghasilkan jutaan dolar dengan memonetisasi developer generasi baru yang tidak benar-benar paham apa yang mereka lakukan dan belum pernah menjalankan server seumur hidup
- Ketidaktahuan datang dengan biaya ganda: biaya dari ketidaktahuan itu sendiri dan biaya yang dibayar ketika orang lain memanfaatkannya
- Kalau tidak tahu bagaimana sesuatu bekerja, itu benar-benar bisa menguras uang
Sekarang adalah waktu terbaik untuk belajar server
- Jika kamu belum pernah mengelola server sendiri dan takut pada semua hal yang berbau backend, itu tidak masalah
- Sebenarnya belum pernah ada waktu yang lebih baik dari sekarang untuk menjadi mahir dengan server
- Claude dan ChatGPT sama-sama sangat paham Linux dan bisa memandu langkah demi langkah dengan cara yang belum pernah ada sebelumnya dalam sejarah teknologi
- Bukan hanya membantu memahami cara setup dan cara kerjanya, tetapi juga memungkinkanmu bertanya dan mengikuti langkah saat perlu melakukan perubahan tanpa harus mempekerjakan siapa pun
- Ini tidak semenakutkan itu, dan juga tidak perlu dilakukan terlalu sering
- Di era AI ketika pembuatan kode menjadi standar dan kode bisa menjadi komoditas, mengetahui cara men-deploy kode itu ke server produksi murah dan benar-benar membuatnya berguna bagi pengguna akhir bisa menjadi pembeda utama sebagai developer
- Memang ada hal-hal seperti keamanan yang perlu diperhatikan
- Abaikan klaim bahwa mengelola server sendiri kurang aman dibanding menjalankan server di AWS, seolah-olah instance EC2 terlindungi secara ajaib dari hacker,
- Kenyataannya, mengatur semuanya dengan benar tidak sesulit itu, cukup merujuk pada panduan dan skrip setup
- Banyak developer yang lebih berpengalaman tetap bekerja jauh lebih buruk di production dibanding kamu yang dibantu AI
- Jika kamu meminta ChatGPT menjelaskan cara hardening server Linux dan mengikuti praktik keamanan terbaik (tidak memakai autentikasi password, hanya memakai SSH key yang kuat), maka 90% sudah selesai
- Cloudflare bisa memberi lapisan perlindungan tambahan
- Setelah box Linux dikunci dengan baik, jalankan Cloudflare di atas semuanya
- Jika IP server diproksi di DNS agar tidak terekspos, itu sudah sempurna
- Mendapat perlindungan DDoS, edge caching, dan DNS kelas atas secara nyaris gratis
Belum ada komentar.