Jump to content

Disaster recovery vs Disaster avoidance!!


ThanosZ
 Share

Recommended Posts

Ουπς! δεν ξέρω τι ειναι αυτά τα formatting messages πάνω από το ποστ! Εγώ μονο copy paste απο το word τα εκανα , γιατι δεν ηθελα να εχω την πολυτέλεια να το σώνω όποτε θέλω..... Συγγνώμη για τα παραπάνω "σκουπίδια". Αν το κανα paste από notepad θα βγαινε οικτρό. Ας ξεκινήσω λοιπόν την "ιστορία μου"



Έχοντας λίγο διαθέσιμο χρόνο στη διάθεση μου και για να βάλω κι εγώ ένα παράδειγμα προς μίμηση / αποφυγή , θέλω να σας εξιστορήσω ένα disaster scenario με το οποίο ήρθα αντιμέτωπος και  , πιστεύω, το «έσωσα» στον μικρότερο δυνατό downtime χρόνο . To  έβαλα στο "καφέ" γιατί είναι αρκετά "διηγηματικό" σαν περστατικό κι όχι  ένα ξερό Disaster recovery περιστατικό. Αυτό εδώ έχει και "υπόθεση". Ξεκινώ λοιπόν:

<?xml:namespace prefix = o />

 

To domain parent.gr είχε φτιαχτεί αρχικά σαν production.parent.gr development.parent.gr.

Εκεί πάνω τους είχαν χτιστεί 2 AD controllers και 2 sites , με ένα απλό trust από ότι μπορώ να μαντέψω . Δεν μπορώ να δώσω άλλες πληροφορίες  γιατί δεν ήταν, τότε, πελάτης μου.

Κάποια στιγμή στον χρόνο , άγνωστο σε μένα , το development.parent.gr καταργείται , αλλά μένει ως έχει το production.parent.gr. Ο πελάτης συνεχίζει να δουλεύει ως έχει , μην «καθαρίζοντας» κανένα κατάλοιπο αυτής της δομής. Με το AD γεμάτο από objects που δεν είχαν καμιά θέση εκεί συνέχισε τις εργασίες του. Ο πελάτης κοιτούσε συνεχώς την «τσέπη του» με το αγαπημένο τoυ excuse : μικρό downtime  - full production.

Έτσι, συνέχισε αυτή η φαύλη κατάσταση για κανένα χρόνο , με έμενα το μόνο που μπορούσα να κάνω  , να παίρνω τακτά backups σε οτιδήποτε εξωτερικό μέσο μπορούσα . Ναι, το DAT ήταν κι αυτό χαλασμένο…

Και τότε , πάνω που «όλα πήγαιναν μια χαρά» disaster :

Σκάει το RAID5 σε ΡΑΤΑ controller που είχε ο πελάτης  στο ΗΥ / Σέρβερ ο οποίος  κρόταγε όλο το  ERP του και τη βάση δεδομένων του για τιμολόγια και CRM ! Απ τη ζέστη μιας «κατασκευής» που κρατούσε 3 δίσκους μέσα της με 2 χιλ διάκενο στον καθένα και μόνο 2 ανεμιστήρες στο πλάι να φύσουν , δεν ξέρω γω που….

Το raid 5 που είχε γίνει μέσω IDE δίσκων ανελήφθη εις ουρανούς , με  μόνο τα «μικρά» αρχεία να έχουν κάποια ελπίδα να διασωθούν αφού μαζί με το διαλυμένο raid έχασα κι έναν δίσκο.

Η διαδικασία αντιμετώπισης του προβλήματος ήταν πρώτα συμπτωματολογική:

1.       1.Create mirrors of lost raid5 disks and try to rebuild - failed

22   2.Rebuild physical raid itself.  – Failed

<!   3. Recover all raid files through scavenger programs – partial success. SQL lost

Κατάφερα να διασώσω μόνο αρχεία μικρά σε μέγεθος μα όχι τις βάσεις που ήταν από 60 70 mb και πάνω. Για λόγους που δεν μπορώ να κατανοήσω δεν ήταν δυνατή  η διάσωσή τους . Το μόνο που φαντάζομαι είναι το μεγάλο «άπλωμα» των αρχείων πάνω στο volume (fragmented). Ξεκίνησα λοιπόν να φτιάχνω εκ νέου τον «σέρβερ» , βάζοντας  αυτή τη φορά μόνο 2 δίσκους SATA μέσα , μόνο και μόνο να σηκώσω το domain.

