การเปรียบเทียบต้นทุนบน Kubernetes ที่มีการจัดการ (2020)

บันทึก. แปล: Sid Palas วิศวกร DevOps ชาวอเมริกัน กำลังใช้งาน ประกาศล่าสุดของ Google Cloud เพื่อเป็นแนวทางในการให้ข้อมูล ฉันเปรียบเทียบต้นทุนของบริการ Managed Kubernetes (ในการกำหนดค่าที่แตกต่างกัน) จากผู้ให้บริการระบบคลาวด์ชั้นนำของโลก ข้อได้เปรียบเพิ่มเติมของงานของเขาคือการตีพิมพ์ Jupyter Notebook ที่เกี่ยวข้องซึ่งช่วยให้ (มีความรู้ขั้นต่ำเกี่ยวกับ Python) สามารถปรับการคำนวณที่ดำเนินการให้เหมาะกับความต้องการของคุณ

TL; DR: Azure และ Digital Ocean ไม่คิดค่าบริการสำหรับทรัพยากรการประมวลผลที่ใช้สำหรับ Control Plane ทำให้เป็นตัวเลือกที่ดีในการปรับใช้คลัสเตอร์ขนาดเล็กจำนวนมาก สำหรับการเรียกใช้คลัสเตอร์ขนาดใหญ่จำนวนไม่มาก GKE เหมาะสมที่สุด นอกจากนี้ คุณยังสามารถลดต้นทุนได้อย่างมากโดยใช้โหนดแบบสปอต/แบบชั่วคราว/แบบลำดับความสำคัญต่ำ หรือโดย “การสมัคร” เพื่อใช้งานโหนดเดียวกันในระยะยาว (ใช้ได้กับทุกแพลตฟอร์ม)

การเปรียบเทียบต้นทุนบน Kubernetes ที่มีการจัดการ (2020)
ขนาดคลัสเตอร์ (จำนวนคนทำงาน)

ภาพรวม

ประกาศ Google Cloud ล่าสุด การประกาศของ GKE ที่จะเรียกเก็บเงิน 10 เซนต์ต่อชั่วโมงคลัสเตอร์สำหรับแต่ละชั่วโมงคลัสเตอร์ทำให้ฉันเริ่มวิเคราะห์ราคาของข้อเสนอ Kubernetes ที่มีการจัดการหลักๆ

การเปรียบเทียบต้นทุนบน Kubernetes ที่มีการจัดการ (2020)
การประกาศครั้งนี้ทำให้บางคนไม่พอใจอย่างมาก...

ตัวละครหลักของบทความคือ:

การแจกแจงต้นทุน

ต้นทุนรวมของการใช้ Kubernetes ในแต่ละแพลตฟอร์มประกอบด้วยองค์ประกอบต่อไปนี้:

  • ค่าธรรมเนียมการจัดการคลัสเตอร์
  • โหลดบาลานซ์ (สำหรับทางเข้า);
  • ทรัพยากรคอมพิวเตอร์ (vCPU และหน่วยความจำ) ของผู้ปฏิบัติงาน
  • การจราจรขาออก;
  • การจัดเก็บถาวร
  • การประมวลผลข้อมูลโดยโหลดบาลานเซอร์

นอกจากนี้ ผู้ให้บริการระบบคลาวด์ยังเสนอส่วนลดจำนวนมากหากลูกค้าต้องการ/สามารถใช้ได้โดยยอมให้มีการยอมจำนนก่อนได้ จุด หรือโหนดที่มีลำดับความสำคัญต่ำ หรือรับรองว่าจะใช้โหนดเดียวกันเป็นเวลา 1-3 ปี

ควรเน้นย้ำว่าแม้ว่าต้นทุนจะเป็นพื้นฐานที่ดีในการเปรียบเทียบและประเมินผู้ให้บริการ แต่ควรคำนึงถึงปัจจัยอื่นๆ ด้วย:

  • สถานะการออนไลน์ (ข้อตกลงระดับการให้บริการ);
  • ระบบนิเวศคลาวด์โดยรอบ
  • K8 เวอร์ชันที่มีให้บริการ
  • คุณภาพของเอกสาร/ชุดเครื่องมือ

อย่างไรก็ตาม ปัจจัยเหล่านี้อยู่นอกเหนือขอบเขตของบทความ/การศึกษานี้ ใน โพสต์เดือนกุมภาพันธ์ในบล็อก StackRox มีการพูดคุยถึงปัจจัยที่ไม่ใช่ราคาสำหรับ EKS, AKS และ GKE โดยละเอียด

สมุดบันทึกจูปีเตอร์

เพื่อให้ง่ายต่อการค้นหาโซลูชันที่ให้ผลกำไรสูงสุด ฉันได้พัฒนา สมุดบันทึกจูปีเตอร์โดยใช้ plotly + ipywidgets ในนั้น ช่วยให้คุณสามารถเปรียบเทียบข้อเสนอของผู้ให้บริการสำหรับขนาดคลัสเตอร์และชุดบริการที่แตกต่างกัน

คุณสามารถฝึกฝนด้วย Notepad เวอร์ชันสดใน Binder:

