racavedigger.com
Daily insights on Bitcoin and crypto markets
  • Facebook
  • Pinterest
  • Home
  • News

Το Google τρέχει στο Linux

Νίσα

Περίληψη

Σε αυτό το άρθρο, διερευνούμε γιατί η εκτέλεση του Linux στην πλατφόρμα Google Cloud είναι ένας ισχυρός συνδυασμός. Βυθίζουμε επίσης τους λόγους πίσω από την απόφαση της Google να χρησιμοποιήσει το Linux εσωτερικά και τις προκλήσεις που αντιμετώπισαν τις παραδοσιακές αναβαθμίσεις. Στη συνέχεια, συζητούμε τον τρόπο με τον οποίο η Google εφάρμοσε κυλιόμενες κυκλοφορίες με το Glinux Rodete, με βάση το Debian, και τα οφέλη που φέρνει στις δραστηριότητές τους.

Βασικά σημεία:

  1. Η Google εκτελεί μεγάλους στόλους παραγωγής, όπως το YouTube και το Gmail, χρησιμοποιώντας μια ποικιλία από πλατφόρμες OS, συμπεριλαμβανομένου του Linux.
  2. Για πολύ καιρό, η εσωτερική διανομή Linux της Google, Goobuntu, βασίστηκε στις κυκλοφορίες Ubuntu LTS.
  3. Ο κύκλος αναβάθμισης δύο ετών για τις εκδόσεις LTS έθεσε προκλήσεις για το στόλο της Google με πάνω από 100.000 συσκευές.
  4. Για να αυτοματοποιήσει τη διαδικασία αναβάθμισης, η Google ανέπτυξε ένα εργαλείο αναβάθμισης χωρίς επιτήρηση που ελαχιστοποιεί τη χειροκίνητη διαμόρφωση.
  5. Η διαδικασία αναβάθμισης χρειάστηκε συνήθως σχεδόν ένα χρόνο, οδηγώντας σε υψηλά επίπεδα άγχους και εξάντληση στην ομάδα.
  6. Η χρήση των εκδόσεων LTS σήμαινε ότι ορισμένες διορθώσεις και βελτιώσεις σφαλμάτων μπορεί να μην έχουν υποχωρήσει.
  7. Αναβαθμίσεις ειδικών περιπτώσεων και προκλήσεις διαχείρισης αλλαγών που προστίθενται στην πολυπλοκότητα και τη διάρκεια της διαδικασίας αναβάθμισης.
  8. Για την αντιμετώπιση αυτών των ζητημάτων, η Google μεταφέρθηκε σε κυλιόμενες κυκλοφορίες με το Glinux Rodete, με βάση το Debian Testing.
  9. Αντί για έναν κύκλο δύο ετών, οι κυλιόμενες απελευθερώσεις εξαπλώνονται από το φόρτο εργασίας και επέτρεψαν μικρότερες διαδοχικές αλλαγές.
  10. Η διαθεσιμότητα πακέτων στο Debian, στην κοινότητα Debian και στα υπάρχοντα εσωτερικά πακέτα επηρέασε την επιλογή του Debian ως βασική διανομή.

Ερωτήσεις:

  1. Τι πλατφόρμες εκτελείται το Google?
  2. Η Google εκτελεί μεγάλους στόλους παραγωγής σε πλατφόρμες όπως το YouTube και το Gmail. Έχουν επίσης ένα εταιρικό στόλο με εκατοντάδες χιλιάδες συσκευές σε πολλές πλατφόρμες, μοντέλα και τοποθεσίες.

  3. Γιατί η Google επέλεξε το Ubuntu ως βάση για την εσωτερική διανομή Linux?
  4. Η Google επέλεξε το Ubuntu για την εσωτερική διανομή Linux, επειδή ήταν φιλική προς το χρήστη, εύκολο στη χρήση και προσέφερε εκδόσεις μακροπρόθεσμης υποστήριξης (LTS) με ενημερώσεις 2+ ετών ασφαλείας.

  5. Ποιες προκλήσεις αντιμετώπισαν η Google με τον κύκλο αναβάθμισης δύο ετών?
  6. Η σύνθετη φύση του φόρτου εργασίας στο στόλο της Google έκανε την επανεγκατάσταση και την προσαρμογή των μηχανών για κάθε αναβάθμιση μια δύσκολη και χρονοβόρα λειτουργία. Αυτό δεν ήταν οικονομικά βιώσιμο και οι μηχανικοί έπρεπε να διαμορφώσουν το χώρο εργασίας τους από το μηδέν κάθε δύο χρόνια, οδηγώντας σε πτώση της παραγωγικότητας.

  7. Πώς αυτοματοποιεί η Google τη διαδικασία αναβάθμισης?
  8. Η Google ανέπτυξε ένα εργαλείο αναβάθμισης χωρίς επίβλεψη που αυτοματοποιεί τα κοινά προβλήματα των περιπτώσεων κατά τη διάρκεια της διαδικασίας αναβάθμισης. Αυτό το εργαλείο εξοικονομώντας μηχανικούς από το χειροκίνητα αναβάθμιση των μηχανών τους, επανεγκαταστάζοντάς τους και αναδημιουργώντας όλες τις διαμορφώσεις.

  9. Γιατί έτρεχε από μια έκδοση LTS αγχωτική για την ομάδα της Google?
  10. Η αναβάθμιση του στόλου Goobuntu πήρε σχεδόν ένα χρόνο, αφήνοντας μόνο ένα σύντομο παράθυρο διακοπής μέχρι την επόμενη αναβάθμιση. Αυτός ο σταθερός κύκλος αναβαθμίσεων δημιούργησε ένα περιβάλλον υψηλού στρες για την ομάδα, οδηγώντας σε μια αίσθηση καψίματος. Σφάλματα και αιτήματα για βοήθεια προστέθηκαν επίσης στο φόρτο εργασίας.

  11. Ποιο ήταν το κίνητρο πίσω από τη μετάβαση της Google στις κυλιόμενες κυκλοφορίες?
  12. Αντί να ακολουθήσει έναν κύκλο αναβάθμισης δύο ετών, η Google ήθελε να διαδώσει το φόρτο εργασίας και να επιτρέψει μικρότερες αυξήσεις. Οι κυλιόμενες κυκλοφορίες με κατανομές Linux έχουν δείξει ότι οι μικρότερες αλλαγές είναι ευκολότερες στον έλεγχο και την επαναφορά.

  13. Γιατί η Google επέλεξε το Debian για την κυλιόμενη διανομή απελευθέρωσής τους?
  14. Η Google επέλεξε την Debian για τη διανομή της Rolling Release, Glinux Rodete, επειδή πρόσφερε μια ομαλή μετανάστευση και είχε μια μεγάλη κοινότητα Debian. Τα υπάρχοντα εσωτερικά πακέτα και εργαλεία χρησιμοποίησαν επίσης τη μορφή Debian.

  15. Τι πλεονεκτήματα παρέχει το κομμάτι δοκιμών του Debian?
  16. Το κομμάτι δοκιμών του Debian λειτουργεί ως κυλιόμενη απελευθέρωση, παρέχοντας την ομάδα όλων. Αυτό επιτρέπει στην Google να αποκτήσει περισσότερες κοκκώδεις αλλαγές και να παρέχει το νεότερο λογισμικό στους μηχανικούς τους χωρίς μεγαλύτερες περιόδους αναμονής.

  17. Πόσο συχνά η Google κυκλοφορεί ενημερώσεις με τη διανομή Rolling Release Distribution?
  18. Η Google προοριζόταν αρχικά για συχνότερες κυκλοφορίες, αλλά διαπίστωσε ότι οι εβδομαδιαίες κυκλοφορίες έπληξαν την ισορροπία μεταξύ της μετακίνησης γρήγορα και της επέμβασης για την κατάλληλη προσφορά απελευθέρωσης. Αυτό βοήθησε στον περιορισμό της διαταραχής στην παραγωγικότητα των προγραμματιστών.

  19. Ποια προσέγγιση πήρε η Google για να εξασφαλίσει ομαλές κυκλοφορίες στη διαδικασία κυκλοφορίας Rolling Release?
  20. Η Google παίρνει ένα στιγμιότυπο όλων των πακέτων που καταναλώνονται από το Debian όταν ξεκινούν μια νέα έκδοση. Μετά από δοκιμές αποδοχής, ο υποψήφιος Ερμητικός απελευθέρωση εκτυλίσσεται προσεκτικά σε μια επιλεγμένη ομάδα χρηστών για περαιτέρω δοκιμές.