Σήκωσα λοιπόν 2003std με τον στόχο , πια, να  τους βάλω όλους σε ένα domain , μιας και δεν υπήρχε πλέον η πρόβλεψη για 2. Έκανα ένα νέο forest parent.gr” όμως για να έχω expandability χωρίς πολλές αλλαγές από τις επιθυμίες του πελάτη. Η απόφασή μου να κρατήσω το ίδιο domain name με την κατάληξη .gr  ακόμα και μέσα στο .local περιβάλλον είχε ως στόχο την μετέπειτα προώθηση του domain στο internet , χρησιμοποιώντας stub ή secondary  zones σε ένα DNS στην DMZ καθώς επίσης με την απόπειρα τοποθέτησης του exchange 2003 στην DMZ . Αργότερα, μετά από 2η σκέψη απλά άνοιξα τις ανάλογες πόρτες στο firewall . Better safe than sorry.

Ήρθε λοιπόν η ώρα του AD & Objects. Έχοντας έναν 2οAD controller contrlrb.production.parent.gr ακόμα ζωντανό στο παλιό domain είπα να  πάρω κάποια στοιχεία από το directory. Ξεκίνησα λοιπόν , νέα χειροκίνητη είσοδο στον νέο DNS του  contrlrb.production.parent.gr, αμφίδρομο  trust μεταξύ  parent.gr & production.parent.gr  και ξεκίνησα directory replication . Έγινε με επιτυχία , δεν είχα , ούτε και έχω προβλήματα ή rogue objects μέσα στο AD νέου domain parent.gr. Γινόταν όμως πανζουρλισμός στον event viewer του παλιού σέρβερ. Αποφάσισα λοιπόν αν τον κάνω demote. Λόγω όμως των πολλών αλλαγών οι οποίες δεν έγιναν με σεβασμό προς το AD δεν κατάφερα να τον υποβιβάσω πριν ανατρέξω στο τεκνετ :

Έπρεπε , με κάθε τρόπο, να σβήσω έναν 3ο σέρβερ ο οποίος υπήρχε στο παλιό σχήμα του production.parent.gr  κι έτσι ο παλιός σέρβερ δεν υποβιβάζονταν .  Μια μια γρήγορη αναζήτηση είδα λοιπόν πως μόνο με το ntdsutil  έβγαινε αποτέλεσμα. Με «την ταυτότητα στο στόμα» λοιπόν ξεκίνησα την περιήγηση μου στα βάθη του AD με πλοηγό το τεκνετ, το οποίο , όπως πάντα, με  έβγαλε από μία ακόμη δύσκολη περίσταση. Διέγραψα χειροκίνητα και το site και τον ανύπαρκτο controller (i.e. unknownserver.production.parent.gr).έτσι ήρθε ομαλά και ο υποβιβασμός του παλιού σέρβερ από το παλιό σχήμα και ο προβιβασμός του στο καινούργιο με ομαλό τρόπο και χωρίς κανένα πρόβλημα. Οπότε είχα και AD & 2 domain controllers ξανά. Φορτώθηκε ο SQL και αναμένονταν το τελευταίο backup της βάσης. Βρέθηκε, δυστυχώς, χαλασμένη η κασέτα, και έτσι ο πελάτης αναγκάστηκε να χρησιμοποιήσει backup 6 μηνών πίσω, αφού ήταν το μόνο διαθέσιμο και , υπήρχε στο φορητό μου εξ αιτίας μιας άλλης εργασίας που  έγινε τότε. Επίσης , όπως υποθέσατε, ποτέ δεν αγοράστηκε μια νέα κασέτα backup, ποτέ δεν έγινε πιστοποίηση των ληφθέντων αρχείων. Η μισή ντροπή δική μου και η μισή δική τους. Στο βωμό του κόστους θυσιάστηκαν πολλές εργατοώρες και επιπλέον προσπάθεια να επανέλθει στη  «ζωή» μια επιχείρηση που ενώ βασίζονταν πάνω στην τεχνολογία, δεν έκανε τίποτα να την στηρίξει.

