ตัวเลือกเครื่องถ่วงโหลด [ปิด]


25

ฉันกำลังดูตัวเลือกที่เป็นไปได้จำนวนมากสำหรับการทำโหลดบาลานซ์

จนถึงตอนนี้ฉันถูก จำกัด ตัวเลือกต่อไปนี้:

  • ตัวโหลดบาลานซ์ของเซิร์ฟเวอร์ DNS สร้างความสมดุลให้กับคลัสเตอร์ของเซิร์ฟเวอร์ Tomcat พร้อมกับ Terracotta สำหรับการเรพลิเคทเซสชัน ข้อดี - ไม่ต้องซื้อชุดใหม่ ข้อด้อย - DNS lb สามารถนำไปยังเซิร์ฟเวอร์ที่ใช้งานไม่ได้

  • load-balancer ฮาร์ดแวร์ตรงไปยังคลัสเตอร์ของเซิร์ฟเวอร์ tomcat ข้อดี - อาจมีช่องที่สองสำหรับ failover lb. ข้อเสีย - ค่าใช้จ่าย

  • โหลดบาลานซ์เซิร์ฟเวอร์ Apache ข้อดี - lb ของ apache สำหรับเซิร์ฟเวอร์ที่เสียหาย ข้อเสีย - เซิร์ฟเวอร์ apache เป็นจุดเดียวของความล้มเหลวรวมทั้งจำเป็นต้องซื้อเซิร์ฟเวอร์อื่น

มีตัวเลือกอื่น ๆ ที่ฉันควรพิจารณาหรือไม่

ขอบคุณ

อัปเดต: ขอบคุณสำหรับคำตอบทั้งหมดจนถึง +1 ทั้งหมด ยังไม่ยอมรับคำตอบเพื่อให้มีไอเดียเพิ่มขึ้น


แพลตฟอร์ม OS อะไร?
spoulson

สำหรับ S-W load-balancer มันจะเป็น Linux
toolkit

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

หากคุณไม่ทำดินเผาคุณต้องการความเกี่ยวข้องกับเซสชันประเภทใด อิงตามส่วนหัว, IP หรือไม่
sh-beta

@ sh-beta - ฉันคิดว่ามันขึ้นอยู่กับการใช้งานหรือไม่
ชุดเครื่องมือ

คำตอบ:


7

ฉันจะไม่ไปสำหรับ lb-based lb - สำหรับเหตุผลที่คุณแสดงรายการ

nginxหรือvarnishสามารถเป็นตัวเลือก lb / fail-over อื่น ๆ ของคุณที่อยู่หน้า appservs และทำหน้าที่เป็น reverse proxy พวกเขาต้องการการดูแลมากกว่ากล่องฮาร์ดแวร์ แต่จะช่วยให้คุณประหยัดเงินได้มาก ต้องแน่ใจว่าใส่บาลานเซอร์เหล่านั้นในบางกลุ่มเช่นกัน [แอคทีฟพาสซีฟกับการเต้นของหัวใจจะทำเคล็ดลับ]


11

หากคุณกำลังมองหาอุปกรณ์โหลดบาลานเซอร์คุณจะไม่ผิดกับF5 Big-IPจริงๆ

แก้ไข: เหตุผลที่ฉันบอกว่าไปกับ Big-IP เพราะมันเป็นอุปกรณ์ที่ดีสำหรับผู้ดูแลเซิร์ฟเวอร์ที่ไม่มีประสบการณ์กับอุปกรณ์เครือข่าย มันมีเว็บอินเตอร์เฟสที่ดีพร้อมตัวเลือกที่ไร้ขีด จำกัด สำหรับการกำหนดค่าและการรายงาน มีความน่าเชื่อถือมากที่สุดและมีราคาถูกที่สุดสำหรับตัวเลือกการโหลดบาลานซ์ของ "องค์กร" ทั้งหมด

นี่คือลิงค์ไปสู่การศึกษาเกี่ยวกับตัวเลือกการนำส่งแอปพลิเคชันในปี 2550: ผลลัพธ์ของ Gartner


1
ฉันชอบ F5 Big-IPs นอกจากนี้ยังยอดเยี่ยมในการจัดการการเร่งความเร็ว SSL ดังนั้นเว็บเซิร์ฟเวอร์สามารถจัดการกับ HTTP ธรรมดาได้
Chris W. Rea

ฉันจะเห็นด้วยแม้ว่าหากคุณใช้งานการดำเนินการขนาดใหญ่เป็นการดีที่สุดที่จะหลีกเลี่ยงการอัปเดตล่าสุดที่ฉันพบ
mryan1