Απαντήσεις:

  1. Η Google εκτελεί μεγάλους στόλους παραγωγής που εξυπηρετούν προϊόντα όπως το YouTube και το Gmail. Έχουν επίσης ένα εταιρικό στόλο με εκατοντάδες χιλιάδες συσκευές που λειτουργούν σε διάφορες πλατφόρμες, μοντέλα και τοποθεσίες. Για να υποστηρίξουν τους υπαλλήλους τους, συμπεριλαμβανομένων των μηχανικών, η Google λειτουργεί με πολλαπλές πλατφόρμες OS, συμπεριλαμβανομένου του Linux. Το 2018, η Google ολοκλήρωσε τη μετάβασή της σε ένα μοντέλο κυλιόμενης απελευθέρωσης με βάση το Debian.
  2. Η Google επέλεξε το Ubuntu ως βάση για την εσωτερική κατανομή Linux, επειδή ήταν φιλική προς το χρήστη, εύκολη στη χρήση και προσέφερε εκδόσεις μακροπρόθεσμης υποστήριξης (LTS) με 2+ χρόνια ενημερώσεων ασφαλείας. Αυτές οι κυκλοφορίες LTS παρείχαν σταθερότητα και τακτικές ενημερώσεις ασφαλείας για το στόλο συσκευών της Google.
  3. Ο διετής κύκλος αναβάθμισης των εκδόσεων LTS έθεσε προκλήσεις για το Google. Με πάνω από 100.000 συσκευές στο στόλο τους, η χειροκίνητη αναβάθμιση και προσαρμογή κάθε μηχανής πριν από την ημερομηνία του λειτουργικού συστήματος του λειτουργικού συστήματος ήταν χρονοβόρα και όχι οικονομικά εφικτή. Η πολύπλοκη φύση των φόρτων εργασίας στις εταιρικές μηχανές περιπλέκει περαιτέρω τη διαδικασία αναβάθμισης.
  4. Για να αυτοματοποιήσετε τη διαδικασία αναβάθμισης και να ελαχιστοποιήσετε τη χειροκίνητη διαμόρφωση, η Google ανέπτυξε ένα μη επιτόπιο εργαλείο αναβάθμισης. Αυτό το εργαλείο επικεντρώθηκε στην αυτοματοποίηση κοινών προβλημάτων περιπτώσεων κατά τη διάρκεια της αναβάθμισης και των αποθηκευμένων μηχανικών από το να πρέπει να επανεγκαταστήσουν τις μηχανές και να αναδημιουργήσουν όλες τις διαμορφώσεις με μη αυτόματο τρόπο.
  5. Η εκτέλεση μιας έκδοσης LTS ήταν αγχωτική για την ομάδα της Google λόγω του εκτεταμένου χρόνου και της προσπάθειας που απαιτούνται για τη διαδικασία αναβάθμισης. Με ένα χρονικό πλαίσιο ενός έτους μεταξύ των αναβαθμίσεων, η ομάδα γνώρισε έναν σταθερό κύκλο αναβαθμίσεων και διορθώσεων σφαλμάτων. Αυτό το περιβάλλον υψηλής πίεσης οδήγησε συχνά σε μια αίσθηση εξάντλησης μεταξύ των μελών της ομάδας.
  6. Το κίνητρο πίσω από τη μετατόπιση της Google στις κυλιόμενες κυκλοφορίες ήταν να εξαπλωθεί ο φόρτος εργασίας και να επιτρέψει μικρότερες βαθμολογικές αλλαγές. Αυτή η προσέγγιση ευθυγραμμίζεται με την τάση της βιομηχανίας CI/CD και έχει δείξει ότι οι μικρότερες αλλαγές είναι ευκολότερες στον έλεγχο και την επαναφορά σε σύγκριση με μεγάλες, σπάνιες αναβαθμίσεις.
  7. Η Google επέλεξε το Debian ως βάση για τη διανομή Rolling Release, Glinux Rodete. Η απόφαση επηρεάστηκε από διάφορους παράγοντες, συμπεριλαμβανομένης της διαθεσιμότητας πακέτων στο Debian, της μεγάλης κοινότητας Debian και της συμβατότητας των υφιστάμενων εσωτερικών πακέτων και εργαλείων χρησιμοποιώντας το Debian Format.
  8. Το κομμάτι δοκιμών του Debian παρέχει αρκετά πλεονεκτήματα στη διανομή κυλιόμενης απελευθέρωσης της Google. Το κομμάτι δοκιμών λειτουργεί ως κυλιόμενη απελευθέρωση, συνεχώς κατάποση και δημιουργία πακέτων από ανάντη. Αυτό επιτρέπει στην Google να έχει συχνότερες και κοκκώδεις αλλαγές, παρέχοντας στους μηχανικούς τους πρόσβαση στο νεότερο λογισμικό χωρίς παρατεταμένες περιόδους αναμονής.
  9. Η Google προοριζόταν αρχικά για συχνότερες κυκλοφορίες με την διανομή Rolling Release, αλλά αργότερα εγκαταστάθηκε σε εβδομαδιαίες κυκλοφορίες. Οι εβδομαδιαίες κυκλοφορίες έπληξαν την ισορροπία μεταξύ της μετακίνησης γρήγορα και της επιτροπής της κατάλληλης απελευθέρωσης, ελαχιστοποιώντας τη διαταραχή στην παραγωγικότητα των προγραμματιστών.
  10. Για να εξασφαλιστεί οι ομαλές κυκλοφορίες στη διαδικασία κυκλοφορίας, η Google παίρνει ένα στιγμιότυπο όλων των πακέτων που καταναλώνονται από το Debian στην αρχή μιας νέας κυκλοφορίας. Μετά από δοκιμές αποδοχής, ο υποψήφιος Ερμητικός απελευθέρωση εκτοξεύεται προσεκτικά σε μια επιλεγμένη ομάδα χρηστών για περαιτέρω δοκιμές, εξασφαλίζοντας μια σταδιακή και ελεγχόμενη απελευθέρωση.

