Επαληθεύστε τη δυνατότητα αποχώρησης πριν εξαρτηθείτε από μια υπηρεσία
ΟλοκληρώθηκεΔιαχωρίστε την κυριότητα πηγαίου κώδικα από τη φορητότητα λειτουργίας. Δοκιμάστε εξαγωγές, ανεξάρτητα builds, πρόσβαση υποδομής και τα στοιχεία που απαιτούνται για μετάβαση.
Εκδότης TaigaΠώς γράφουμε
Ελέγξτε τι κατανοήσατεΟ οργανισμός σας έχει την κυριότητα του πηγαίου κώδικα. Ποια πρόσθετα στοιχεία υποστηρίζουν τη φορητότητα λειτουργίας;Κάντε την άσκηση
Τι θα μάθετε
- Προσδιορίστε τα στοιχεία και τα δικαιώματα που απαιτούνται για λειτουργία χωρίς έναν προμηθευτή.
- Σχεδιάστε μια μικρή άσκηση αποχώρησης πριν δημιουργηθεί κρίσιμη εξάρτηση.
- Διαχωρίστε τις αποφάσεις εξαγωγής, μετάβασης και διαγραφής.
Ορίστε τι πρέπει να παραμείνει χρησιμοποιήσιμο
Η κυριότητα του πηγαίου κώδικα έχει αξία. Είναι μόνο ένα μέρος του σχεδίου αποχώρησης από μια υπηρεσία.
Εξετάστε μια υποθετική εφαρμογή της οποίας ο πηγαίος κώδικας βρίσκεται στο αποθετήριο της εταιρείας. Το build κατεβάζει ένα ιδιωτικό πακέτο από τον προμηθευτή. Το production χρησιμοποιεί λογαριασμό cloud του προμηθευτή. Κανείς δεν έχει καταγράψει τη διαδικασία επαναφοράς της βάσης δεδομένων.
Η εταιρεία έχει τον κώδικα αλλά δεν μπορεί ακόμη να λειτουργήσει την υπηρεσία ανεξάρτητα. Το σχέδιο αποχώρησής της πρέπει να καλύπτει μαζί δικαιώματα, στοιχεία, πρόσβαση και γνώσεις.
Καταγράψτε τις εξαρτήσεις
| Στοιχείο ή ευθύνη | Ερώτημα αποχώρησης |
|---|---|
| Κώδικας και ιστορικό | Μπορεί η επόμενη ομάδα να έχει πρόσβαση σε ολόκληρο το αποθετήριο; |
| Πακέτα και άδειες χρήσης | Μπορεί να αποκτήσει και να χρησιμοποιήσει κάθε απαιτούμενη εξάρτηση; |
| Δεδομένα και σχήματα | Μπορεί να επαναφέρει χρήσιμες εγγραφές με άθικτες τις σχέσεις τους; |
| Υποδομή και ρυθμίσεις | Μπορεί να αναδημιουργήσει το περιβάλλον και τις απαιτούμενες ρυθμίσεις; |
| Ταυτότητες και μυστικά | Ποιος δημιουργεί διαπιστευτήρια αντικατάστασης και ελέγχει την πρόσβαση; |
| DNS και πιστοποιητικά | Ποιος μπορεί να μεταφέρει το δημόσιο endpoint; |
| Αποδεικτικά στοιχεία και λειτουργία | Ποιες αποφάσεις, runbooks, δοκιμές και καταγραφές συμβάντων παραμένουν διαθέσιμα; |
Ελέγξτε τις μορφές και το πεδίο εξαγωγής. Μια αναγνώσιμη εξαγωγή εγγράφων δεν διατηρεί απαραίτητα κάθε σχέση, συνημμένο ή καταγραφή εκτέλεσης. Ζητήστε δείγμα και εξετάστε το με τους ανθρώπους που θα το χρησιμοποιούσαν.
Εκτελέστε ανεξάρτητη αναδημιουργία
Χρησιμοποιήστε ασφαλές περιβάλλον δοκιμής και εγκεκριμένα δεδομένα παραδείγματος. Δώστε το προτεινόμενο πακέτο παράδοσης σε εξουσιοδοτημένο μηχανικό λογισμικού. Ζητήστε του να κάνει build την εφαρμογή, να εφαρμόσει ρυθμίσεις, να επαναφέρει τα δεδομένα και να επαληθεύσει μία πλήρη επιχειρησιακή λειτουργία.
Καταγράψτε κάθε στοιχείο που λείπει και πόσος χρόνος χρειάζεται για να το αποκτήσετε. Αποφύγετε να παρέχετε σιωπηρά ατεκμηρίωτες γνώσεις κατά την άσκηση. Ο σκοπός είναι να βρείτε τι θα έλειπε από την επόμενη ομάδα.
Έπειτα εξετάστε τους περιορισμούς μετάβασης: ταυτόχρονες συνδρομές, χρόνο μεταφοράς δεδομένων, πρόσβαση σε πακέτα, αλλαγές ταυτοτήτων και διαθεσιμότητα υποστήριξης. Συμπεριλάβετε αυτά τα κόστη στη σύγκριση κατασκευής και αγοράς.
Διαχωρίστε την εξαγωγή από τη διαγραφή
Η εξαγωγή παράγει ένα αντίγραφο. Η μετάβαση αλλάζει το ποιος λειτουργεί την υπηρεσία. Η διαγραφή αφαιρεί συγκεκριμένες εγγραφές σύμφωνα με τη συμφωνημένη διαδικασία. Αυτές είναι χωριστές αποφάσεις με διαφορετικά αποδεικτικά στοιχεία.
Ορίστε τις απαιτήσεις διατήρησης και το πεδίο διαγραφής μαζί με τους αρμοδίους. Επιβεβαιώστε τους τρέχοντες όρους και τις διαδικασίες του προμηθευτή. Μη διαγράψετε το μοναδικό χρήσιμο αντίγραφο ανάκτησης πριν επαληθευτεί το σύστημα που παραλαμβάνει τα δεδομένα.
Η τεκμηρίωση του Taiga περιγράφει μια διαδικασία εξαγωγής από διαχειριστή και μια χωριστή διαδικασία διαγραφής. Οι τιμές μυστικών εξαιρούνται από την εξαγωγή. Συνεπώς, η παράδοση χρειάζεται εξουσιοδοτημένο τρόπο αναδημιουργίας των απαιτούμενων μυστικών. Επαληθεύστε τα τρέχοντα περιεχόμενα της εξαγωγής σε σχέση με τις ανάγκες μετάβασής σας· μην υποθέτετε ότι αποτελεί πλήρες αντίγραφο ασφαλείας της εφαρμογής.
Αποφασίστε ποιες εξαρτήσεις είναι αποδεκτές
Η φορητότητα δεν απαιτεί την αφαίρεση κάθε διαχειριζόμενης υπηρεσίας. Μια εξάρτηση μπορεί να είναι λογική επιλογή όταν είναι κατανοητά η αξία, οι περιορισμοί και η διαδρομή μετάβασής της.
Καταγράψτε τις αποδεκτές εξαρτήσεις, έναν υπεύθυνο και μια συνθήκη ανασκόπησης. Επαναλάβετε την άσκηση αποχώρησης μετά από ουσιώδη αλλαγή αρχιτεκτονικής ή σύμβασης. Συνεχίστε με ένα σχέδιο υιοθέτησης που περιλαμβάνει αυτές τις ευθύνες από την αρχή.
Κάντε την άσκηση
Ένας υποθετικός προμηθευτής σας δίνει ένα αποθετήριο Git και μια εξαγωγή βάσης δεδομένων. Καταγράψτε πέντε άλλα στοιχεία που χρειάζεστε για να λειτουργήσετε την εφαρμογή ανεξάρτητα. Επιλέξτε ένα στοιχείο και περιγράψτε δοκιμή που θα αποκάλυπτε μια εξάρτηση που λείπει.
Λήψη φύλλου εργασίας (Markdown)Η κατάργηση αυτής της επιλογής διαγράφει όλη την πρόοδο που έχει αποθηκευτεί σε αυτόν τον browser.
Η πρόοδος παραμένει σε αυτό το πρόγραμμα περιήγησης. Χωρίς λογαριασμό ή παρακολούθηση.
Πηγές και πρόσθετη μελέτη
- NIST: Secure Software Development Framework ↗
- Taiga docs: Data and privacy ↗
- Taiga docs: Integrations and environments ↗