เราดำเนินการเป็นองค์กรขนาดใหญ่กับพวกเขาฉันไม่แน่ใจว่าสิ่งที่ปรับปรุงล่าสุดเกี่ยวกับการใช้ F5
sclarson

+1 สำหรับ Big-IP พวกเขาแค่ทำงานธรรมดา เมื่อคุณใส่อะไรบางอย่างระหว่างผู้ใช้และเซิร์ฟเวอร์ของคุณมันจะต้องมีกระสุน
Brent Ozar

6

ผมขอแนะนำให้ใช้HAProxy มันเร็วมาก และคุณยังสามารถหลบหลีกจุดเดียวของความล้มเหลวได้โดยใช้ตัวโหลดบาลานซ์สองตัวที่มี CARP (* BSD) หรือ UCARP / LVS (Linux)


4

เราใช้ Coyote Point Equalizers (ตัวปรับสมดุลฮาร์ดแวร์) เป็นเวลาหลายปีและมีความสุขมากกับพวกเขา พวกเขาอาจไม่มีคุณสมบัติทั้งหมดของ F5 แต่พวกเขายังคงมีคุณสมบัติจำนวนมากและมีค่าใช้จ่ายน้อยกว่ามาก ทั้งประสิทธิภาพและความน่าเชื่อถือนั้นยอดเยี่ยมมาก


+1 สำหรับสิ่งนั้น เรามีโคโยตี้คู่หนึ่งอยู่ที่นี่เช่นกันพวกมันเปิดใช้งานมาหลายปีแล้วและยังคงฮัมเพลงอยู่
เซท

3