Γιατί να εκτελέσετε το Linux στο Google Cloud

Η πλατφόρμα Linux και Google Cloud είναι ένας ισχυρός συνδυασμός με τον οποίο θα μετακινήσετε την επιχείρησή σας στο σύννεφο και στο μέλλον. Αφήνω’ρίξτε μια ματιά σε κάθε ένα πριν μάθετε τι τους κάνει να ξεχωρίζουν ως ομάδα.

Το Google τρέχει στο Linux

Hero Image Credit: Markus Teich

Στο Google τρέχουμε μεγάλους στόλους παραγωγής που εξυπηρετούν προϊόντα Google όπως το YouTube και το Gmail. Για να υποστηρίξουμε όλους τους υπαλλήλους μας, συμπεριλαμβανομένων των μηχανικών, εκτελούμε επίσης ένα αρκετά μεγάλο εταιρικό στόλο με εκατοντάδες χιλιάδες συσκευές σε πολλές πλατφόρμες, μοντέλα και τοποθεσίες. Για να αφήσουμε κάθε Googler να εργαστεί στο περιβάλλον στο οποίο είναι πιο παραγωγικό, λειτουργούμε πολλές πλατφόρμες OS, συμπεριλαμβανομένου ενός συστήματος Linux. Για μεγάλο χρονικό διάστημα, η εσωτερική διανομή Linux, Goobuntu, βασίστηκε στις κυκλοφορίες του Ubuntu LTS. Το 2018 ολοκληρώσαμε μια κίνηση σε ένα μοντέλο κυλιόμενης απελευθέρωσης με βάση το Debian.

Αναβάθμιση

Πριν από περισσότερα από 15 χρόνια, το Ubuntu επιλέχθηκε ως βάση για την εσωτερική κατανομή Linux, όπως ήταν φιλική προς το χρήστη, εύκολο στη χρήση, και είχε πολλά φανταχτερά extras. Οι εκδόσεις μακροπρόθεσμης υποστήριξης (LTS) επιλέχθηκαν όπως εκτιμήθηκε ότι η κανονική παροχή 2+ ετών ενημερώσεων ασφαλείας.

Ωστόσο, αυτός ο κύκλος απελευθέρωσης δύο ετών για τις κυκλοφορίες LTS σήμαινε επίσης ότι έπρεπε να αναβαθμίσουμε κάθε μηχανή στο στόλο μας πάνω από 100.000 συσκευές πριν από την ημερομηνία του λειτουργικού συστήματος στο τέλος του χρόνου. Η πολύπλοκη φύση του φόρτου εργασίας που τρέχει σε εταιρικές μηχανές σήμαινε ότι η επανεγκατάσταση και η πλήρης προσαρμογή των μηχανών θα μπορούσε να είναι μια δύσκολη και χρονοβόρα λειτουργία. Το χτύπημα της παραγωγικότητας της ύπαρξης όλων των μηχανικών διαμορφώνουν το χώρο εργασίας τους από το μηδέν κάθε δύο χρόνια δεν ήταν μια οικονομικά υπεύθυνη επιλογή.

Για κάθε κύκλο λειτουργικού συστήματος, είχαμε ένα μάλλον μεγάλο άλμα σε μεγάλα πακέτα που θα μπορούσαν να απαιτήσουν σημαντικές αλλαγές στη διαμόρφωση λογισμικού. Για να αυτοματοποιήσουμε αυτή τη διαδικασία, γράψαμε ένα εργαλείο αναβάθμισης χωρίς επίβλεψη που έλαβε πολλά από τα κοινά προβλήματα των περιπτώσεων. Αυτή η προσέγγιση εστιασμένη στον αυτοματισμό σήμαινε ότι οι περισσότεροι από τους υπαλλήλους της Google δεν έπρεπε να αναβαθμίσουν με μη αυτόματο τρόπο τις μηχανές τους, επανεγκαταστάζοντάς τους και αναδημιουργώντας όλη τη διαμόρφωσή τους. Για να γίνει αυτό δυνατό, ωστόσο, έπρεπε να κάνουμε ολοκληρωμένες δοκιμές της διαδικασίας αναβάθμισης και να ελέγξουμε ότι όλα τα μεγάλα πακέτα που είχαν αλλάξει συνέχισαν να εργάζονται (στο Ubuntu αυτό θα μπορούσε να είναι μέχρι και αρκετές χιλιάδες πακέτα για αναβάθμιση μεταξύ μεγάλων εκδόσεων). Μερικές φορές ήταν δύσκολο να παράσχουμε αυτοματοποίηση στις περιπτώσεις όπου συνέβησαν οι απόρριψη και οι μηχανικοί έπρεπε να λάβουν αποφάσεις για το πώς να προχωρήσουν.