การเปรียบเทียบต้นทุนบน Kubernetes ที่มีการจัดการ (2020)
Managed-kubernetes-price-exploration.ipynb บน mybinder.org

แจ้งให้เราทราบหากการคำนวณหรือการกำหนดราคาเดิมไม่ถูกต้อง (ซึ่งสามารถทำได้ผ่านปัญหาหรือดึงคำขอบน GitHub - นี่คือพื้นที่เก็บข้อมูล).

ผลการวิจัย

อนิจจา มีความแตกต่างมากเกินไปที่จะให้คำแนะนำที่เฉพาะเจาะจงมากกว่าที่รวมอยู่ในย่อหน้า TL; DR ในตอนเริ่มต้น อย่างไรก็ตาม ยังสามารถสรุปข้อสรุปบางประการได้:

  • ต่างจาก GKE และ EKS ตรงที่ AKS และ Digital Ocean จะไม่เรียกเก็บเงินสำหรับทรัพยากรเลเยอร์ควบคุม AKS และ DO จะทำกำไรได้มากกว่าหากสถาปัตยกรรมมีคลัสเตอร์ขนาดเล็กจำนวนมาก (เช่น หนึ่งคลัสเตอร์ต่อ นักพัฒนาทุกคน หรือ ลูกค้าทุกคน).
  • ทรัพยากรการประมวลผลที่มีราคาถูกกว่าเล็กน้อยของ GKE ทำให้มีผลกำไรมากขึ้นเมื่อขนาดคลัสเตอร์* เพิ่มขึ้น
  • การใช้โหนดที่ยอมให้มีการขัดจังหวะชั่วคราวหรือความสัมพันธ์ของโหนดในระยะยาวสามารถลดต้นทุนได้มากกว่า 50% หมายเหตุ: Digital Ocean ไม่มีส่วนลดเหล่านี้
  • ค่าธรรมเนียมขาออกของ Google สูงกว่า แต่ต้นทุนทรัพยากรการประมวลผลเป็นปัจจัยกำหนดในการคำนวณ (เว้นแต่ว่าคลัสเตอร์ของคุณจะสร้างข้อมูลขาออกจำนวนมาก)
  • การเลือกประเภทเครื่องตามความต้องการ CPU และหน่วยความจำสำหรับปริมาณงานของคุณจะช่วยให้คุณหลีกเลี่ยงการจ่ายเงินเพิ่มเติมสำหรับทรัพยากรที่ไม่ได้ใช้
  • Digital Ocean เรียกเก็บเงินสำหรับ vCPU น้อยกว่าและแพงกว่าสำหรับหน่วยความจำเมื่อเทียบกับแพลตฟอร์มอื่นๆ นี่อาจเป็นปัจจัยในการตัดสินใจสำหรับปริมาณงานการประมวลผลบางประเภท

*หมายเหตุ: การวิเคราะห์ใช้ข้อมูลสำหรับโหนดประมวลผลทั่วไป (จุดประสงค์ทั่วไป). เหล่านี้คืออินสแตนซ์ n1 GCP Compute Engine, อินสแตนซ์ m5 AWS ec2, เครื่องเสมือน Azure D2v3 และดรอปเล็ต DO พร้อม CPU เฉพาะ ในทางกลับกัน เป็นไปได้ที่จะทำการวิจัยเกี่ยวกับเครื่องเสมือนประเภทอื่นๆ (ระเบิดได้ ระดับเริ่มต้น) เมื่อมองแวบแรก ค่าใช้จ่ายของเครื่องเสมือนจะขึ้นอยู่กับจำนวน vCPU และจำนวนหน่วยความจำเป็นเชิงเส้นตรง แต่ฉันไม่แน่ใจว่าสมมติฐานนี้จะเป็นจริงสำหรับอัตราส่วนหน่วยความจำ/CPU ที่ไม่ได้มาตรฐานในระดับสูง

ในบทความ คู่มือต้นทุน Kubernetes ขั้นสูงสุด: AWS กับ GCP กับ Azure กับ Digital Oceanซึ่งเผยแพร่ในปี 2018 ใช้คลัสเตอร์อ้างอิงที่มี 100 vCPU คอร์ และหน่วยความจำ 400 GB สำหรับการเปรียบเทียบ ตามการคำนวณของฉัน คลัสเตอร์ที่คล้ายกันในแต่ละแพลตฟอร์มเหล่านี้ (สำหรับอินสแตนซ์ตามความต้องการ) จะมีราคาเป็นจำนวนต่อไปนี้:

  • AKS: 51465 USD/ปี
  • EKS: 43138 USD/ปี
  • GKE: 30870 USD/ปี
  • DO: 36131 USD/ปี

ฉันหวังว่าบทความนี้พร้อมกับสมุดบันทึกจะช่วยคุณประเมินข้อเสนอหลักของ Kubernetes ที่มีการจัดการ และ/หรือประหยัดเงินบนโครงสร้างพื้นฐานระบบคลาวด์โดยใช้ประโยชน์จากส่วนลดและโอกาสอื่นๆ

ปล.จากผู้แปล

อ่านเพิ่มเติมในบล็อกของเรา:

ที่มา: will.com

เพิ่มความคิดเห็น