Σαν «υπεύθυνους» του σεναρίου αυτού δείχνω τον πελάτη κι εμένα , φυσικά, αφού και εκείνος δεν έδειχνε διατεθειμένος να  «επενδύσει» πάνω σε μία κασέτα (Και αργότερα ένα DAT drive) αλλά ούτε κι εγώ να κάνω κάποια «έξτρα» προσπάθεια να του ασφαλίσω τα δεδομένα για μία τέτοια περίπτωση , τουλάχιστον. Στο κάτω -  κάτω  αυτός στον οποίο θα έκανα τη χάρη , δεν θα ήταν ο πελάτης , μα ο εαυτός μου , μιας κι εγώ θα  καλούμουν να αντιμετωπίσω μόνος την κατάσταση. Το μόνο που κατάφερα να επιτύχω τον πελάτη μου να δεχτεί σαν φτηνή λύση ήταν η χρησιμοποίηση ενός άλλου ΗΥ σαν storage  χρησιμοποιώντας το FreeNAS. Θα βάζαμε εκεί ένα νέο raid5 από τον ίδιο controller  και καινούργιους δίσκους. Γέμισα και το σκελετό του ΗΥ με ανεμιστηράκια. Όπου είχε το case πρόβλεψη για έναν , τώρα υπήρχε.

Με έμαθε πολλά εκείνο το απόγευμα , μα το σημαντικότερο όλων μου αποδείχθηκε στην πράξη :

It’s best to walk the extra mile, than to run it!

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

Το συγκεκριμένο «πάθημα» μου έγινε μάθημα , και πλέον ασφαλίζω τα δεδομένα των πελατών μου ακόμη κι αν εκείνοι δεν το επιθυμούν. Το κρατάω «κρυφό» και απλά το συντηρώ ούτως ώστε να μην χρειαστεί να  κάτσω κι άλλες Παρασκευές μέχρι αργά.

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

Κρίνετε / επικρίνετε ελεύθερα , παρακαλώ.

 

Link to comment
Share on other sites

θανάση πολύ ωραία η ιστορία σου.

Θέτεις 2 θέματα στο λογoτεχνικό σου κείμενο, που βασανίζουν πελάτες και....διασώστες.

1. Η αγνοια του τρόπου λειτουργίας του AD (απο αυτούς που έστειναν και ξήλωναν dc και domains αδιακρίτως)

2. Κακό recovery plan. Τι να το κανω το raid-...69 αν κρέμομαι 100% απο αυτό. Ειδικά εκεί που λες την μαγική φράση...χαλασμένη κασέτα μου πατάς τον κάλοοοοοοο.

Για το 1ο θέμα η λύση είναι η μελέτη, η εκπαίδευση και δυστυχώς οτι και να πω, πολλοί θα αφήνουν την μοίρα του domain τους στο Σάκη τον Σουγιά τον εμπειροτέχνη.

για το 2ο η λύση είναι : Πάρτε backup με όλους τους δυνατούς τρόπους και καλύψτε...εστω και νοερά όλα τα σενάρια καταστροφών.Μετά αναλογιστήτε, τα backup που έχετε στα χέρια σας, καλύπτουν όλα τα σενάρια?

Και τέλος, κάντε τα όλα virtual για να γλιτώσετε απο restore επιμέρους εφαρμογών απο αμφίβολα ...tapes κλπ. Κάνεις restore το τελευταίο vhd και πας σπίτι σου σε μισή ώρα.

Virtualize EVERYTHING !!!!!!!!!!

 

Link to comment
Share on other sites

Αν και το παραπανω ηταν ενα καλο boost  για την τσεπη μου , δεν πιστευω σε πρακτικες το τυπου "αστον να την παθει και μετα...". Ομολογω όμως πως πριν το συμβαν αυτο αμφιταλαντευόμουν μεταξύ του pre-emptive και του post-apocalyptic. Εστω και σε αυτό το σενάριο που γνώριζα πληρως την κατάσταση των δεδομένων, μου ήταν πολύ δύσκολο να μην σκεφτώ που θα μπορούσα να βρίσκομαι εκείνο το απόγευμα.

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

Τώρα πάντως ο συγκεκριμένος δεν φέρνει αντιρρήσεις οσον αφορά τα συστήματά του. Και κασετες καινουργιες, και νεο dat και εξωτερικο δισκο γιασ το ιδιο backup.

 

 

Link to comment
Share on other sites

 Share

×
×
  • Create New...