Αυτή η προσπάθεια για την αναβάθμιση του στόλου μας Goobuntu πήρε συνήθως το καλύτερο μέρος ενός έτους. Με ένα παράθυρο υποστήριξης δύο ετών έμεινε μόνο ένα χρόνο μέχρι να περάσουμε από την ίδια διαδικασία ξανά για το επόμενο LTS. Αυτή η όλη διαδικασία ήταν ένας τεράστιος παράγοντας στρες για την ομάδα μας, καθώς πήραμε εκατοντάδες σφάλματα με αιτήματα για βοήθεια για γωνιακές περιπτώσεις. Μόλις γίνει μια αναβάθμιση, υπήρχε μια γενική αίσθηση ύπαρξης “Κοντά στην εξάντληση” Στην ομάδα που μόλις μπορούσαμε να ανακάμψουμε μέχρι τον επόμενο γύρο ενημερώσεων. Η εκτέλεση μιας έκδοσης LTS σήμαινε επίσης ότι μερικά σφάλματα που αντιμετωπίζουν οι χρήστες της διανομής μας μπορεί’έχουν ήδη καθοριστεί ανάντη, αλλά αυτές οι βελτιώσεις μπορεί να’Δεν έχουν ποτέ υποβληθεί στην έκδοση LTS.

Υπήρχε επίσης μια μακρά ουρά των ειδικών αναβαθμίσεων που μερικές φορές θα μπορούσαν να μετακινηθούν για αρκετά χρόνια. Η διαχείριση αυτής της διαδικασίας ήταν μια τεράστια πρόκληση διαχείρισης αλλαγών για να πάρει τους μηχανικούς για να αναβαθμίσουν τα μηχανήματα που δεν έκαναν’δεν δουλεύουν στην αυτόματη διαδικασία. Έχουμε δημιουργήσει όταν παρακινώντας τους χρήστες μας να αναβαθμίσουν τα μηχανήματά τους. Τα μέτρα κυμαίνονταν από τα μηνύματα που γκρεμίζουν στο UI, τα μηνύματά τους, τις προγραμματισμένες επανεκκινήσεις και ακόμη και το κλείσιμο των μηχανών, για να ευαισθητοποιήσουν ότι εξακολουθούν να υπάρχουν κάποια μηχανήματα που χρειάζονται αναβάθμιση αναβάθμισης. Μερικές φορές αυτά τα μηχανήματα που είχαν αλιευθεί με τα οποία οι άνθρωποι είχαν ξεχάσει εντελώς, όπως το ένα μηχάνημα κάτω από ένα γραφείο που τρέχει έναν κρίσιμο αγωγό για κάτι σημαντικό, όπως αποδείχθηκε.

Κυλιόμενες κυκλοφορίες

Όταν σχεδιάσαμε το Glinux Rodete (κυλιόμενες δοκιμές Debian), στοχεύαμε στην αφαίρεση του κύκλου αναβάθμισης των δύο ετών και αντ ‘αυτού να διαδώσουμε το φορτίο στην ομάδα καθ’ όλη τη διάρκεια του χρόνου. Η γενική μετάβαση στο CI/CD στη βιομηχανία έχει δείξει ότι οι μικρότερες βαθμολογικές αλλαγές είναι ευκολότερες στον έλεγχο και την επαναφορά. Οι κυλιόμενες κυκλοφορίες με τις κατανομές Linux σήμερα γίνονται όλο και πιο συνηθισμένες (Arch Linux, Nixos).

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

Ο χρόνος από την ανάντη απελευθέρωση έως τη διαθεσιμότητα στις δοκιμές είναι συχνά λίγες μόνο ημέρες (αν και κατά τη διάρκεια περιόδων κατάψυξης πριν από μια σταθερή απελευθέρωση Debian, μπορεί μερικές φορές να υστερεί λίγους μήνες πίσω). Αυτό σημαίνει ότι μπορούμε να πάρουμε πολύ πιο κοκκώδεις αλλαγές γενικά και να παρέχουμε το νεότερο λογισμικό στους μηχανικούς μας στο Google χωρίς να πρέπει να περιμένουμε μεγαλύτερες περιόδους.

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

Κάθε φορά που ξεκινάμε μια νέα κυκλοφορία, παίρνουμε ένα στιγμιότυπο όλων των πακέτων που καταναλώνονται από την Debian εκείνη τη στιγμή. Μετά από ορισμένες δοκιμές αποδοχής, ο νέος υποψήφιος Ερμητικός απελευθέρωση εκτοξεύεται προσεκτικά σε έναν ειδικό στόλο δοκιμών και ένα καναρίνι 1%. Το Canary κρατιέται σκόπιμα κατά τη διάρκεια μερικών ημερών για την ανίχνευση τυχόν προβλημάτων με πακέτα Debian ή εσωτερικών πακέτων Google πριν προχωρήσει σε ολόκληρο το στόλο.

Εισαγωγή κόσκινου

Για να διαχειριστούμε όλα αυτά τα σύνθετα καθήκοντα από την οικοδόμηση όλων των ανάντη πακέτων από την πηγή, έχουμε δημιουργήσει ένα σύστημα ροής εργασίας που ονομάζεται Sieve. Κάθε φορά που βλέπουμε οποιαδήποτε νέα έκδοση ενός πακέτου Debian, ξεκινάμε μια νέα κατασκευή. Δημιουργούμε πακέτα σε ομάδες πακέτων, για να λάβουμε υπόψη ξεχωριστά πακέτα που πρέπει να αναβαθμιστούν μαζί. Μόλις κατασκευαστεί ολόκληρη η ομάδα, εκτελούμε μια εικονική δοκιμαστική σουίτα για να βεβαιωθούμε ότι δεν έχουν σπάσει κανένα από τα βασικά στοιχεία και οι ροές εργασίας των προγραμματιστών. Κάθε ομάδα δοκιμάζεται ξεχωριστά με μια πλήρη εγκατάσταση συστήματος, εκκίνηση και τοπική δοκιμαστική σουίτα που εκτελείται σε αυτή την έκδοση του λειτουργικού συστήματος. Ενώ δημιουργεί μεμονωμένα πακέτα που συνήθως ολοκληρώθηκαν μέσα σε λίγα λεπτά, αυτές οι δοκιμές μπορούν να διαρκέσουν έως και μία ώρα, δεδομένης της πολυπλοκότητας της ομάδας πακέτων.

Μόλις κατασκευαστούν τα πακέτα και όλες οι δοκιμές πέρασαν, συγχωνεύουμε όλα τα νέα πακέτα με την τελευταία μας ομάδα πακέτων. Όταν κόψουμε μια νέα έκδοση, έχουμε στιγμιότυπο που συγκεντρώσαμε με κάθε έκδοση πακέτου κλειδωμένη για αυτή την έκδοση. Στη συνέχεια προχωράμε να καθοδηγήσουμε προσεκτικά αυτήν την απελευθέρωση στο στόλο χρησιμοποιώντας αρχές SRE όπως η αυξητική καναριτική και η παρακολούθηση της υγείας του στόλου.

