AWS Thai Blog

ค่าใช้จ่ายในการถ่ายโอนข้อมูลสำหรับสถาปัตยกรรมทั่วไป

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

การถ่ายโอนข้อมูลระหว่าง AWS และอินเตอร์เน็ต

การถ่ายโอนข้อมูลขาเข้ามายังทุกๆ บริการ ในทุกๆ ภูมิภาค (Region) นั้นไม่มีการคิดค่าใช้จ่าย  ส่วนการถ่ายโอนข้อมูลจาก AWS ไปสู่อินเตอร์เน็ตนั้นจะถูกคิดค่าใช้จ่ายตามแต่ละบริการ ด้วยอัตราที่แตกต่างกันตามภูมิภาคต้นทาง ตัวอย่างเช่น หน้าราคาอ้างอิง ของ Amazon Elastic Compute Cloud (Amazon EC2)

การถ่ายโอนข้อมูลภายใน AWS

การถ่ายโอนข้อมูลภายใน AWS นั้นอาจเกิดจากเวิร์คโหลดไปยังบริการ AWS อื่นๆ หรืออาจเกิดระหว่างส่วนประกอบต่างๆ ของเวิร์คโหลด เราก็ได้

การถ่ายโอนข้อมูลระหว่างเวิร์คโหลดกับบริการ AWS อื่นๆ

เมื่อเวิร์คโหลดของเราเข้าถึงบริการ AWS ต่างๆ อาจจะมีค่าใช้จ่ายในการถ่ายโอนข้อมูล

การเข้าถึงบริการภายในภูมิภาค AWS เดียวกัน

ถ้า internet gateway ถูกใช้ในการเข้าถึง public endpoint ของบริการที่อยู่ภายในภูมิภาคเดียวกัน ( รูปที่ 1 – Pattern 1) จะไม่มีค่าใช้จ่ายในการถ่ายโอนข้อมูล  แต่ถ้า NAT gateway ถูกใช้ในการเข้าถึงบริการเดียวกัน (รูปที่ 1 – Pattern 2) จะมีค่าใช้จ่าย (ต่อ GB) ในส่วนของ data processing สำหรับข้อมูลที่ผ่านเกตเวย์

รูปที่ 1 การเข้าถึงบริการ AWS ภายในภูมิภาคเดียวกัน

การเข้าถึงบริการ AWS ข้ามภูมิภาค

ถ้าหากเวิร์คโหลดของเราเข้าถึงบริการที่อยู่ในภูมิภาคที่แตกต่างกัน (รูปที่ 2) จะมีค่าใช้จ่ายในการถ่ายโอนข้อมูลข้ามภูมิภาค  ซึ่งค่าใช้จ่ายจะขึ้นอยู่กับภูมิภาคต้นทางและปลายทาง (ตามที่อธิบายในหน้าแสดงราคาการถ่ายโอนข้อมูล Amazon EC2)

รูปที่ 2 การเข้าถึงบริการ AWS ในภูมิภาคที่แตกต่างกัน

การถ่ายโอนข้อมูลระหว่างองค์ประกอบต่างๆ ของเวิร์คโหลด

ในการถ่ายโอนข้อมูลระหว่างส่วนประกอบต่างๆ ของเวิร์คโหลดนั้นอาจมีการคิดค่าใช้จ่า โดยค่าใช้จ่ายจะขึ้นอยู่กับว่าส่วนประกอบนั้นๆ ถูกสร้างไว้ที่ไหน

ส่วนประกอบของเวิร์คโหลดภายในภูมิภาค AWS เดียวกัน

