Hetzner
- การย้ายไปใช้ Hetzner มีเป้าหมายหลักเพื่อประหยัดค่าใช้จ่าย โดยราคาของ Hetzner สามารถแข่งขันได้ในระดับโลก
- Hetzner ให้บริการทั้งเครื่องเสมือนและเครื่อง bare metal แม้จะมีข้อจำกัดมากกว่า AWS แต่ก็ชดเชยด้วยราคา
- หลังย้ายไปใช้ Hetzner สามารถลดค่าใช้จ่ายด้านโครงสร้างพื้นฐานได้มากกว่า 75%
Kubernetes บน Hetzner
Kubernetes แบบจัดการเอง
- เคยรัน Kubernetes บน DigitalOcean และบน Hetzner ก็ใช้งานในรูปแบบจัดการเองเช่นกัน
- Hetzner ไม่มี managed Kubernetes control plane ให้ จึงต้องดูแลเองโดยตรง
- ใช้ Terraform และ Puppet ในการจัดการและตั้งค่าโหนด
บทบาทของโหนด
- ใช้กฎการตั้งชื่อโหนดเพื่อให้บทบาทในคลัสเตอร์เรียบง่าย:
control-plane, worker, database
- การเพิ่มบทบาททำได้ง่าย แต่ก็อาจลดประสิทธิภาพในการใช้ทรัพยากร
การสร้างโหนด
- ใช้ Terraform ในการ bootstrap คลัสเตอร์
- Hetzner มีไฟร์วอลล์และระบบเครือข่ายแบบจัดการให้ ซึ่งสามารถตั้งค่าผ่าน Terraform ได้ง่าย
- เซิร์ฟเวอร์ทั้งหมดถูกจัดการด้วย Terraform โดยเขียนโมดูลแยกตามบทบาทเพื่อให้เพิ่มเซิร์ฟเวอร์ได้ง่าย
เครือข่าย
- ใช้ Tailscale VPN สำหรับการเชื่อมต่อเพื่อจัดการโหนด
- Tailscale รองรับ NAT hole punching ทำให้เชื่อมต่อได้อย่างปลอดภัยแม้จะปิดพอร์ตไว้
- ใช้ทั้งไฟร์วอลล์แบบจัดการของ Hetzner และ UFW ของ Ubuntu เพื่อบล็อกพอร์ต
- ใช้ Calico ในการตั้งค่า container networking interface
สตอเรจ
- Hetzner ให้บริการทั้ง nVME SSD และ block storage ที่ใช้ SSD
- โวลุ่มของ Hetzner ไม่มีฟังก์ชัน snapshot ดังนั้นจึงต้องสำรองข้อมูลด้วยตนเอง
- สำหรับโหนดฐานข้อมูล ใช้ Local Persistence Volume Static Provisioner เพื่อ pre-provision โวลุ่มภายในเครื่อง
การสำรองข้อมูล
- Hetzner ไม่มีการสำรองข้อมูลระดับโวลุ่ม แต่มีการสำรองทั้งเซิร์ฟเวอร์
- ใช้ Velero ของ VMware เพื่อสำรอง namespace และ PVC
- สำหรับ Postgres ใช้ pgBackRest
ฟีเจอร์เพิ่มเติม
- ใช้ SealedSecrets สำหรับจัดการข้อมูลลับ
- ใช้ Node Exporter, Prometheus, Grafana, Loki สำหรับมอนิเตอร์คลัสเตอร์
- ใช้ Alertmanager เพื่อเชื่อมต่อการแจ้งเตือนกับ Slack
ความเห็นต่อการรัน Kubernetes บน Hetzner
- การย้ายไป Hetzner ใช้เวลาประมาณ 1 สัปดาห์ และใช้เวลาอีก 4 สัปดาห์สำหรับการทดสอบและปรับแต่งเพิ่มเติม
- ราคาของ Hetzner สมเหตุสมผล และเชื่อว่าจะยังคงต่ำกว่าผู้ให้บริการรายอื่น
- Hetzner มีข้อจำกัดเรื่องคุณภาพ IP และการบริการลูกค้า
- Hetzner ออกฟีเจอร์ใหม่ค่อนข้างเร็ว แต่บริการที่ทำกำไรได้น้อยก็อาจถูกยุติอย่างรวดเร็วเช่นกัน
- ศูนย์ข้อมูลในยุโรปกลางตั้งอยู่ที่ Falkenstein, Nuremberg ในเยอรมนี และ Helsinki ในฟินแลนด์
สรุป
- การเปลี่ยนผ่านครั้งนี้เป็นไปอย่างราบรื่น ลดค่าใช้จ่ายโครงสร้างพื้นฐานได้มากกว่า 75% และเพิ่มทรัพยากรคอมพิวต์ของคลัสเตอร์เป็นสองเท่า
- Hetzner เป็นตัวเลือกที่คุ้มค่ามากหากต้องการลดต้นทุน
- คอนโทรลเลอร์โอเพนซอร์สของ Hetzner ช่วยให้การจัดการ load balancer และการเชื่อมต่อ persistent volume ทำได้ง่ายขึ้น
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News