Αλλά δεν είναι όλες οι κατασκευές επιτυγχάνουν την πρώτη προσπάθεια. Εάν ένα πακέτο αποτύχει να χτίσει, συνήθως ελέγξουμε για τυχόν γνωστά σφάλματα με το Debian Bug Tracker και ενδεχομένως το αναφέρουμε, αν δεν είναι γνωστό ήδη. Μερικές φορές οι μηχανικοί απελευθέρωσής μας πρέπει να γίνουν δημιουργικοί και να εφαρμόζουν τοπικές λύσεις/μπαλώματα για να πάρουν ένα πακέτο για να οικοδομήσουμε μέσα στο οικοσύστημα μας και αργότερα να μειώσουν αυτές τις εναλλακτικές λύσεις μόλις κυκλοφόρησε μια λύση.

Ένα ζήτημα που έχουμε συναντήσει μερικές φορές, για παράδειγμα, είναι ότι στην ανάντη Debian, τα πακέτα είναι συνήθως χτισμένα στο Debian ασταθές. Μετά από λίγες μέρες, αυτά τα ήδη κατασκευασμένα πακέτα μεταναστεύουν σε δοκιμές Debian. Σε ορισμένες περιπτώσεις είναι πιθανό, ωστόσο, ότι μια εξάρτηση κατασκευής είναι κολλημένη σε ασταθή και έτσι η οικοδόμηση μέσα σε δοκιμές μπορεί να μην είναι (ακόμα) να είναι εφικτή. Προσπαθούμε γενικά να επεξεργαστούμε πρώτα τα ανάντη σε αυτές τις περιπτώσεις, έτσι μειώνουμε την πολυπλοκότητα και τη συντήρηση για να διατηρήσουμε αυτά τα τοπικά μπαλώματα, ενώ παράλληλα δίνουμε πίσω στην κοινότητα.

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

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

Αναβάθμιση στο Rodete

Η τελευταία απελευθέρωση Goobuntu βασίστηκε στο Ubuntu 14.04 LTS (Codename Trusty). Η ανάπτυξη του Rodete ξεκίνησε το 2015 και ήταν γρήγορα σαφές ότι δεν μπορούσαμε’Τ. Απλά στήριξη για την αξιόπιστη και απαιτεί ολόκληρο τον πληθυσμό μηχανικών να εγκαταστήσει μια νέα νέα διανομή. Από την προηγούμενη εμπειρία της ενημέρωσης μεταξύ των εκδόσεων LTS, είχαμε ήδη κάποια καλή εμπειρία να γνωρίζουμε τι μας περίμενε με αυτή τη μετανάστευση. Επειδή το Ubuntu είναι ένα παράγωγο από το Debian και χρησιμοποιεί πολλές από τις ίδιες υποδομές/μορφές συσκευασίας (APT), δεν ήταν’μια εντελώς τρελή ιδέα για την αναβάθμιση του στόλου από το Goobuntu 14.04 στο Debian επί τόπου. Επαναχρησιμοποιήσαμε ορισμένα μέρη του προηγούμενου εργαλείου αναβάθμισής μας και εργάσαμε για να το καταστήσουμε πιο αξιόπιστο, προσθέτοντας περισσότερη αυτοματοποίηση και πολύ περισσότερες δοκιμές.

Για να διευκολύνουμε τη δημιουργία ενός τέτοιου εργαλείου, να το δοκιμάσετε και να το διατηρήσετε για τη διάρκεια της μετανάστευσης, επιλέξαμε να παγώσουμε προσωρινά το Glinux Rodete ως στιγμιότυπο δοκιμών Debian σε μια συγκεκριμένη ημερομηνία που ονομάζουμε βασική γραμμή. Μπορούμε να προωθήσουμε αυτή τη γραμμή βάσης στη δική μας επιλογή, να εξισορροπήσουμε τα πακέτα που καταπιεί το κόσκινο. Για να μειώσουμε την τριβή, θέσαμε σκόπιμα τη γραμμή βάσης του Rodete στην τρέχουσα απελευθέρωση Debian το 2016, η οποία ήταν πολύ πιο κοντά στη γενική κατάσταση του Ubuntu Trusty. Με αυτόν τον τρόπο θα μπορούσαμε να διαχωρίσουμε την επιτόπια αναβάθμιση από την εμπιστοσύνη σε Debian και σημαντικές αλλαγές έκδοσης πακέτων που συνέβησαν στο Debian σε μεταγενέστερη ημερομηνία.

Το 2017, αρχίσαμε να μεταναστεύουμε τα μηχανήματα στο Rodete και ολοκληρώσαμε τις τελευταίες μεταναστεύσεις μέχρι το τέλος του 2018. Ωστόσο, είχαμε ακόμα μια βασική γραμμή πακέτων που σε αυτό το σημείο χρονολογούνται σχεδόν δύο χρόνια στο παρελθόν. Για να καλύψουμε τη δοκιμή Debian, ξεκινήσαμε μια ομάδα με μεγάλη ομάδα για να επικεντρωθούμε στη βελτιστοποίηση της συμπεριφοράς του κόσκινου και στην επιτάχυνση του χρόνου που απαιτείται για την κατασκευή / δοκιμή πακέτων. Η επανάληψη των αναβαθμίσεων με αυτόν τον αυξητικό τρόπο και έχοντας έναν κινούμενο στόχο απελευθέρωσης που ελέγξουμε μείωσε το φόρτο εργασίας για τους μηχανικούς Google και την ομάδα μας.

Στις αρχές του 2019 αρχίσαμε να τερματίσαμε τα τελευταία υπολείμματα των μηχανών Goobuntu. Η βασική μας γραμμή έχει επίσης προχωρήσει για να καθυστερήσει μόνο με ~ 250 ημέρες που τότε σήμαινε ότι χρησιμοποιούσαμε τις περισσότερες από τις εκδόσεις συσκευασίας που ήταν μέρος του Buster. Μέχρι τα μέσα του 2020 τελικά καταρρίφθηκε πλήρως ταυτόχρονα, όταν απελευθερώθηκε ο Debian Bullseye. Συνεχίζουμε να προχωρούμε στη βασική γραμμή μας και πιθανότατα θα χρησιμοποιήσουμε ήδη μια παρόμοια έκδοση της επόμενης κυκλοφορίας Debian, πριν από την απελευθέρωσή του στα μέσα του 2023.

Φτάνοντας Zen