การถ่ายโอนข้อมูลภายใน Availability Zone เดียวกันนั้นไม่มีค่าใช้จ่าย แต่โดยทั่วไปแล้วเรามักจะสร้างเวิร์คโหลดในหลายๆ Availability Zone เพื่อที่จะได้ high availability
เราลองมาพิจารณาเวิร์คโหลดที่มีแอพพลิเคชั่นเซิร์ฟเวอร์สองตัวอยู่บนบน Amazon EC2 และมีฐานข้อมูลอยู่บน Amazon Relational Database Service (Amazon RDS) for MySQL (รูปที่ 3) เพื่อที่จะรองรับ high availability เซิร์ฟเวอร์แอพพลิเคชั่นแต่ละเครื่องได้ถูกสร้างไว้บน Availability Zone ที่แตกต่างกัน
การใช้งานในรูปแบบนี้จะมีค่าใช้จ่ายการถ่ายโอนข้อมูลข้าม Availability Zone ระหว่างเครื่อง EC2  และมีค่าใช้จ่ายการถ่ายโอนข้อมูลระหว่าง Amazon EC2 และ Amazon RDS ที่ข้าม Availability Zone ด้วย  สามารถตรวจสอบ Amazon RDS for MySQL Pricing Guide เพื่อดูข้อมูลเพิ่มเติม

รูปที่ 3: ส่วนประกอบต่างๆของเวิร์คโหลดข้าม Availability Zone

รูปที่ 3: ส่วนประกอบต่างๆของ เวิร์คโหลด ข้าม Availability Zone

เพื่อลดผลกระทบของจากฐานข้อมูลขัดข้อง เราสามารถกำหนดค่า multi-Availability Zone ใน Amazon RDS เพื่อจะสร้างอินสแตนซ์สำรอง (standby instance) ไว้ใน Availability Zone ที่แตกต่างกัน  การทำ Replication ระหว่างอินสแตนซ์หลักและอินสแตนซ์สำรองนั้นไม่มีค่าใช้จ่ายในการถ่ายโอนข้อมูลเพิ่มเติม อย่างไรก็ตามจะมีการคิดค่าใช้จ่ายการถ่ายโอนข้อมูลจากส่วนประกอบที่อยู่บน Availabiltiy Zone ที่ต่างไปจากอินสแตนซ์หลักในขณะนั้น มาใช้งานฐานข้อมูล สามารถเข้าไปดูหน้าราคา Amazon RDS เพื่อดูรายละเอียดเพิ่มเติมได้

อีกรูปแบบที่ใช้กันทั่วไปคือ การสร้างเวิร์คโหลดในหลายๆ VPC ภายในเครือข่ายของ AWS โดยมีสองแนวทางในการเชื่อมการสื่อสารระหว่าง VPC  คือ VPC peering connections และ AWS Transit Gateway

การถ่ายโอนข้อมูลผ่าน VPC peering connection ที่อยู่ภายใน Availability Zone เดียวกันนั้นไม่มีค่าใช้จ่าย แต่การถ่ายโอนข้อมูลด้วย  VPC peering connection ที่ข้าม Availability Zone จะคิดค่าใช้จ่ายสำหรับข้อมูลขาเข้าและขาออก

รูปที่ 4. การเชื่อมต่อแบบ VPC peering

Transit Gateway สามารถใช้เชื่อมต่อ VPC หลายร้อยหรือหลายพัน VPC เข้าด้วยกันได้ (รูปที่ 5) ทั้งนี้องค์ประกอบค่าใช้จ่ายของ Transit Gateway จะประกอบด้วยค่าใช้จ่ายรายชั่วโมงสำหรับแต่ละ VPC / AWS Direct Connect / AWS Site-to-Site VPN ที่เชื่อมต่อ และจะมีค่าบริการ ต่อ GB สำหรับการประมวลผลข้อมูลที่ส่งจาก VPC / Direct Connect / VPN มายัง Transit Gateway

รูปที่ 5. การเชื่อมต่อ VPC ด้วย Transit Gateway ภายในภูมิภาคเดียวกัน

ส่วนประกอบของเวิร์คโหลดในภูมิภาค AWS ที่แตกต่างกัน

หากส่วนประกอบของเวิร์คโหลดมีการสื่อสารข้ามภูมิภาคโดยใช้ VPC peering connections หรือ Transit Gateway จะมีค่าใช้จ่ายในถ่ายโอนข้อมูลเพิ่มเติม ถ้าใช้การ peer VPC ข้ามภูมิภาค จะมีการคิดค่าใช้จ่ายตามราคาการถ่ายโอนข้อมูลข้ามภูมิภาคมาตรฐาน (รูปที่ 6)

