Μετάβαση στο περιεχόμενο
EuroVPSEuroVPS
Περιοχή πελατών

Τι κάνουμε · Δεδομένα και web: Κατασκευή πλατφορμών υψηλής διαθεσιμότητας

Πλατφόρμες όπου κάθε host, συστοιχία storage ή chassis μπορεί να πέσει: βάσεις σε cluster, cache, streaming, analytics, failover δοκιμασμένο στην παράδοση.
HPE c7000 blade enclosures along our aisle in Athens

Σχεδιάζουμε και χτίζουμε ολοκληρωμένες πλατφόρμες (edge, εφαρμογή, βάση δεδομένων, cache, streaming και analytics) έτσι ώστε οποιοσδήποτε μεμονωμένος host, οποιαδήποτε μεμονωμένη συστοιχία storage ή οποιοδήποτε μεμονωμένο chassis να μπορεί να πέσει και κάθε υπηρεσία να συνεχίζει να τρέχει. Μετά το αποδεικνύουμε, επίπεδο προς επίπεδο, πριν βγείτε σε παραγωγή.

Τι είναι

Μια ολόκληρη πλατφόρμα σχεδιασμένη ως ένα σύστημα, και όχι ως μια συλλογή από servers που απλώς τυχαίνει να μιλούν μεταξύ τους. Δουλεύουμε από το πραγματικό σχήμα του φόρτου εργασίας σας: πόσο διαβάζει και γράφει, πώς μεγαλώνει, τι δεν πρέπει ποτέ να σταματήσει. Το παραδίδουμε στο OLVM private cloud μας, σε bare metal ή σε OpenShift (OKD), σε Αθήνα ή Άμστερνταμ στο Digital Realty, ή στο Τορόντο.

Πώς το χτίζουμε

Διαστασιολογημένο στον φόρτο εργασίας. Οι hosts επιλέγονται για τη δουλειά: μονό socket όπου ο φόρτος εργασίας περιορίζεται από μνήμη και I/O, μνήμη πλήρως συμπληρωμένη για πλήρες bandwidth. Οι VMs δεν παίρνουν ποτέ περισσότερους πυρήνες από όσους έχει ένα CPU socket, γιατί μια VM που απλώνεται σε δύο sockets πληρώνει ποινή απομακρυσμένης μνήμης σε κάθε πρόσβαση και συχνά τρέχει πιο αργά από μια μικρότερη.

Κάθε επίπεδο με quorum είναι τρία, και μοιρασμένο. Τα επίπεδα βάσης δεδομένων, cache, συντονισμού, streaming και load balancer τρέχουν το καθένα τρία μέλη με αυστηρό anti-affinity, ένα ανά host. Ο δίσκος δεδομένων κάθε μέλους βρίσκεται σε διαφορετική συστοιχία storage. Η απώλεια ενός host κοστίζει ένα replica. Η απώλεια μιας συστοιχίας κοστίζει ένα replica. Το quorum κρατάει και στις δύο περιπτώσεις.

Δοκιμασμένα components για κάθε δουλειά:

  • Συναλλακτικά δεδομένα σε Percona XtraDB Cluster, με δρομολόγηση ProxySQL και floating διεύθυνση.
  • Analytics σε ClickHouse, με τριπλό replication και αποκλειστικούς κόμβους συντονισμού Keeper.
  • Cache σε Valkey με failover μέσω Sentinel.
  • Streaming σε Redpanda, με replication factor τρία.
  • Edge σε HAProxy με keepalived σε χιαστί διάταξη VRRP, με ενεργές και τις δύο διευθύνσεις.
  • Επίπεδο εφαρμογής stateless και οριζόντια κλιμακώσιμο.

Σε OpenShift. Χτίζουμε OKD και OpenShift σε bare metal με control plane τριών κόμβων σε ανεξάρτητους servers και Rook-Ceph για κοινόχρηστο storage, ώστε το περιεχόμενο web να ζει σε storage με replication αντί σε έναν μοναδικό NFS server. Το quorum των Ceph monitors είναι διαστασιολογημένο ώστε δύο ταυτόχρονες βλάβες host να αφήνουν το storage άθικτο. Οι βάσεις Galera τρέχουν ως StatefulSets με anti-affinity ανάμεσα σε chassis και PodDisruptionBudget, ώστε οι ενημερώσεις πλατφόρμας και οι κυλιόμενες επανεκκινήσεις να μην μπορούν ποτέ να σπάσουν το quorum της βάσης. Οι διευθύνσεις load balancer έρχονται από MetalLB σε πραγματικά VLANs.

Δοκιμασμένο, και μετά επαληθευμένο από κάποιον άλλον. Κάθε επίπεδο δοκιμάζεται σε failover πριν την παράδοση: σταματάμε τον writer, το primary της cache, ένα edge, έναν host. Η κατασκευή επαληθεύεται έπειτα από διαφορετικό μηχάνημα από αυτό που την έχτισε, έναντι της ζωντανής πλατφόρμας και όχι των σημειώσεων κατασκευής.