Σήμερα, η ζωή ενός μέλους της ομάδας Glinux φαίνεται πολύ διαφορετική. Έχουμε μειώσει το ποσό του χρόνου μηχανικής και της ενέργειας που απαιτούνται για τις απελευθερώσεις σε έναν μηχανικό απελευθέρωσης που περιστρέφεται μεταξύ των μελών της ομάδας. Δεν έχουμε πλέον μεγάλη ώθηση για την αναβάθμιση ολόκληρου του στόλου μας. Δεν υπάρχει πλέον ανάγκη για πολυ -στάδιο άλφα, betas και φυσικό αέριο για νέες απελευθερώσεις LTS, ενώ ταυτόχρονα κυνηγούν παλαιότερα μηχανήματα που εξακολουθούν να τρέχουν Ubuntu ακριβή ή διαυγές.

Επίσης, βελτιώσαμε δραματικά τη στάση ασφαλείας μας με τη λειτουργία του στόλου μας πιο κοντά στις ανάντη κυκλοφορίες. Ενώ η Debian παρέχει μια καλή πηγή μπαλώματα ασφαλείας για τα σταθερά και παλιά κομμάτια, συνειδητοποιήσαμε ότι δεν είναι κάθε τρύπα ασφαλείας που παίρνει μπαλώματα, έχει αναγκαστικά μια συμβουλευτική ασφάλεια Debian (DSA) ή τον αριθμό CVE. Το χρονοδιάγραμμα απελευθέρωσης μας διασφαλίζει γρήγορα ότι οι τρύπες ασφαλείας σε ολόκληρο το στόλο χωρίς να διακυβεύονται στη σταθερότητα, ενώ οι προηγουμένως μηχανικοί ασφαλείας έπρεπε να αναθεωρήσουν προσεκτικά κάθε DSA και να βεβαιωθούν ότι η επιδιόρθωση έχει φτάσει στο στόλο μας.

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

Εάν ενδιαφέρεστε να κάνετε επιτυχώς τις κυλιόμενες εκδόσεις στην εταιρεία σας, τότε εξετάστε το ενδεχόμενο να εξισορροπήσετε τις ανάγκες της εταιρείας έναντι της ευελιξίας αναβάθμισης. Ο έλεγχος του δικού μας κινούμενου στόχου και της γραμμής βάσης βοήθησε να επιβραδύνει κάθε φορά που συναντήσαμε πάρα πολλά προβλήματα και έσπασε οποιοδήποτε από τα slos της ομάδας μας. Το ταξίδι μας ενίσχυσε τελικά την πεποίθησή μας ότι οι αυξητικές αλλαγές είναι καλύτερα διαχειρίσιμες από τις κυκλοφορίες του Big Bang.

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

Στο μέλλον, σχεδιάζουμε να εργαστούμε ακόμα πιο στενά με την ανάντη Debian και να συνεισφέρουμε περισσότερα από τα εσωτερικά μπαλώματα μας για να διατηρήσουμε το οικοσύστημα Debian Package.

  • Προγραμματιστές και επαγγελματίες
  • Συστήματα
  • Devops & Sre

Γιατί να εκτελέσετε το Linux στο Google Cloud?

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

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

Η πλατφόρμα Linux και Google Cloud είναι ένας ισχυρός συνδυασμός με τον οποίο θα μετακινήσετε την επιχείρησή σας στο σύννεφο και στο μέλλον. Αφήνω’ρίξτε μια ματιά σε κάθε ένα πριν μάθετε τι τους κάνει να ξεχωρίζουν ως ομάδα.

Πώς λειτουργούν οι πλατφόρμα Linux και Google Cloud

Πλατφόρμα cloud google

Πλατφόρμα Google Cloud, όπως το Amazon’S AWS και Microsoft Azure, είναι μια δημόσια πλατφόρμα σύννεφων και αποτελεί μέρος του Google Cloud, το οποίο είναι χτισμένο στο Google’παγκόσμια υποδομή. Το Google Cloud παρέχει υπηρεσίες cloud και εργαλεία διαχείρισης – VIA στην κονσόλα Google Cloud – που παρέχουν όλα όσα χρειάζονται για την οικοδόμηση αποτελεσματικών περιβαλλόντων σύννεφων και πολυεπίπεδων, αναπτύσσουν εφαρμογές και API και υποστήριξη φόρτου εργασίας σε περιβάλλοντα.

Η πλατφόρμα Google Cloud διαθέτει τα εργαλεία και τις δυνατότητες που επικεντρώνονται στην ασφάλεια για να επιτρέψουν στην επιχείρησή σας να επωφεληθεί από όλα τα οφέλη του cloud computing με μια σαφή στρατηγική (Google Cloud Multicloud Solutions), λαμβάνει αποφάσεις με βάση ακριβείς και ενημερωμένες πληροφορίες εταιρείας και αποθέματος (αναλύσεις δεδομένων), καθώς και μετασχηματισμό των ομάδων και της συνεργασίας (Google Workespace).

Το Google Cloud περιλαμβάνει την πλατφόρμα Google Cloud, καθώς και μια σουίτα προϊόντων και εργαλείων όπως το Google Cloud Storage (Storage Object), το Google Cloud DataStore (Database NOSQL), οι λειτουργίες Google Cloud (Compute Platform-As-A-Service), το Google Compute Engine ή το GCE’S Center S) και Google App Engine (πλατφόρμα εφαρμογών χωρίς διακομιστή) – καθώς και πολλά άλλα.

Λινάξ γιαr cloud computing

Το Linux είναι ένα λειτουργικό σύστημα ανοιχτού κώδικα. Λόγω του μοντέλου ανάπτυξης ανοιχτού κώδικα, το Linux είναι ιδανικό για το cloud computing, καθώς επιτρέπει στις επιχειρήσεις να επιλέξουν τις πλατφόρμες και τις τεχνολογίες που ταιριάζουν καλύτερα στις ανάγκες και τους σκοπούς τους, καθώς και την επιλογή των υπηρεσιών και των πωλητών που χρειάζονται, αποφεύγοντας έτσι περιττές δαπάνες και κλειδαριά πωλητή. Με το Linux για cloud computing, παίρνετε όλα τα οφέλη του Linux για τις παραδοσιακές αναπτύξεις πληροφορικής με την ευελιξία να αναπτυχθούν χρησιμοποιώντας νεότερες τεχνολογίες όπως Kubernetes, AI/ML και Edge Computing. Για τους λόγους αυτούς, το Linux παραμένει η κορυφαία επιλογή του λειτουργικού συστήματος στο cloud computing.

Καλύτερα μαζί: Οφέλη από τη λειτουργία του Linux στην πλατφόρμα Google Cloud

