10 Open Source Load Balancer για HA και βελτιωμένη απόδοση

Ένας από τους πιο γρήγορους και ευκολότερους τρόπους για να ρυθμίσετε μια εφαρμογή με υψηλή διαθεσιμότητα και να βελτιώσετε την απόδοση είναι η εφαρμογή του load balancer (LB).

Σε υψηλό επίπεδο, υπάρχουν τρεις τύποι εξισορροπητών φορτίου.

  • Βασισμένο σε υλικό
  • Βασισμένο σε σύννεφο
  • Βασισμένο σε λογισμικό

Ο εξισορροπητής φορτίου υλικού είναι μια ειδική συσκευή για την παροχή κατανομής φορτίου και των σχετικών χαρακτηριστικών του. Μερικοί από τους δημοφιλείς προμηθευτές υλικού LB είναι:

Είναι ακριβά αλλά σας δίνουν τον πλήρη έλεγχο.

Το Cloud load balancer είναι πιο δημοφιλές από ποτέ.

Η χρήση του cloud LB είναι ένας από τους οικονομικούς τρόπους για να απολαύσετε πλήρεις δυνατότητες χωρίς να επενδύσετε σε μια συσκευή υλικού. Πληρώνετε για αυτό που χρησιμοποιείτε. Τα παρακάτω είναι μερικά από τα γνωστά σύννεφα LB.

Μπορείτε να το ξεκινήσετε από 20 $ το μήνα.

Και το τελευταίο βασίζεται σε λογισμικό όπου εγκαθιστάτε, διαχειρίζεστε και διαμορφώνετε μόνοι σας το λογισμικό LB. Αυτό μπορεί να είναι είτε εμπορικό είτε ανοιχτού κώδικα/δωρεάν.

Εάν δεν έχετε προϋπολογισμό ή θέλετε να εξερευνήσετε μια δωρεάν λύση εξισορρόπησης φορτίου, τότε θα σας βοηθήσουν παρακάτω.

Τραμπάλα

Χρησιμοποιηθηκε απο Googleένας αξιόπιστος διακομιστής εικονικής εξισορρόπησης φορτίου βασισμένος σε Linux για την παροχή της απαραίτητης κατανομής φορτίου στο ίδιο δίκτυο.

Τραμπάλα έχει αναπτυχθεί στη γλώσσα Go και λειτουργεί καλά σε διανομή Ubuntu/Debian. Υποστηρίζει anycast και DSR (άμεση επιστροφή διακομιστή) και απαιτεί δύο κόμβους Seesaw. Μπορούν να είναι είτε φυσικές είτε εικονικές.

Αξίζει να αναφέρουμε ότι το Seesaw λειτουργεί με δίκτυα επιπέδου τεσσάρων, οπότε αν ψάχνετε για εξισορρόπηση φορτίου επιπέδου επτά, ίσως θέλετε να εξερευνήσετε άλλες επιλογές.

  Πώς να δημιουργήσετε προσαρμοσμένα γραφικά στοιχεία στο iPhone

ΚΕΜΠ

ΔΩΡΕΑΝ προηγμένος ελεγκτής παράδοσης εφαρμογών από ΚΕΜΠ υποστηρίζεται σε όλους τους μεγάλους hypervisors. Μπορείτε είτε να το κατεβάσετε και να το χρησιμοποιήσετε στο κέντρο δεδομένων σας είτε να το αναπτύξετε σε cloud DC όπως το AWS ή το Azure.

Είναι δωρεάν, αλλά προσφέρει ένα εμπορικό επίπεδο χαρακτηριστικών, συμπεριλαμβανομένων αυτών που ακολουθούν.

  • Εξισορρόπηση φορτίου επιπέδου 4 για TCP/UDP χρησιμοποιώντας αλγόριθμους στρογγυλής σύνδεσης ή ελάχιστης σύνδεσης
  • Ζυγοστάθμιση επιπέδου 7
  • Ενσωματώστε ένα τείχος προστασίας διαδικτυακής εφαρμογής (WAF)
  • Ενσωματωμένος κινητήρας αποτροπής εισβολής (IPS)
  • Πραγματική εξισορρόπηση φορτίου διακομιστή, υποστηρίζει πολλαπλούς ιστότοπους
  • Προσωρινή αποθήκευση, συμπίεση περιεχομένου, εναλλαγή περιεχομένου
  • Εμμονή cookie ιστού
  • IPSec σήραγγα
  • Προέλεγχος ταυτότητας
  • Ας κρυπτογραφήσουμε
  • Kubernetes