Από τι σας προστατεύει

  • Μια πλατφόρμα όπου μία βάση δεδομένων, μία cache ή ένας κόμβος analytics είναι single point of failure.
  • Μια συστοιχία storage ή ένα chassis blade που παίρνει μαζί του ολόκληρη την πλατφόρμα.
  • Rolling updates του Kubernetes που σπάνε το quorum της βάσης.
  • VMs διαστασιολογημένες πέρα από τα όρια NUMA, που κοστίζουν περισσότερο και τρέχουν πιο αργά.
  • Το να μάθετε πώς συμπεριφέρεται το failover για πρώτη φορά κατά τη διάρκεια μιας πραγματικής βλάβης.

Στην πράξη

Μια πλατφόρμα analytics χτισμένη για τη βλάβη. Για την επιχείρηση analytics ενός πελάτη χτίσαμε έξι επίπεδα σε ξεχωριστούς hosts και ξεχωριστές all-flash συστοιχίες: ClickHouse με αποκλειστικούς Keepers, Percona XtraDB Cluster με ProxySQL και keepalived, Valkey με Sentinel, Redpanda, ένα edge HAProxy διπλής διεύθυνσης και ένα stateless επίπεδο εφαρμογής. Στην παράδοση μετρήσαμε το failover του edge σε περίπου πέντε δευτερόλεπτα προς κάθε κατεύθυνση, την προαγωγή της cache σε περίπου επτά δευτερόλεπτα, και την απώλεια του writer να απορροφάται από το ProxySQL με την εφαρμογή να συνεχίζει να γράφει.

OpenShift σε bare metal, έτοιμο για παραγωγή. Πριν μια πλατφόρμα OKD ή OpenShift αναλάβει φόρτους εργασίας πελατών, ένας προπαραγωγικός έλεγχος επαληθεύει το quorum του storage έναντι δύο ταυτόχρονων βλαβών host και τοποθετεί PodDisruptionBudgets για τους φόρτους εργασίας κάθε tenant πριν προγραμματιστεί ποτέ η πρώτη συντήρηση κόμβου.

Γιατί EuroVPS

  • Σχεδιάζουμε failure domains σε hosts, συστοιχίες και chassis, όχι απλώς «δύο από όλα».
  • Κάθε επίπεδο δοκιμάζεται σε failover και οι χρόνοι σάς παραδίδονται.
  • Μία ομάδα έχει το hardware, το storage, το δίκτυο και την πλατφόρμα.
  • Διαστασιολόγηση με επίγνωση NUMA ως κανόνας του σπιτιού.
  • PodDisruptionBudgets και anti-affinity είναι το πρότυπό μας στο Kubernetes από την πρώτη κατασκευή, όχι κάτι που προστίθεται αργότερα.

Συχνές ερωτήσεις

  1. Εικονικές μηχανές ή OpenShift; Εξαρτάται από την ομάδα σας και την εφαρμογή σας. Τα παραδοσιακά stacks τρέχουν άψογα σε VMs. Ομάδες που ήδη παραδίδουν containers κερδίζουν περισσότερο από το OpenShift. Σας βοηθάμε να αποφασίσετε.
  2. Μπορείτε να χτίσετε με βάση τη δική μας αρχιτεκτονική αναφοράς; Ναι. Την εξετάζουμε έναντι των κανόνων μας για failure domains και προτείνουμε αλλαγές όπου μία μεμονωμένη βλάβη θα μπορούσε ακόμα να ρίξει ένα επίπεδο.
  3. Ποιος λειτουργεί την πλατφόρμα μετά την παράδοση; Μπορούμε να τη λειτουργούμε ολόκληρη, μόνο την υποδομή, ή να την παραδώσουμε στην ομάδα σας με τεκμηρίωση και υποστήριξη.
  4. Πόσο διαρκεί μια κατασκευή; Μια ολοκληρωμένη πλατφόρμα πολλών επιπέδων παίρνει συνήθως εβδομάδες και όχι μέρες, με τον περισσότερο χρόνο να πηγαίνει σε αποφάσεις σχεδιασμού και δοκιμές.
  5. Δοκιμάζετε με τη δική μας εφαρμογή; Ναι. Οι δοκιμές failover τρέχουν με την εφαρμογή σας συνδεδεμένη, ώστε τα αποτελέσματα να αντανακλούν αυτό που θα έβλεπαν οι χρήστες σας.

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

Ο επόμενος συνεργάτης σας στην υποδομή

Ας δούμε την υποδομή σας.

Πείτε μας τι τρέχετε σήμερα και τι χρειάζεται βελτίωση. Ένας μηχανικός θα εξετάσει το αίτημά σας και θα σας βοηθήσει να σχεδιάσετε το επόμενο βήμα.

+357 222 32280
Μηχανικός της EuroVPS μεταφέρει έναν κόμβο server στον χώρο του datacenter
Μια συζήτηση με τους ανθρώπους που θα φροντίζουν την υποδομή σας.

Ας ξεκινήσουμε από την υποδομή σας.

Λίγο πλαίσιο μάς βοηθά να ξεκινήσουμε τη σωστή συζήτηση.

Θα χρησιμοποιήσουμε τα στοιχεία σας για να απαντήσουμε στο αίτημά σας. Πολιτική απορρήτου