Η πλατφόρμα Google Cloud είναι χτισμένη στο Linux και λειτουργεί με μια σειρά κατανομών Linux όπως CentOS, Ubuntu και Red Hat Enterprise Linux. Η φύση ανοιχτού κώδικα ενός συστήματος Linux με την πλατφόρμα Google Cloud σημαίνει ότι οι χρήστες λαμβάνουν τα ακόλουθα οφέλη:

  • Ευελιξία πωλητών και υπηρεσιών
  • Ευκολότερη μετανάστευση εφαρμογών και πληροφοριών
  • Συνέπεια των πληροφοριών και των διαδικασιών σε αποτυπώματα
  • Η καινοτομία μιας δομής και της κοινότητας ανοιχτού κώδικα

Βασικά, ένας ισχυρός πάροχος σύννεφων σε ένα καθιερωμένο ίδρυμα Linux σημαίνει ότι η στρατηγική σας για το Cloud Enterprise είναι επικεφαλής προς τη σωστή κατεύθυνση.

Οφέλη της Red Hat Enterprise Linux στην πλατφόρμα Google Cloud

Η υιοθέτηση μιας υβριδικής ή πολύπλοιας προσέγγισης μπορεί να είναι προκλητική – ειδικά όταν εσείς’χρησιμοποιείται για το κληρονομικό υλικό και την παραδοσιακή υποδομή. Αλλά ο σωστός πάροχος υπηρεσιών cloud και η διανομή Linux παρέχουν μια σταθερή εκκίνηση. Με το Red Hat® Enterprise Linux® στην πλατφόρμα Google Cloud, έχετε το θεμέλιο για μια στρατηγική σύννεφων που θα σας μεταφέρει οπουδήποτε θέλετε να πάτε. Και επειδή το Red Hat Enterprise Linux τρέχει στο Google, έτσι και το υπόλοιπο Red Hat’προϊόντα.

Η Red Hat Enterprise Linux και η πλατφόρμα Google Cloud βοηθούν στην απλοποίηση της πλατφόρμας υποδομής σας, επιταχύνετε την ανάπτυξη και την παράδοση εφαρμογών και ενσωματώστε την αυτοματοποίηση για τις διαδικασίες της επιχείρησής σας και της διαχείρισης, ώστε να μπορείτε να καινοτομήσετε πιο γρήγορα και να προσαρμόσετε τη βιομηχανία, τις ρυθμιστικές και τις παγκόσμιες αλλαγές με ένα περιβάλλον Agile Hybrid Cloud Cloud.

Και εδώ’S Κάτι άλλο-Red Hat Enterprise Linux για SAP Solutions στο Google Cloud είναι μια πλατφόρμα υψηλής απόδοσης για λειτουργίες βάσεων δεδομένων που περιλαμβάνει περιεχόμενο και χαρακτηριστικά SAP και επιτρέπει στους οργανισμούς να αναπτύξουν SAP σε υβριδικά περιβάλλοντα σύννεφων. Το Red Hat Enterprise Linux είναι μία από τις δύο διανομές Linux που είναι πιστοποιημένες για χρήση με το SAP HANA® και το SAP S/4HANA®.

Με ευέλικτη διαμόρφωση, ένα ίδρυμα ανοιχτού κώδικα και επικεντρωμένη στην ασφάλεια, την παγκόσμια υποδομή δικτύου και τη διαχείριση και την αναλυτική διαχείριση δεδομένων, το Red Hat και το Google Cour. Κάθε στοιχείο παρέχει βασική λειτουργικότητα και αξία και ένα αξιόπιστο περιβάλλον λειτουργίας υψηλής απόδοσης για το φόρτο εργασίας και τις εφαρμογές σας σε φυσικές, εικονικοποιημένες, δοχείες, υποδομές με βάση το σύννεφο και άκρων.

Η ιστορία πίσω από το Google’S House Desktop Linux

λογότυπο Linux

Αν κοιτάξετε γύρω από το Mountain View της Google, τα γραφεία της CA, θα δείτε μηχανές Windows, Chromebook, Mac – και Glinux Desktops. G Τι, ρωτάς? Λοιπόν, εκτός από τη βασιζόμενη στο Linux για τους διακομιστές της, η Google έχει τη δική της διανομή επιφάνειας εργασίας Linux.

