Google เผยเทคนิคการทำงานของ Network Load Balancer ที่ใช้ใน Google Cloud Platform

google_cloud_platform

ในงาน Networked Systems Design and Implementation (NSDI) ปี 2016 Google ได้เผยรายละเอียดเกี่ยวกับ Maglev ซึ่งเป็นซอฟต์แวร์ Network Load Balancer ที่หน้าที่เป็น Google Compute Engine Load Balancing ซึ่งสามารถรับ Request ได้ถึงระดับ 1 ล้าน request ต่อวินาที

Google ได้มีการวิจัยและพัฒนาเทคโนโลยีทางด้านระบบเครือข่ายมาอย่างยาวนาน โดยมีการใช้งาน Load Balancer สำหรับ Google Service มาตั้งแต่ปี 2008 แต่จะแตกต่างกับ Jupiter Fabric ที่เป็นสถาปัตยกรรมเฉพาะทางสำหรับ Google Data Center เองอยู่พอสมควร เนื่องจาก Maglev สามารถทำงานได้บนเครื่อง Server ปกติ เช่นเดียวกับ Service อื่นๆของ Google Cloud Platform

โดยปกติแล้วอุปกรณ์ Hardware Load Balancer จะนิยมใช้วิธีการติดตั้งแบบ Active-passive สำหรับการทำ Failover ทำให้สูญเสียทรัพยากรเป็นจำนวนครึ่งหนึ่งเสมอ แต่ Maglev จะใช้วิธีการที่แตกต่างออกไป ด้วยการใช้งาน Equal-Cost Multi-Path routing (ECMP) สำหรับกระจาย Packet ที่เข้ามาไปยัง Maglev หลายๆตัว ด้วยวิธีการทำ Hashing เพื่อหา Backend Server ดังนั้นจะเสมือนกับว่า Maglev ทุกตัวจะทำงานแบบ Active ทั้งหมด หากมี Maglev ตัวใดตัวหนึ่งมีปัญหา ตัวอื่นสามารถทำงานทดแทนกันได้ทันที ซึ่งเป็นการทำ Redundancy เป็นแบบ N+1

 

google-maglev

นอกจากนี้ Google ยังมีระบบ Cluster Management ที่เรียกว่า Borg สำหรับวิศวกรของ Google ซึ่งใช้ในการย้าย Workload ระหว่าง Cluster ได้แบบยืดหยุ่น ช่วยให้สามารถจัดสรรทรัพยากรได้ง่ายมากยิ่งขึ้น เช่นเดียวกับ Google Cloud Platform ผู้ใช้งานสามารถทำการย้าย Workload ไปมาระหว่าง Zones หรือ Regions ได้ทันที

Maglev ช่วยให้ผู้ใช้งานสามารถทำการเพิ่มหรือลด Load Balancing Capacity ได้เองแบบยืดหยุ่น ซึ่งจากผลทดสอบ Meglev สามารถรับ Request ได้สูงถึง 1 ล้าน Request ต่อวินาทีแบบสบายๆ นอกจากนี้ Meglev ยังถูกใช้ในการรับโหลดปริมาณมหาศาลที่เพิ่มขึ้นเรื่อยๆตามขนาดของ Google Cloud อีกด้วย

เทรนด์ Network Function Virtualization (NFV) กำลังเข้ามามีบทบาทในปัจจุบันค่อนข้างมาก และ Meglev ของ Google เป็นตัวพิสูจน์แล้วว่า NFV ช่วยให้สามารถเพิ่มและลด Network Capacity ได้อย่างยืดหยุ่น และสามารถทำการติดตั้งใช้งาน Networking Services โดยที่ไม่จำเป็นต้องซื้อ Hardware หรือ Custom Hardware เฉพาะแต่อย่างใด

ที่มา : https://cloudplatform.googleblog.com/2016/03/Google-shares-software-network-load-balancer-design-powering-GCP-networking.html





About เด็กฝึกงาน TechTalkThai หมายเลข 1

นักเขียนมือใหม่ผู้หลงใหลใน Enterprise IT และซูชิ

Check Also

VMware ออก Reference Architecture แนะนำการใช้งาน VMware Horizon 7 Enterprise Edition

VMware ออกเอกสาร Reference Architecture แนะนำการใช้งาน VMware Horizon 7 Enterprise Edition

5 โปรเจกต์ที่น่าจับตามองสำหรับ Data Science และ Machine Learning บน GitHub เดือนมกราคม 2018

GitHub นั้นถือเป็นเครื่องมือยอดฮิตสำหรับโปรแกรมเมอร์ซึ่งหลักๆ นั้นนำมาใช้เพื่อบริหารจัดการเวอร์ชันของโค้ดในโปรเจกต์ต่างๆ นอกจากนั้นยังสามารถเปิดแชร์ให้ผู้อื่นได้ รวมถึงผู้สนใจสามารถทำการผนวกโค้ด (Forking) เข้ามาในโปรเจกต์ใหม่ของตนเองได้ซึ่งยังสามารถรับการอัปเดตหากเจ้าของต้นฉบับนั้นมีการเปลี่ยนแปลงโค้ด ในหัวข้อนี้เราจะมาพาไปดูโปรเจกต์สำหรับชาว Data Science และ AI เจ๋งๆ ในเดือนมกราคมที่ผ่านมาได้รับชมกัน