Το KEMP LB χρησιμοποιείται από μερικές από τις μεγάλες μάρκες όπως η Apple, η Sony, η JP Morgan, η Audi, η Hyundai κ.λπ. Η δωρεάν έκδοση παρέχει επαρκείς δυνατότητες. Ωστόσο, εάν χρειάζεστε περισσότερα, μπορείτε να ελέγξετε την εμπορική τους άδεια.

Εάν εσείς ή ο οργανισμός σας αποφασίσετε να εξερευνήσετε το KEMP LB και χρειάζεστε κάποια διαδικτυακή εκπαίδευση, τότε μπορείτε να ανατρέξετε σε αυτό διαδικτυακό μάθημα από τον Mike Walton.

HAProxy

Ένα από τα δημοφιλή στην αγορά είναι η παροχή υψηλής διαθεσιμότητας, εξισορρόπησης φορτίου TCP/HTTP. HAProxy χρησιμοποιείται από μερικές από τις φημισμένες μάρκες στον κόσμο, όπως παρακάτω.

Μερικά από τα χαρακτηριστικά που αξίζει να αναφερθούν είναι.

  • Υποστήριξη υποδοχής IPv6 και UNIX
  • Συμπίεση ξεφουσκώματος & Gzip
  • Ελεγχος υγείας
  • Κολλητικότητα περιόδου λειτουργίας βάσει πηγής
  • Ενσωματωμένη αναφορά στατιστικών στοιχείων (ταμείο διαδήλωση)

Όπως μπορείτε να περιμένετε, το HAProxy απέκτησε εταιρική έκδοση, υλικό και εικονική συσκευή.

Ο καλύτερος τρόπος για να μάθετε για το HAProxy είναι να το δοκιμάσετε. Η Community Edition έρχεται με τόνους χαρακτηριστικών, και ούτως ή άλλως είναι ΔΩΡΕΑΝ.

  Πώς να αφαιρέσετε εφαρμογές και σελίδες από την αρχική οθόνη του iPhone σας

ΖΕΒΕΝΕΤ

Zevenet υποστηρίζει τα L3, L4 και L7. Είναι διαθέσιμο ως πηγαίος κώδικας, εικόνα IOS και σε αποθετήριο docker.

Υποστηρίζει προηγμένη παρακολούθηση υγειονομικού ελέγχου, έτσι ώστε οι ελαττωματικοί διακομιστές/υπηρεσίες να τίθενται εκτός λειτουργίας γρήγορα για να παρέχουν μια απρόσκοπτη εμπειρία χρήστη. Το Zevenet παλαιότερα γνωστό ως Zen λειτουργεί καλά με πρωτόκολλο που βασίζεται σε TCP όπως FTP, SIP, SSL, HTTP κ.λπ.

Αν ψάχνετε για φιλοξενία Zevenet, μπορείτε να δοκιμάσετε Καματέρα.

Νετρίνο

Νετρίνο χρησιμοποιείται από το eBay και έχει κατασκευαστεί χρησιμοποιώντας Scala & Netty. Υποστηρίζει αλγόριθμους ελάχιστης σύνδεσης και στρογγυλής σύνδεσης με τα ακόλουθα χαρακτηριστικά μεταγωγής.

  • Χρήση κανονικών ονομάτων
  • Με βάση το πλαίσιο
  • L4 χρησιμοποιώντας αριθμούς θύρας TCP

Το Neutrino έχει δοκιμαστεί για να χειρίζεται 300+ αιτήματα ανά δευτερόλεπτο απόδοσης σε VM 2 πυρήνων. Εάν κάνετε σύγκριση με το HAProxy, τότε ένα σημαντικό πλεονέκτημα της χρήσης Neutrino είναι η εναλλαγή L7.

Αλλά όπως πάντα, δοκιμάστε και τα δύο και δείτε τι λειτουργεί καλύτερα για το περιβάλλον σας.

Ισορροπία

Ισορροπία by In lab networks είναι ένας διακομιστής μεσολάβησης TCP round-robin LB που υποστηρίζει IPv6 στην πλευρά ακρόασης. Αυτό σημαίνει ότι μπορείτε να έχετε IPv4 στο μπροστινό μέρος και IPv6 στο πίσω άκρο.