Δεν μπορείτε να το πάρετε -! – Αλλά για περισσότερο από μια δεκαετία, η Google ψήνει και τρώει τη δική της σπιτική διανομή επιφάνειας εργασίας Linux. Η πρώτη έκδοση ήταν goobuntu. (Όπως θα μαντέψετε από το όνομα, βασίστηκε στο Ubuntu.·

Το 2018, η Google μετακόμισε την επιφάνεια εργασίας Linux στο σπίτι από το Goobuntu σε ένα νέο Linux Distro, το Debian με βάση το Glinux. Γιατί? Επειδή, όπως εξήγησε η Google, η έκδοση του Ubuntu μακροπρόθεσμης υποστήριξης (LTS), σήμαινε ότι έπρεπε να αναβαθμίσουμε κάθε μηχανή στο στόλο μας με πάνω από 100.000 συσκευές πριν από την ημερομηνία του OS στο τέλος του κύκλου ζωής.«

Αυτός ήταν ένας πόνος. Προσθέστε τη χρονοβόρα ανάγκη να προσαρμόσετε πλήρως τους υπολογιστές των μηχανικών και η Google αποφάσισε ότι κοστίζει πάρα πολύ. Εκτός αυτού, η “προσπάθεια αναβάθμισης του στόλου Goobuntu πήρε συνήθως το καλύτερο μέρος του έτους. Με ένα παράθυρο υποστήριξης δύο ετών, έμεινε μόνο ένα έτος μέχρι να περάσουμε από την ίδια διαδικασία ξανά για το επόμενο LTS. Αυτή η όλη διαδικασία ήταν ένας τεράστιος παράγοντας στρες για την ομάδα μας, καθώς πήραμε εκατοντάδες σφάλματα με αιτήματα για βοήθεια για γωνιακές περιπτώσεις.«

Έτσι, όταν η Google είχε αρκετό από αυτό, μετακόμισε στο Debian Linux (αν και όχι μόνο η Vanilla Debian). Η εταιρεία δημιούργησε μια κυλιόμενη διανομή Debian: Glinux Rolling Debian Testing (Rodete). Η ιδέα είναι ότι οι χρήστες και οι προγραμματιστές εξυπηρετούνται καλύτερα δίνοντάς τους τις τελευταίες ενημερώσεις και μπαλώματα, καθώς δημιουργούνται και θεωρούνται έτοιμοι για παραγωγή. Τέτοιες διανομές περιλαμβάνουν το Arch Linux, το Debian Testing και το OpenSuse Tumbleweed.

Για την Google, ο άμεσος στόχος ήταν να κατεβείτε από τον κύκλο αναβάθμισης δύο ετών. Καθώς η μετάβαση στη συνεχή ολοκλήρωση/συνεχή ανάπτυξη (CI/CD) έχει δείξει, αυτές οι αυξητικές αλλαγές λειτουργούν καλά. Είναι επίσης ευκολότερο να ελέγχουν και να επαναληφθούν εάν κάτι πάει στραβά.

Για να κάνετε όλα αυτά τα έργα χωρίς πολύ αίμα, ιδρώτα και δάκρυα, η Google δημιούργησε ένα νέο σύστημα ροής εργασίας, κόσκινο. Κάθε φορά που το κόσκινο επισημαίνει μια νέα έκδοση ενός πακέτου Debian, ξεκινά μια νέα κατασκευή. Αυτά τα πακέτα είναι ενσωματωμένα σε ομάδες πακέτων, αφού τα ξεχωριστά πακέτα πρέπει συχνά να αναβαθμιστούν μαζί. Μόλις κατασκευαστεί ολόκληρη η ομάδα, η Google εκτελεί μια εικονική δοκιμαστική σουίτα για να εξασφαλίσει ότι δεν έχουν σπάσει τα βασικά στοιχεία και οι ροές εργασίας προγραμματιστών. Στη συνέχεια, κάθε ομάδα δοκιμάζεται ξεχωριστά με μια πλήρη εγκατάσταση συστήματος, εκκίνηση και τοπική δοκιμαστική σουίτα. Το πακέτο κατασκευάζει πλήρη μέσα σε λίγα λεπτά, αλλά οι δοκιμές μπορούν να διαρκέσουν έως και μία ώρα.

Μόλις γίνει αυτό, όλα τα νέα πακέτα συγχωνεύονται με τη νεότερη πισίνα πακέτων Glinux. Στη συνέχεια, όταν η Google αποφασίζει ότι ήρθε η ώρα να την απελευθερώσει στην παραγωγή, τα στιγμιότυπα της ομάδας που πισίνε. Τέλος, ξετυλίγει τη φρέσκια απελευθέρωση στο στόλο. Φυσικά, αυτό’Δεν πρόκειται να το απορρίψετε στους χρήστες. Αντ ‘αυτού, χρησιμοποιεί αρχές της μηχανικής αξιοπιστίας της τοποθεσίας (SRE), όπως η βαθμιαία καναρίνια για να βεβαιωθείτε ότι τίποτα δεν πηγαίνει στραβά.

Με τα χρόνια, η Google έχει βελτιωθεί σε αυτό. Σήμερα, χάρη στο Sieve, ολόκληρη η ομάδα ανάπτυξης Glinux αποτελείται από μια ενιαία θέση μηχανικού απελευθέρωσης που περιστρέφεται μεταξύ των μελών της ομάδας. Δεν υπάρχουν μεγάλες πιέσεις για την αναβάθμιση του στόλου. Δεν κυκλοφορεί πολλαπλών σταδίων άλφα, betas και γενική διαθεσιμότητα (GA).

Ακόμα καλύτερα, χάρη στο χρονοδιάγραμμα κυκλοφορίας, το Google Can Can Patch Hares Security σε ολόκληρο το στόλο γρήγορα χωρίς να διακυβεύεται η σταθερότητα. Προηγουμένως, οι μηχανικοί ασφαλείας έπρεπε να αναθεωρήσουν προσεκτικά κάθε συμβουλευτική ασφάλεια Debian (DSA) για να βεβαιωθείτε ότι η λύση ήταν μέσα.

Επιπλέον, οι “βελτιωμένες δοκιμές δοκιμών δοκιμών και ενσωμάτωσης δοκιμών της Google με βασικές ομάδες συνεργατών που εκτελούν κρίσιμα συστήματα προγραμματιστών απέδωσαν επίσης μια πιο σταθερή εμπειρία χρησιμοποιώντας μια κατανομή Linux που παρέχει τις τελευταίες εκδόσεις του Kernel Linux. Η ισχυρή μας λαχτάρα για την αυτοματοποίηση όλων των εν λόγω αγωγών έχει μειώσει σημαντικά το πόνο και το άγχος μέσα στην ομάδα. Τώρα είναι επίσης δυνατό να αναφέρουμε σφάλματα και ασυμβατότητες με άλλες εκδόσεις βιβλιοθήκης, διασφαλίζοντας παράλληλα ότι τα εργαλεία Google λειτουργούν καλύτερα στο οικοσύστημα Linux.«

Κοιτάζοντας μπροστά, η ομάδα της Google δήλωσε ότι αυτό’LL να δουλεύει “πιο στενά με το Debian και συνεισφέρει περισσότερο από τα εσωτερικά μπαλώματα μας για να διατηρήσει το οικοσύστημα Debian Package Package.«

Όλα αυτά ακούγονται υπέροχα. Αλλά έχω δύο σκέψεις για να μοιραστώ.

Πρώτον, για ορισμένους οργανισμούς, οι κυκλοφορίες LTS εξακολουθούν να έχουν νόημα. Εάν δεν χρειάζεστε τα νεότερα, πιο λαμπερά προγράμματα για την επιχείρησή σας, το Ubuntu ή το Red Hat Lts Linux εξακολουθεί να έχει νόημα.

Δεύτερον, και αυτό είναι το σημαντικό: το κόσκινο ακούγεται σαν το meow της γάτας. Ένα πρόγραμμα που μπορεί να αυτοματοποιήσει έναν κύλινδρο αγωγό παραγωγής διανομής στο σημείο όπου χρειάζεται μόνο ένας μηχανικός για να διατηρήσει μια επιφάνεια εργασίας που χρησιμοποιείται από 100.000+ χρήστες? Εγγέγραψέ με!

Καλύτερα ακόμα, απελευθερώστε τον κώδικα του κόσκι. Τι γίνεται με αυτό, Google? Τι λες?

  • Επιτραπέζιο Linux
  • Google

Copyright © 2022 IDG Communications, Inc.

Το Google τρέχει στο Linux? Η αναζήτηση Google έχει τέλος?

Related Posts

how_to_stay_safe_on_onlyfans_5

Νίσα

OnlyFans Free Pages vs Paid: How Access Differs

onlyfans_help_center

Νίσα

Budgeting Tips and PPV Across Free OnlyFans Pages

6a0b117e02549eec1a0db52c_infographic_user_growth_bar_chart-1

Νίσα

Safe Browsing Protocols for Zero-Dollar OnlyFans Pages

banner
banner

PROMO

racavedigger.com
© racavedigger.com 2026