Γλωσσάρι

Επίπεδο ελέγχου cloud

Το επίπεδο ελέγχου cloud (cloud control plane) είναι το επίπεδο διεπαφών, API και υπηρεσιών που σας επιτρέπουν να δημιουργείτε, να διαμορφώνετε και να διαχειρίζεστε υποδομή — σε αντίθεση με το επίπεδο δεδομένων, το οποίο εκτελεί στην πράξη τα φορτία εργασίας σας και διακινεί την κίνησή σας. Κάθε πάροχος διαθέτει το δικό του· ο όρος καλύπτει επίσης συστήματα που διαχειρίζονται πολλούς παρόχους ως ένα ενιαίο επίπεδο.

Κάθε κομμάτι υποδομής έχει δύο ξεχωριστά επίπεδα. Το επίπεδο δεδομένων είναι η ίδια η υποδομή: οι εικονικές μηχανές που εκτελούν την εφαρμογή σας, το δίκτυο που μεταφέρει πακέτα ανάμεσά τους, ο δίσκος που εξυπηρετεί αναγνώσεις και εγγραφές. Το επίπεδο ελέγχου είναι όλα όσα χρησιμοποιείτε για να αποφασίσετε πώς πρέπει να μοιάζει αυτή η υποδομή και για να την αλλάξετε — το API, η κονσόλα, το CLI, το σύστημα δικαιωμάτων που αποφασίζει ποιος επιτρέπεται να κάνει μια αλλαγή. Όταν δημιουργείτε μια εικονική μηχανή σε μια κονσόλα cloud, αλλάζετε το μέγεθος ενός δίσκου, ή ανοίγετε μια θύρα στο firewall, χειρίζεστε το επίπεδο ελέγχου. Το instance που εκκινεί, τα επιπλέον gigabyte που γίνονται διαθέσιμα, η κίνηση που αρχίζει να ρέει — αυτό είναι το επίπεδο δεδομένων που ανταποκρίνεται σε ό,τι του είπε το επίπεδο ελέγχου να κάνει.

Η διάκριση γίνεται πιο χρήσιμη όταν μια ομάδα λειτουργεί περισσότερους από έναν παρόχους. Η AWS έχει ένα επίπεδο ελέγχου. Το ίδιο και η Google Cloud, η Azure, η Hetzner, και κάθε άλλος πάροχος — καθένας με τη δική του κονσόλα, τη δική του μορφή API, τα δικά του διαπιστευτήρια, τη δική του ιδέα για το πώς ονομάζεται ένα 'security group' ή ένας 'κανόνας firewall'. Μια ομάδα που λειτουργεί τρία cloud και είκοσι bare-metal servers στην πραγματικότητα χειρίζεται τρία ή τέσσερα ξεχωριστά επίπεδα ελέγχου παράλληλα, συν ό,τι χρησιμοποιεί για να διαχειριστεί τους servers που δεν βρίσκονται σε κανένα cloud. Τίποτα δεν αναγκάζει αυτά τα επίπεδα ελέγχου να συμφωνούν μεταξύ τους, και τίποτα εκτός από τη δική σας διαδικασία δεν διατηρεί μια αλλαγή που έγινε σε ένα από αυτά ορατή σε κάποιον που κοιτάζει ένα άλλο.

Ο όρος 'επίπεδο ελέγχου cloud' χρησιμοποιείται επίσης με πιο στενή έννοια — μέσα στο Kubernetes, το επίπεδο ελέγχου είναι ο API server, ο scheduler και το controller-manager που αποφασίζουν πού εκτελούνται τα pods, σε αντίθεση με τα kubelets και τα containers που τα εκτελούν στην πράξη πάνω στους κόμβους. Ένα επίπεδο ελέγχου 'multi-cloud' ή 'ενοποιημένο' επεκτείνει την ίδια ιδέα σε πολλούς παρόχους: ένα μέρος για να βλέπετε και να ενεργείτε σε υποδομή που βρίσκεται φυσικά σε πολλούς διαφορετικούς λογαριασμούς, περιοχές και παρόχους, αντί για μία διεπαφή ανά πάροχο. Δεν αντικαθιστά τα υποκείμενα επίπεδα ελέγχου των παρόχων — ένα αίτημα καταλήγει και πάλι ως κλήση API προς την AWS, ή την Hetzner, ή τον fleet agent σε ένα bare-metal μηχάνημα — αλλά τοποθετείται μπροστά τους, ώστε το άτομο που κάνει την αλλαγή να χρειάζεται να μάθει μόνο ένα σύστημα.

Γιατί η διάκριση έχει σημασία στην πράξη

Τα περισσότερα περιστατικά υποδομής και τα κενά ελέγχου (audit) οφείλονται τελικά σε προβλήματα του επιπέδου ελέγχου, όχι του επιπέδου δεδομένων: μια αλλαγή που κανείς δεν κατέγραψε, ένα δικαίωμα που κανείς δεν ανακάλεσε, έναν κανόνα firewall που ανοίχτηκε στην κονσόλα ενός παρόχου και κανείς άλλος στην ομάδα δεν μπορεί να δει. Όταν κάθε cloud έχει το δικό του επίπεδο ελέγχου και το δικό του ίχνος ελέγχου (audit trail), το «ποιος το άλλαξε αυτό, και πότε» γίνεται ερώτηση που απαντάτε συνδεόμενοι σε τρεις ή τέσσερις διαφορετικές κονσόλες και συγκρίνοντας χρονοσφραγίδες με το χέρι — ή μη απαντώντας καθόλου. Για ομάδες που υπόκεινται σε πλαίσια συμμόρφωσης όπως το NIS2, αυτό το κενό δεν είναι απλώς ενοχλητικό: το ιστορικό αλλαγών, ο έλεγχος πρόσβασης και τα στοιχεία περιστατικών είναι ακριβώς αυτό που ζητά πρώτα ένας ελεγκτής ή μια ρυθμιστική αρχή, και ένα κατακερματισμένο επίπεδο ελέγχου είναι ο λόγος που αυτά τα στοιχεία συχνά δεν υπάρχουν σε ένα μέρος.

Πού εντάσσεται το Sencai

Το Sencai είναι ένα επίπεδο ελέγχου που τοποθετείται πάνω από τα δικά τους επίπεδα ελέγχου κάθε παρόχου: συνδέεται με λογαριασμούς σε έντεκα παρόχους cloud, καθώς και με on-premise και bare-metal servers μέσω ενός ελαφρού fleet agent, και καταγράφει σε απογραφή ό,τι ήδη εκτελείται τη στιγμή που συνδέεται ένας λογαριασμός — χωρίς να απαιτείται μετεγκατάσταση. Από εκεί και πέρα, η δημιουργία, η εκκίνηση, η διακοπή, η αλλαγή μεγέθους και η καταστροφή instances λειτουργούν με τον ίδιο τρόπο ανεξάρτητα από τον πάροχο. Μπορείτε να συνδέσετε υπάρχοντες λογαριασμούς (τίποτα δεν μετακινείται, τα διαπιστευτήρια παραμένουν ανακλήσιμα στον πάροχο) ή να αφήσετε το Sencai να προμηθεύει και να χρεώνει χωρητικότητα απευθείας, και να συνδυάσετε και τα δύο μέσα σε έναν οργανισμό. Κάθε ενέργεια σε κάθε συνδεδεμένο πάροχο καταγράφεται σε ένα ενιαίο, append-only, hash-chained αρχείο ελέγχου (audit log), οπότε το «ποιος το άλλαξε αυτό, και πότε» είναι ένα ερώτημα, όχι μια έρευνα.

Δείτε την απογραφή και το provisioning →