ฉันมักจะไปหา LBs ของฮาร์ดแวร์เพราะพวกเขาสามารถรับมือกับปริมาณข้อมูลจำนวนมากได้บ่อยครั้ง 'เรียบง่าย' มากขึ้นจึงสามารถแข็งตัวดีขึ้น / ง่ายขึ้นและบางครั้งก็สามารถจัดการปัญหาด้านความปลอดภัยอื่น ๆ เช่นการโจมตี SYN-ท่วมในฮาร์ดแวร์ ฉันใช้ Foundry แต่มีตัวเลือกมากมาย (F5, Cisco และอื่น ๆ ) - ใช้จ่ายแม้ว่า :(


1

Cisco GSS (Global Site Selector) เป็นเซิร์ฟเวอร์ DNS ที่ตรวจสอบสุขภาพ นี่จะเป็นตัวเลือกที่แพงกว่าเซิร์ฟเวอร์ DNS มาตรฐานแน่นอน หน้าเว็บพร้อมรายละเอียดเพิ่มเติมได้ที่นี่: http://www.cisco.com/en/US/products/hw/contnetw/ps4162/index.html

F5 has similar offerings:  http://www.f5.com/products/ 
Cisco ACE product page: http://www.cisco.com/en/US/products/ps8361/index.html

ดังที่ Chopper3 กล่าวถึงการทำโหลดบาลานซ์ตามฮาร์ดแวร์นั้นอาจจะให้ประสิทธิภาพที่มากกว่า แต่คุณจะจ่ายให้

คุณลักษณะที่คุณสามารถค้นหาคือ: SSL off-load, การสนับสนุน vlan, บริบท, การทำคลัสเตอร์, การสนับสนุนโปรโตคอลการเราติ้งและการสนับสนุน / การโต้ตอบกับแอปพลิเคชันที่แตกต่างกัน


1

คุณดูldirectordหรือไม่

มันทำงานบน linux สามารถทำงานด้วย heartbeat บนเครื่องเดียวกันกับ load balancing (และมี redundancy ในตัว) - หรือแน่นอนบนกล่องของตัวเองอยู่ตรงหน้ามันง่ายต่อการกำหนดค่าน้ำหนักเบาและมีความสามารถมาก .


1

ฉันพบว่าทางแยกเป็นเครื่องถ่วงโหลดที่ดีเยี่ยม มันจัดการภาระการผลิตของเราเป็นเวลาเจ็ดเดือนในขณะที่คนในเครือข่ายแยกแยะปัญหาฮาร์ดแวร์กับตัวโหลดบาลานซ์ของซิสโก้


0

ฉันเขียน load balancer ที่ใช้ซอฟต์แวร์ซึ่งไม่ต้องการเครื่องแยกต่างหาก

ข้อเสียคือมันไม่พร้อมใช้งานจริง - แต่ถ้าคุณต้องการทดสอบบนเครือข่ายทดสอบของคุณฉันก็ยินดี

กลุ่มปุยอยู่ที่นี่

โดยพื้นฐานแล้วมันมีความคล้ายคลึงกับ NLB ของ Microsoft อย่างมาก (ฉันคิดว่า) - แม้ว่าฉันจะไม่มีที่มาและไม่รู้ว่าการทำงานของพวกเขาเป็นอย่างไร

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

แก้ไข: คุณไม่ได้พูดในสิ่งที่ระบบปฏิบัติการคลัสเตอร์ปุยเป็น Linux เท่านั้นในขณะนี้


ดูเท่ ฉันต้องการใช้ ClusterIP แต่ยังไม่พร้อมสำหรับการผลิตและมี gotchas มากเกินไป คุณมีแผนที่จะเตรียมคลัสเตอร์ Fluffy ให้พร้อมสำหรับการผลิตหรือไม่?
diq

หากมีความสนใจในมันฉันจะทำมัน มีงานค่อนข้างน้อยที่จำเป็นสำหรับการเปิดตัวความสามารถที่ จำกัด
MarkR

0

keepalived เป็น linux load balancer อีกตัวที่รองรับอัลกอริธึมการทำ load load หลายตัว (ชัด) และ VRRP เพื่อสร้างอินสแตนซ์ซ้ำซ้อนพร้อม failover อัตโนมัติเมื่อกล่อง load balancer หยุดทำงาน


0

หากเงินไม่ใช่ปัญหาให้ขอตัวโหลดบาลานซ์ฮาร์ดแวร์

บริษัท ที่ฉันทำงานเพื่อใช้ Apache ด้านหน้าเซิร์ฟเวอร์ Tomcat ของเราและ load balancer อยู่ในกล่องเดียวกับ tomcats บางตัว (tomcats ใช้พอร์ตภายใน) เราจะย้ายไปที่กล่องโหลดบาลานซ์โดยเฉพาะในไม่ช้า เราจะย้ายไปที่ Nginx ในไม่ช้าฉันจะพบว่าการกำหนดค่าง่ายขึ้นและทั้งหมดนั้นเบากว่า Apache มาก ทั้งนี้ขึ้นอยู่กับสถาปัตยกรรมเครือข่ายของคุณฉันจะแนะนำให้คุณใช้ "floating IP" ภายในสำหรับ load balancer และเรียกใช้ heartbeat เพื่อสลับ IP ไปยังกล่องอื่นหากจำเป็น ที่จะเพิ่มความสามารถในการเข้าแทนที่โดยไม่ต้องกังวลเกี่ยวกับปัญหาการเผยแพร่ DNS


0

ฉันได้ตั้งค่าโซลูชั่นที่มีDNSMadeEasy พวกเขามีความสุขscreencastเกี่ยวกับ failover DNS พวกเขามีราคาที่สมเหตุสมผล ในระบบของเราเราได้ดำเนินการบริการง่ายๆที่ "ส่ง Ping" ส่วนประกอบที่แตกต่างกันในระบบของเรา (ฐานข้อมูลคิว JMS, การเชื่อมต่อ S3) และส่งคืนตกลงซึ่ง DNSMadeEasy สามารถใช้ เมื่อใดก็ตามที่มีข้อยกเว้น DNSMadeEasy จะลบเซิร์ฟเวอร์นั้นออกจากรายการเซิร์ฟเวอร์ที่ตอบสนองต่อการค้นหา DNS นั้น



0

สวัสดี @toolkit คุณเคยใช้ NGinX / Varnish ในภารกิจ LoadBalancer (LB) หรือไม่? ถ้าอย่างนั้นผลลัพธ์ของคุณคืออะไร? (ถ้าคุณไม่รังเกียจที่จะแบ่งปันกับพวกเราที่เหลือ ;-)

เพียงเพื่อสรุปข้างต้น (และพูดถึง ZMQ)

โหลดบาลานซ์พื้นฐาน

ขั้นสูงเพิ่มเติม

  • ZeroMQสามารถรับมือกับปรากฎการณ์และการโหลดพร้อมกันและในขณะที่ไม่ได้ออกแบบด้วย LB ในใจ คิวข้อความของมัน - ซึ่งเป็นหลักกระจาย (แก้ไข) การร้องขอที่เข้ามา หากคุณรู้สึกว่าการผจญภัยฉันขอแนะนำให้คุณดู ( 2 ชั่วโมงการเรียนรู้ - ROI สูง! ):
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.