Έχει όλα τα βασικά χαρακτηριστικά LB.

Στυλό

Στυλό έχει δοκιμαστεί σε Linux, FreeBSD, HP-UX, Solaris και Windows, αλλά δεν υπάρχει λόγος να μην λειτουργεί σε άλλη διανομή Unix. Υποστηρίζει πρωτόκολλα που βασίζονται σε UDP και TCP όπως HTTP, SNMP, DNS κ.λπ.

Μερικά από τα χαρακτηριστικά περιλαμβάνουν τα ακόλουθα μαζί με τα βασικά.

  • Φίλτρο GeoIP
  • Τερματισμός SSL
  • Συμβατότητα IPv4 & IPv6

Nginx

Ξέρω τι μπορεί να σκέφτεσαι. Το Nginx είναι ένας διακομιστής ιστού, διακομιστής μεσολάβησης κ.λπ. Αλλά το Nginx ανοιχτού κώδικα υποστηρίζει ένα βασικό επίπεδο εναλλαγής περιεχομένου και διανομής δρομολόγησης αιτημάτων σε πολλούς διακομιστές.

  Πώς να αφαιρέσετε μια κατοικία ανενεργού παίκτη στο "Animal Crossing: New Horizons"

Ωστόσο, η έκδοση Nginx Plus είναι πολύ περισσότερο από αυτό.

Το Nginx Plus είναι μια λύση παράδοσης διαδικτυακών εφαρμογών all-in-one που περιλαμβάνει εξισορρόπηση φορτίου, προσωρινή αποθήκευση περιεχομένου, διακομιστή ιστού, WAF, παρακολούθηση κ.λπ. Παρέχει μια λύση εξισορρόπησης φορτίου υψηλής απόδοσης για την κλίμακα εφαρμογών για την εξυπηρέτηση εκατομμυρίων αιτημάτων ανά δευτερόλεπτο.

Traefik

Ένας σύγχρονος και γρήγορος διακομιστής αποθήκευσης HTTP και LB που έχουν δημιουργηθεί με GO. Traefik υποστηρίζει πολλαπλές υπηρεσίες back-end Amazon ECS, Docker, Kubernetes, Rancher κ.λπ.

Υποστηρίζει WebSockets, HTTP/2, αυτόματη ανανέωση πιστοποιητικού SSL με Let’s encrypt, καθαρή διεπαφή για διαχείριση και παρακολούθηση των πόρων.

Ενδιάμεσο

Ενδιάμεσο είναι ένας μινιμαλιστικός αλλά ισχυρός εξισορροπητής φορτίου υψηλής απόδοσης L4 TCP, TLS & UDP.

Λειτουργεί σε πολλές πλατφόρμες όπως Windows, Linux, Docker, Darwin και αν ενδιαφέρεστε μπορείτε να δημιουργήσετε από τον πηγαίο κώδικα. Η εξισορρόπηση γίνεται με βάση τους παρακάτω αλγόριθμους που επιλέγετε στη διαμόρφωση.

  • Κατακερματισμός IP
  • Παγκοσμίου φήμης – στρογγυλή
  • Λιγότερο εύρος ζώνης
  • Ελάχιστη σύνδεση
  • Βάρος

Βασισμένο σε αυτό σημείο αναφοράςΤο Go-between είναι ταχύτερο από το HAProxy αλλά όχι από το Nginx.

Αν ψάχνετε για μια σύγχρονη λύση εξισορρόπησης L4 με αυτόματη ανακάλυψη για το δυναμικό περιβάλλον, τότε το Go-between φαίνεται πολλά υποσχόμενο. Δοκιμάστε το για να δείτε πώς θα πάει.

συμπέρασμα

Ελπίζω ότι το λογισμικό εξισορρόπησης φορτίου ανοιχτού κώδικα που αναφέρεται παραπάνω θα σας βοηθήσει να επιλέξετε ένα για την εφαρμογή σας. Είναι όλα ΔΩΡΕΑΝ, επομένως ο καλύτερος τρόπος για να βρείτε αυτό που λειτουργεί είναι να τα δοκιμάσετε.

Αν ψάχνετε να μάθετε νέες δεξιότητες, δοκιμάστε το Udemy, όπου διατίθενται χιλιάδες μαθήματα βίντεο.