รูปที่ 6. VPC peering ข้ามภูมิภาค

สำหรับ Transit Gateway ที่ถูก peer เข้าหากันจะเสียค่าใช้จ่ายในการประมวลผลข้อมูลเพียงฝั่งเดียว ค่าใช้จ่ายในการประมวลข้อมูลนั้นจะไม่คิดกับข้อมูลที่ส่งจาก Transit Gateway peering ที่เชื่อมต่อมายัง Transit Gateway ปลายทาง ในขณะที่การถ่ายโอนข้อมูลสำหรับ peering ข้ามภูมิภาคจะถูกคิดค่าใช้จ่ายเพิ่มเติมนอกเหนือจากการเชื่อมต่อแบบอื่นๆ (รูปที่ 7)

รูปที่ 7. Transit Gateway peering ข้ามภูมิภาค

การถ่ายโอนข้อมูลระหว่าง AWS กับศูนย์ข้อมูลภายในองค์กร

การถ่ายโอนข้อมูลจะเกิดขึ้นเมื่อเวิร์คโหลดต้องการเข้าถึงทรัพยากรที่อยู่ในศูนย์ข้อมูลขององค์กร โดยทั่วไปแล้วมีสองทางเลือกสำหรับการเชื่อมต่อลักษณะนี้ ได้แก่ Site-to-Site VPN กับ Direct Connect

การถ่ายโอนข้อมูลผ่าน AWS Site-to-Site VPN

ทางเลือกหนึ่งของการเชื่อมต่อไปยังศูนย์ข้อมูลภายในองค์กรคือการใช้ Site-to-Site VPN หนึ่งการเชื่อมต่อหรือมากกว่า (รูปที่ 8 – Pattern 1) ซึ่งจะมีค่าใช้จ่ายต่อชั่วโมงสำหรับการเชื่อมต่อและค่าใช้จ่ายจากการถ่ายโอนข้อมูลจาก AWS สามารถอ้างอิงค่าใช้จ่ายได้จาก ราคา AWS Site-to-Site VPN
อีกทางเลือกหนึ่งคือการเชื่อมต่อหลายๆ VPC ไปยัง on-premise network ด้วยการใช้ Site-to-Site VPN connection ไปยัง Transit Gateway (รูปที่ 8 – Pattern 2) ทั้งนี้จะถือว่า Site-to-Site VPN เป็นอีกหนึ่งการเชื่อมต่อบน Transit Gateway และจะมีค่าใช้จ่ายตาม ราคา AWS Transit Gateway

รูปที่ 8. รูปแบบ Site-to-Site VPN

การถ่ายโอนข้อมูลผ่าน AWS Direct Connect

เราสามารถใช้ Direct Connect เพื่อเชื่อมต่อเวิร์คโหลดบน AWS ไปยังเครือข่ายภายในองค์กรได้ โดย Direct Connect จะคิดค่าธรรมเนียมรายชั่วโมงสำหรับ port ที่เชื่อมต่อและค่าใช้จ่ายในการถ่ายโอนข้อมูลที่ไหลออกจาก AWS ส่วนการถ่ายโอนข้อมูลเข้ามาสู่ AWS จากทุกสถานที่นั้นจะไม่มีค่าใช้จ่าย

ค่าใช้จ่ายในการถ่ายโอนข้อมูลขาออกนั้นจะขึ้นอยู่กับภูมิภาคต้นทางและสถานที่ของผู้ให้บริการ Direct Connect นอกจากนั้น Direct Connect สามารถเชื่อมต่อกับ Transit Gateway (ผ่าน Direct Connect Gateway) ในกรณีที่ต้องการเชื่อมต่อกับหลายๆ VPC (รูปที่ 9)

Direct Connect จะถูกนับเป็นอีกการเชื่อมต่อบน Transit Gateway และจะมีการคิดค่าใช้บริการตามราคา Transit Gateway มาตรฐาน โดยสามารถอ้างอิงถึง ราคา AWS Direct Connect เพื่อดูข้อมูลเพิ่มเติม

Figure 9. Direct Connect patterns.jpg รูปที่ 9. รูปแบบต่างๆของ Direct Connect

