ราคา AWS Fargate: Cost Breakdown, การคำนวณ และ Tip การลด (Optimize) Cost

PlAwAnSaI

Administrator
AWS Fargate คืออะไร ทำงานยังไง?:

AWS Fargate เป็น Service ประมวลผล (Compute) แบบ Serverless ที่ช่วยให้คุณสามารถเรียกใช้ Container ได้โดยไม่ต้องจัดการ Server หรือ Cluster

452016105_521422110217591_4513677367443059108_n.jpg

เมื่อคุณ Deploy App แบบ Container บน Fargate ขั้นแรกคุณจะต้องระบุรายละเอียด เช่น Container Image, ขนาด CPU, หน่วยความจำ และข้อมูลเครือข่าย ฯลฯ จากนั้น Fargate จะใช้ค่าพวกนี้ กำหนดจำนวนงาน (Task) ที่ควรจะ Run และจัดการ Deploy Container ให้คุณ

เบื้องหลัง Fargate ใช้ Elastic Container Service (ECS) เพื่อจัดเตรียมและจัดการ Container มันช่วยคุณ Schedule Container, การปรับขนาด และ Balance Load เมื่อ Task Fargate Launch มันจะทำงานใน Environment ที่แยกจากกัน (Isolate) พร้อมกับ Stack เครือข่ายของตัวเอง ทำให้ช่วยเพิ่มความปลอดภัยระหว่าง Task ต่างๆ

เราจะลด Cost ของ Fargate ได้ยังไงบ้าง?:
451969454_521422123550923_8835348480659170385_n.jpg

ถ้าเราบอกคุณว่าคุณจะได้รับผลตอบแทนจากการลงทุน (Return Of Investment/ROI) มากขึ้นจากการใช้งาน Fargate ของคุณ? ใช่! AWS นำเสนอวิธีสำหรับธุรกิจในการประหยัดค่าใช้จ่ายด้วย Fargate ซึ่งเราจะกล่าวถึงด้านล่างนี้ นอกจากนี้เรายังจะบอกถึงแนวทางปฏิบัติที่ดีที่สุด (Best Practice) ที่คุณสามารถใช้เพื่อประหยัด Cost Fargate โดยการเพิ่มประสิทธิภาพการใช้งาน Fargate, การจัดการปริมาณงานที่ดีขึ้น และการกำจัดทรัพยากรที่สูญเปล่า (Wasted)

  1. Fargate Spot

    AWS เปิดตัว Fargate Spot เพื่อลดต้นทุนของ Fargate โดยเสนออัตราที่ถูกกว่าเนื่องจาก Workload Container ของคุณจะทำงานบน Capacity สำรองที่มีอยู่ใน AWS มีข้อเสียเพียงอย่างเดียวคือคุณจะได้รับแจ้งล่วงหน้าเพียงสองนาทีหลังจากที่ AWS ต้องการ Capacity คืน

    ดังนั้น Fargate Spot จึงเหมาะกับ Workload และ Website หรือ API Server ที่ทนต่อข้อผิดพลาด (Fault) หรือทนต่อการหยุดชะงัก (Interruption) ได้ เนื่องจากโดยปกติแล้วมันจะประมวลผลคำขอที่มีระยะเวลาสั้น นอกจากนี้ยังเหมาะอย่างยิ่งสำหรับ Workload ที่สามารถขนานกันได้ เช่น การ Render รูปภาพ, การจำลองแบบ Monte Carlo, การประมวลผล Genome, หรือ Development Environment

    นอกจากนี้ คุณยังสามารถกำหนดค่า Configure Fargate ของคุณอย่างมีกลยุทธ์เพื่อปรับปรุงความคุ้มค่า ตัวอย่างเช่น คุณสามารถระบุจำนวน Task ขั้นต่ำที่ควร Run ตลอดเวลาบน Container Fargate ปกติได้ จากนั้นหากมีการเพิ่ม Task ให้ไป Run บน Fargate Spot เมื่อ Capacity สำรองยังเหลืออยู่, Fargate Spot จะเพิ่มหรือลดขนาดโดยอัตโนมัติตามความพร้อมใช้งาน

    ภาพด้านล่างนี้ สมมติว่าหากคุณต้องการใช้งาน Container หกตัว คุณสามารถแจกจ่ายครึ่งนึงให้กับ Fargate ปกติ และอีกครึ่งนึงให้กับ Instance Fargate Spot
    452010014_521422093550926_122299247034304403_n.jpg

    ด้านล่างนี้คือการเปรียบเทียบระหว่างราคา Fargate ปกติและราคา Fargate Spot ของ Region สิงคโปร์

    ราคา Instance ปกติราคา Fargate Spotประหยัดไป
    ต่อ vCPU ต่อชั่วโมง1.82 ฿0.54 ฿70%
    ต่อ GB ต่อชั่วโมง0.36 ฿0.08 ฿70%

    Code:
    https://aws.amazon.com/fargate/pricing

  2. AWS Savings Plans

    อีกทางเลือกหนึ่งจาก AWS ในการประหยัด Cost คือ AWS Savings Plans เสนอราคาที่ต่ำกว่าเมื่อเทียบกับ Rate On-demand ด้วยรูปแบบการกำหนดราคาที่ยืดหยุ่น ด้วย Savings Plans คุณยอมรับการใช้งานคอมพิวเตอร์ตามจำนวนที่กำหนดโดยวัดเป็น $/ชั่วโมง เป็นระยะเวลาหนึ่งปีหรือสามปี
    Code:
    https://dev.classmethod.jp/articles/saving-plan-vs-reserved-instance-whats-the-difference

  3. Task Fargate ที่ปรับขนาดให้เหมาะสม
  4. Auto Scaling

    เป็นอีกเครื่องมือหนึ่งที่ช่วยให้แน่ใจว่า Cluster (Cluster ECS คือการจัดกลุ่ม Task/Service แบบ Logical) จะไม่ปรับขนาดโดยไม่จำเป็นเพื่อปรับ Cost Fargate ให้เหมาะสม เช่นเดียวกับการ Configure Resource ตามขนาดที่เหมาะสม คุณสามารถปรับแต่งการปรับขนาดอัตโนมัติของ Fargate ในการ Configure Service Fargate เพื่อลด Cost ได้

    การปรับขนาดอัตโนมัติตามเวลาที่กำหนด: คุณสามารถ Configure การปรับขนาดตามเวลาที่กำหนดซึ่งมีอยู่ในทั้ง ECS และ AWS Fargate ตัวอย่างเช่น คุณสามารถกำหนดเวลาให้ Service Fargate หยุดทำงานในช่วงนอกเวลาทำการและวันหยุดสุดสัปดาห์ได้ ซึ่งจะช่วยประหยัดเพิ่มอย่างมาก

    การปรับขนาดประเภทอื่นๆ ที่นำเสนอโดย AWS Fargate ได้แก่:

    การ Track Target: เมื่อคุณเพิ่มหรือลดจำนวน Task ตาม Metric เฉพาะ ตัวอย่างเช่น คุณอาจกำหนดให้เมื่อมีการใช้งาน CPU 75% ถึงจะมีการ Scale เพิ่ม Task สำหรับ Service ที่ใช้ CPU มาก
    452016237_521422076884261_4420475068138912634_n.jpg

  5. การ Tag Resource
  6. ใช้ Feature หลาย Load Balancer Target Group
Code:
https://www.simform.com/blog/aws-fargate-pricing
:cool:
 
Last edited:
Top