1 poin oleh GN⁺ 2024-12-02 | 1 komentar | Bagikan ke WhatsApp

Hetzner

  • Migrasi ke Hetzner terutama dilakukan untuk penghematan biaya. Harga Hetzner kompetitif secara global.
  • Hetzner menyediakan virtual machine dan bare metal machine; fiturnya lebih terbatas dibanding AWS, tetapi dikompensasi oleh harganya.
  • Setelah pindah ke Hetzner, biaya infrastruktur berkurang lebih dari 75%.

Kubernetes on Hetzner

Kubernetes yang dikelola sendiri

  • Kubernetes dijalankan di DigitalOcean, dan di Hetzner juga dijalankan dengan pendekatan self-managing.
  • Hetzner tidak menyediakan managed Kubernetes control plane, sehingga harus dikelola langsung.
  • Node dikelola dan dikonfigurasi menggunakan Terraform dan Puppet.

Peran node

  • Aturan penamaan node digunakan untuk menjaga peran di dalam cluster tetap sederhana: control-plane, worker, database.
  • Menambahkan peran itu mudah, tetapi dapat mengurangi efisiensi penggunaan resource.

Pembangunan node

  • Cluster di-bootstrap menggunakan Terraform.
  • Hetzner menyediakan managed firewall dan networking, yang mudah dikonfigurasi dengan Terraform.
  • Server dikelola sepenuhnya dengan Terraform, dan module per peran dibuat agar penambahan server menjadi sederhana.

Networking

  • Koneksi administrasi ke node dilakukan menggunakan Tailscale VPN.
  • Tailscale menyediakan NAT hole punching sehingga koneksi tetap aman meski port ditutup.
  • Port diblokir menggunakan managed firewall dari Hetzner dan UFW di Ubuntu.
  • Calico digunakan untuk mengonfigurasi container networking interface.

Storage

  • Hetzner menyediakan nVME SSD dan block storage berbasis SSD.
  • Volume Hetzner tidak memiliki fitur snapshot, sehingga backup data harus dilakukan secara manual.
  • Pada node database, Local Persistence Volume Static Provisioner digunakan untuk melakukan pra-provisioning volume lokal.

Backup

  • Hetzner tidak menyediakan backup volume, tetapi menyediakan backup untuk seluruh server.
  • Namespace dan PVC dibackup menggunakan Velero dari VMware.
  • Untuk Postgres, digunakan pgBackRest.

Fitur tambahan

  • SealedSecrets digunakan untuk mengelola secret.
  • Node Exporter, Prometheus, Grafana, dan Loki digunakan untuk memantau cluster.
  • Alertmanager digunakan untuk integrasi notifikasi dengan Slack.

Pemikiran tentang menjalankan Kubernetes di Hetzner

  • Migrasi ke Hetzner memakan waktu sekitar 1 minggu, dengan tambahan 4 minggu untuk pengujian dan tuning.
  • Harga Hetzner masuk akal, dan diyakini akan tetap lebih rendah dibanding penyedia lain.
  • Ada keterbatasan terkait masalah kualitas IP dan layanan pelanggan Hetzner.
  • Hetzner cepat meluncurkan fitur baru, tetapi juga dapat cepat menghentikan layanan yang kurang menguntungkan.
  • Lokasi data center di Eropa Tengah berada di Falkenstein dan Nuremberg di Jerman, serta Helsinki di Finlandia.

Ringkasan

  • Transisi ini berjalan lancar, memangkas biaya infrastruktur lebih dari 75% dan menggandakan resource komputasi cluster.
  • Hetzner adalah pilihan yang sangat menguntungkan jika perlu menekan biaya.
  • Controller open source Hetzner memudahkan pengelolaan load balancer dan pemasangan volume persisten secara berkelanjutan.

1 komentar

 
GN⁺ 2024-12-02
Opini Hacker News
  • Menunjukkan bahwa tidak ada penyebutan tentang keberlanjutan atau 'green hosting', serta menyebutkan bahwa pusat data Hetzner di Eropa menggunakan energi ramah lingkungan, tetapi yang di AS tidak
  • Membagikan pengalaman menjalankan klaster Kubernetes di Hetzner, dan menjelaskan bahwa biayanya bisa serendah 20% dibandingkan AWS, tetapi ada banyak trade-off yang menyertainya
    • Harus mengelola sendiri pembaruan klaster Kubernetes, mengalami berbagai bug pada Ceph dan Kubernetes, serta menekankan bahwa dibutuhkan banyak pekerjaan dan pemantauan
    • Menggunakan penyedia cloud besar seperti AWS mengurangi beban operasional berkat layanan terkelola
    • Menjelaskan bahwa Hetzner memang murah, tetapi waktu tambahan untuk pekerjaan DevOps bisa menghapus penghematan tersebut
  • Membagikan pengalaman pernah memblokir IP Hetzner dari pengalaman web hosting di masa lalu, dan menyinggung masalah yang terkait dengan penyedia VM murah
  • Membagikan ide penghematan biaya terkait Kubernetes, dengan mengusulkan gagasan menyiapkan klaster yang mencampurkan node on-premise dan node dari penyedia cloud
    • Berpendapat bahwa biaya egress akan menjadi variabel utama
  • Merasa penjelasan tentang klaster dan workload kurang memadai, dan menyebutkan ingin mengetahui besaran absolut dari biaya yang berhasil dihemat
  • Merekomendasikan sebuah proyek GitHub sebagai cara untuk menyiapkan dan mengelola Kubernetes di Hetzner
  • Membagikan pengalaman server game sempat down karena masalah pada sistem dukungan Hetzner, dan mengingatkan agar berhati-hati
  • Membagikan pengalaman mengimplementasikan operator tipis untuk mengintegrasikan load balancer Hetzner ke Kubernetes, serta memperkenalkan proyek terkait
  • Beralih dari Heroku ke DigitalOcean dan mengalami penghematan biaya 75%, serta memperkirakan bahwa jika beralih ke Hetzner, penghematannya bisa mencapai 93%
  • Meluruskan kesalahpahaman tentang klaster terkelola DigitalOcean, dengan menjelaskan bahwa biaya node tidak ditambahkan secara terpisah, dan menekankan daya tarik DigitalOcean