รูปที่ 9. รูปแบบ Direct Connect

Direct Connect gateway สามารถนำมาใช้เพื่อแชร์ Direct Connect ข้ามหลายๆ ภูมิภาคได้  ทั้งนี้เมื่อใช้ Direct Connect gateway จะมีค่าใช้จ่ายส่วนข้อมูลขาออกตามภูมิภาคต้นทางและสถานที่ของ Direct Connect (รูปที่ 10)

รูปที่ 10. Direct Connect Gateway

เคล็ดลับทั่วไป

ค่าใช้จ่ายในการถ่ายโอนข้อมูลจะคิดตามต้นทาง ปลายทางและปริมาณของข้อมูล ซึ่งต่อไปนี้จะเป็นเคล็ดลับทั่วไปเมื่อเริ่มออกแบบสถาปัตยกรรมของคุณ

  • หลีกเลี่ยงการกำหนดเส้นทางรับส่งข้อมูลผ่านอินเตอร์เน็ต เมื่อเชื่อมต่อไปยังบริการ AWS จากภายใน AWS เอง ด้วยการใช้ VPC endpoint
    • VPC gateway endpoint อนุญาตให้เชื่อมต่อไปยัง Amazon S3 และ Amazon DynamoDB ภายในภูมิภาคเดียวกันโดยไม่มีค่าใช้จ่ายในการถ่ายโอนข้อมูลฃ
    • VPC interface endpoint มีให้ใช้สำหรับบางบริการของ AWS โดยที่ endpoint ประเภทนี้จะมีค่าบริการรายชั่วโมงและมีค่าใช้จ่ายสำหรับการถ่ายโอนข้อมูลต่าง
  • ใช้ Direct Connect แทนการใช้อินเตอร์เน็ตในการส่งข้อมูลไปยังศูนย์ข้อมูลภายในองค์กร
  • การส่งข้อมูลข้าม Availability Zone โดยทั่วไปแล้วจะถูกคิดค่าใช้จ่ายในการถ่ายโอนข้อมูล ดังนั้นเราควรเลือกใช้ resources ที่อยู่ใน Availability Zone เดียวกันถ้าสามารถทำได้
  • การส่งข้อมูลข้ามขอบเขตภูมิภาค โดยทั่วไปแล้วจะถูกคิดค่าใช้จ่ายในการถ่ายโอนข้อมูล เราควรหลีกเลี่ยงการถ่ายโอนข้อมูลข้ามภูมิภาคยกเว้นมีความจำเป็นต้องใช้สำหรับกรณีทางธุรกิจ
  • ใช้ AWS Free Tier ซึ่งในบางกรณีคุณอาจจะสามารถทดสอบเวิร์คโหลด ได้โดยไม่มีค่าใช้จ่าย
  • ใช้ AWS Pricing Calculator เพื่อช่วยในการประเมินค่าใช้จ่ายของการถ่ายโอนข้อมูลในโซลูชั่นของคุณ
  • ใช้แดชบอร์ดเพื่อช่วยให้เห็นภาพค่าใช้จ่ายในการถ่ายโอนข้อมูลได้ดีขึ้น ซึ่งสามารถดูวิธีการได้ตาม workshop นี้

บทสรุป

AWS ให้ความสามารถในการสร้างเวิร์คโหลดข้าม Availability Zone และ Region ได้ง่าย โดยเราสามารถสร้างเวิรํคโหลดแบบ distributed ได้เพียงในไม่กี่คลิก เมื่อมีการใช้งานเพิ่มขึ้นทั่วทั้ง AWS การทำความเข้าใจค่าบริการการถ่ายโอนข้อมูลในลักษณะต่างๆ จะช่วยเราในการออกแบบและดูแลระบบได้มาก บล็อกโพสนี้ได้ให้ข้อมูลเพื่อช่วยตัดสินใจและวิเคราะห์สถาปัตยกรรมรูปแบบต่างๆ เพื่อประหยัดค่าใช้จ่ายในการถ่ายโอนข้อมูล

โพสต์ที่เกี่ยวข้องอื่นๆ