Παρακολουθήστε τη λειτουργία που βλέπει ο χρήστης, προσθέστε αρκετά στοιχεία πόρων και εφαρμογής για να τη διαγνώσετε και ειδοποιήστε μόνο για συνθήκες που απαιτούν έγκαιρη ανθρώπινη ενέργεια. Συνδυάστε κάθε ειδοποίηση με έναν υπεύθυνο, ένα πρώτο βήμα και κλιμάκωση. Κατά τη διάρκεια ενός περιστατικού, συντονίστε τον μετριασμό, προστατέψτε τα στοιχεία και επαληθεύστε την ανάκτηση μέσω της πραγματικής διαδρομής του χρήστη.
Ξεκινήστε από τη λειτουργία που έχει σημασία
Ένας διακομιστής που απαντά σε ping δεν αποδεικνύει ότι λειτουργεί η εφαρμογή του. Επιλέξτε μια αντιπροσωπευτική, ακίνδυνη διαδρομή χρήστη, όπως η ανάκτηση μιας δημόσιας σελίδας ή η πρόσβαση σε ένα ελεγχόμενο τελικό σημείο δοκιμής. Καθορίστε πώς μοιάζει η επιτυχία και αποφύγετε συνθετικούς ελέγχους που δημιουργούν πραγματικές παραγγελίες, δημοσιεύουν περιεχόμενο ή στέλνουν ειδοποιήσεις πελατών σε κάθε εκτέλεση.
Παρακολουθήστε από μια κατάλληλη εξωτερική οπτική καθώς και από μέσα στην εφαρμογή. Η εξωτερική παρατήρηση μπορεί να αποκαλύψει προβλήματα πρόσβασης ή δρομολόγησης που ο διακομιστής δεν βλέπει. Οι εσωτερικές μετρήσεις μπορούν να εξηγήσουν γιατί απέτυχε η διαδρομή. Κρατήστε και τις δύο οπτικές συνδεδεμένες με τη λειτουργία αντί να συλλέγετε έναν μεγάλο πίνακα ελέγχου απλώς επειδή κάθε μέτρηση είναι διαθέσιμη.
Επιλέξτε σήματα με διαγνωστική αξία
Η καθοδήγηση SRE της Google επισημαίνει την καθυστέρηση, την κίνηση, τα σφάλματα και τον κορεσμό ως χρήσιμα σήματα για συστήματα που απευθύνονται σε χρήστες. Χρησιμοποιήστε τα για να περιγράψετε τη συμπεριφορά: χρόνο απόκρισης, όγκο αιτημάτων, ανεπιτυχή αιτήματα και πίεση σε περιορισμένους πόρους. Επιλέξτε μετρήσεις κατάλληλες για την εφαρμογή αντί να υποθέτετε ότι ένας ορισμός μέτρησης λειτουργεί για έναν ιστότοπο, μια υπηρεσία μεταφοράς και μια διεργασία υποβάθρου.
Διαχωρίστε τη συμπεριφορά επιτυχημένων και αποτυχημένων αιτημάτων όπου έχει σημασία και εξετάστε τα αποτελέσματα της αργής ουράς αντί μόνο τους μέσους όρους. Προσθέστε πίεση μνήμης, χώρο δίσκου, βάθος ουράς ή όρια ειδικά για την εφαρμογή όταν εξηγούν την υπηρεσία. Μια υψηλή ένδειξη CPU μπορεί να είναι φυσιολογική κατά τη διάρκεια χρήσιμης εργασίας παρτίδας· το αποτέλεσμα που βλέπει ο χρήστης καθορίζει αν απαιτείται άμεση ενέργεια.
Δώστε σε κάθε ειδοποίηση μια ενέργεια και έναν υπεύθυνο
Μια ειδοποίηση θα πρέπει να αναφέρει τη λειτουργία που επηρεάζεται, την παρατηρούμενη συνθήκη και έναν χρήσιμο πρώτο έλεγχο. Αναθέστε έναν υπεύθυνο και μια διαδρομή κλιμάκωσης πριν την αναπτύξετε. Διακρίνετε τις συνθήκες που απαιτούν άμεση διακοπή από τα στοιχεία που είναι κατάλληλα για προγραμματισμένη εξέταση. Οι επαναλαμβανόμενες ειδοποιήσεις χαμηλής αξίας εκπαιδεύουν τους χειριστές να αγνοούν το σύστημα και κάνουν τα σημαντικά σήματα πιο δύσκολο να αναγνωριστούν.
Χρησιμοποιήστε μια σύντομη εξέταση ειδοποιήσεων για να αφαιρέσετε την ασάφεια. Αυτός ο ενδεικτικός πίνακας περιγράφει πιθανές αποφάσεις παρακολούθησης, όχι την κάλυψη υποστήριξης του SwissOctet ή δέσμευση διαθεσιμότητας. Τα κατώφλια πρέπει να δοκιμάζονται σε σχέση με τη βάση της πραγματικής εφαρμογής. Συμπεριλάβετε μια συνθήκη ανάκτησης, ώστε ο χειριστής να γνωρίζει πότε έχει εκκαθαριστεί η ειδοποίηση και τι χρειάζεται ακόμη επικύρωση.
| Παρατηρούμενη συνθήκη | Χρήσιμη απόκριση | Πλαίσιο που πρέπει να περιλαμβάνεται |
|---|---|---|
| Αποτυγχάνει αντιπροσωπευτική διαδρομή χρήστη | Αξιολογήστε τον αντίκτυπο και μετριάστε | Επηρεαζόμενο τελικό σημείο, διάρκεια και πρόσφατη αλλαγή |
| Ο δίσκος πλησιάζει προγραμματισμένο όριο | Εξετάστε την αύξηση και τη διατήρηση | Όγκος, ρυθμός αύξησης και ασφαλές περιθώριο |
| Αποτυγχάνει η επαλήθευση αντιγράφου ασφαλείας | Προστατέψτε τη διαδρομή ανάκτησης | Εργασία, τελευταίο χρησιμοποιήσιμο σημείο και σφάλμα |
| Η καθυστέρηση αυξάνεται κατά τη διάρκεια μιας έκδοσης | Επιθεωρήστε ή επαναφέρετε την αλλαγή | Βάση, χρόνος έκδοσης και επηρεαζόμενα αιτήματα |
Προετοιμάστε μια μικρή δομή περιστατικού
Μια διαδικασία απόκρισης θα πρέπει να είναι κατανοητή υπό πίεση. Ορίστε έναν συντονιστή, κάποιον που χειρίζεται την τεχνική εργασία και κάποιον υπεύθυνο για τις ενημερώσεις όταν το περιστατικό είναι αρκετά μεγάλο ώστε να χρειάζεται διακριτούς ρόλους. Ένα μικρό έργο μπορεί να συνδυάζει ρόλους, αλλά εξακολουθεί να ωφελείται από ένα σαφές σημείο απόφασης. Συμφωνήστε ένα κανάλι επικοινωνίας πριν αποτύχει η υπηρεσία.
Το υλικό της Google για την αντιμετώπιση περιστατικών τονίζει τον συντονισμό και μια προσέγγιση που δίνει προτεραιότητα στον μετριασμό. Εφαρμόστε το σε κλίμακα που ταιριάζει στο έργο: προσδιορίστε τον αντίκτυπο, επιλέξτε ασφαλείς ενέργειες και αποφύγετε πολλούς χειριστές που κάνουν αντικρουόμενες αλλαγές. Καταγράψτε ένα χρονοδιάγραμμα και τις αποφάσεις. Η αναζήτηση μιας τέλειας εξήγησης δεν θα πρέπει να καθυστερεί ένα ασφαλές μέτρο που αποκαθιστά τη λειτουργία που επηρεάζεται.
Περιηγηθείτε σε μια συγκεκριμένη υποβάθμιση
Φανταστείτε έναν ιστότοπο να γίνεται αργός μετά από μια έκδοση. Ένας εξωτερικός έλεγχος δείχνει αυξημένο χρόνο ολοκλήρωσης, ενώ οι εσωτερικές μετρήσεις δείχνουν σφάλματα εφαρμογής και αυξανόμενη εργασία βάσης δεδομένων. Ο συντονιστής κηρύσσει ένα οριοθετημένο περιστατικό, προστατεύει τα στοιχεία και αναθέτει σε ένα άτομο να συγκρίνει την έκδοση με τη βάση. Ένα άλλο άτομο προετοιμάζει τη δοκιμασμένη διαδρομή επαναφοράς αντί να κάνει άσχετες αλλαγές υποδομής.
Εάν η επαναφορά είναι ασφαλής για την κατάσταση δεδομένων της εφαρμογής, χρησιμοποιήστε την και παρατηρήστε το αποτέλεσμα. Εάν δεν είναι ασφαλής, επιλέξτε έναν στενότερο μετριασμό που υποστηρίζεται από το επιχειρησιακό σχέδιο. Τεκμηριώστε τι άλλαξε και πότε. Ένα μεγαλύτερο VPS ή θύρα μπορεί να αξίζει αξιολόγηση αργότερα, αλλά η άμεση απόφαση θα πρέπει να αντιμετωπίζει τα στοιχεία αντί να υποθέτει ότι το μέγεθος της υποδομής είναι η αιτία.
Προστατέψτε τα στοιχεία και επαληθεύστε την ανάκτηση
Τα επιχειρησιακά αρχεία καταγραφής και οι σημειώσεις περιστατικών μπορεί να περιέχουν διευθύνσεις, αναγνωριστικά και πληροφορίες πελατών. Συλλέξτε ό,τι χρειάζεται η έρευνα, περιορίστε την πρόσβαση και κρατήστε τα διαπιστευτήρια ή τα ιδιωτικά διακριτικά παραγγελίας έξω από κοινόχρηστες αναφορές. Για ένα ύποπτο περιστατικό ασφαλείας, διατηρήστε τα κατάλληλα στοιχεία και ακολουθήστε την πολιτική απόκρισης του έργου αντί να καταστρέψετε πληροφορίες με βιαστικό καθαρισμό.
Η καθοδήγηση του NIST για την αντιμετώπιση περιστατικών τοποθετεί την απόκριση στο ευρύτερο πλαίσιο της διαχείρισης κινδύνου κυβερνοασφάλειας. Η ανάκτηση περιλαμβάνει τον έλεγχο της προβλεπόμενης λειτουργίας και την επίλυση της συνθήκης που κατέστησε δυνατό το περιστατικό. Δοκιμάστε τη διαδρομή του χρήστη, εξετάστε τη συμπεριφορά των πόρων και ελέγξτε την εργασία υποβάθρου πριν κλείσετε την απόκριση. Μια εκκαθαρισμένη ειδοποίηση ή μια επανεκκινημένη διεργασία από μόνη της μπορεί να μην αποδεικνύει πλήρη επιστροφή σε χρήσιμη υπηρεσία.
Μετατρέψτε το περιστατικό σε μετρήσιμη βελτίωση
Γράψτε μια σύντομη ανασκόπηση του αντίκτυπου, του χρονοδιαγράμματος, των συνθηκών που συνέβαλαν και των ενεργειών που έγιναν. Εστιάστε σε αλλαγές που μπορούν να επαληθευτούν: βελτιώστε έναν έλεγχο, διορθώστε ένα δικαίωμα, εξασκηθείτε στην επαναφορά ή προσθέστε μια εξάρτηση ανάκτησης που λείπει. Αναθέστε υπεύθυνους και κριτήρια ολοκλήρωσης. Αποφύγετε έναν μακρύ κατάλογο αόριστων προθέσεων που κανείς δεν μπορεί αργότερα να επιβεβαιώσει ότι υλοποιήθηκαν.
Όταν αναπτύσσετε στο SwissOctet, σχεδιάστε την παρακολούθηση και την απόκριση ως μέρος της λειτουργίας της εφαρμογής, ξεχωριστά από το επιλεγμένο υλικό και οποιαδήποτε επιβεβαιωμένη ρύθμιση διαχείρισης. Ο κατάλογος δεν τεκμηριώνει στελεχωμένη ομάδα περιστατικών ή συνεχείς ώρες υποστήριξης. Αποφασίστε ποιος λαμβάνει τις ειδοποιήσεις, ποιος μπορεί να ενεργήσει και τι καλύπτουν οι πραγματικοί όροι της υπηρεσίας πριν βασιστείτε σε περιβάλλον παραγωγής.
Η πρακτική λίστα ελέγχου σας.
- Παρακολουθήστε μια ακίνδυνη αντιπροσωπευτική διαδρομή χρήστη.
- Επιλέξτε σήματα που εξηγούν τη συμπεριφορά της εφαρμογής.
- Δώστε στις ειδοποιήσεις μια ενέργεια, έναν υπεύθυνο και μια συνθήκη ανάκτησης.
- Συμφωνήστε τον συντονισμό και την κλιμάκωση πριν από ένα περιστατικό.
- Προστατέψτε τα στοιχεία και επαληθεύστε την πλήρη ανάκτηση.
- Αναθέστε δοκιμάσιμες βελτιώσεις μετά την ανασκόπηση.
Οι λεπτομέρειες που έχουν σημασία.
Αρκεί η παρακολούθηση του χρόνου λειτουργίας του διακομιστή;+
Όχι. Ένα μηχάνημα που είναι προσβάσιμο μπορεί να φιλοξενεί μια χαλασμένη εφαρμογή. Παρακολουθήστε τη λειτουργία από την οποία εξαρτώνται οι χρήστες και προσθέστε στοιχεία πόρων για να διαγνώσετε αστοχίες.
Πρέπει κάθε κατώφλι μέτρησης να ειδοποιεί αμέσως κάποιον;+
Όχι. Κρατήστε τις επείγουσες διακοπές για συνθήκες που απαιτούν ενέργεια και έγκαιρη προσοχή. Δρομολογήστε την εργασία χαμηλότερης προτεραιότητας σε μια διαδικασία εξέτασης με σαφή υπεύθυνο.
Πότε τελειώνει ένα περιστατικό;+
Αφού επαληθευτούν η λειτουργία που επηρεάζεται και η σχετική εργασία υποβάθρου, αντιμετωπιστούν οι άμεσοι κίνδυνοι και καταγραφούν οι επακόλουθες ενέργειες. Μια επανεκκίνηση διεργασίας από μόνη της δεν αρκεί.
Πηγαίνετε στην πηγή.
Αυτές οι αναφορές υποστηρίζουν τις τεχνικές έννοιες σε αυτόν τον οδηγό. Ακολουθήστε την τρέχουσα τεκμηρίωση πριν αλλάξετε ένα σύστημα παραγωγής.
- Google SRE: Παρακολούθηση κατανεμημένων συστημάτων sre.google
- Google SRE Workbook: Αντιμετώπιση περιστατικών sre.google
- NIST SP 800-61 Rev. 3: Αντιμετώπιση περιστατικών csrc.nist.gov
Συντακτική καθοδήγηση από SwissOctet. Τα παραδείγματα είναι ενδεικτικά. Οι προδιαγραφές υπηρεσιών, οι διαθέσιμες επιλογές και οι συμβατικοί όροι πρέπει να επαληθεύονται ξεχωριστά.