Αναζητώντας τρόπους οι οποίοι θα μας έδιναν ένα περιβάλλον, άκρος λειτουργικό αλλά ταυτόχρονα redundant, το μυαλό μου έψαχνε να βρει μεθοδολογίες και δωρεάν εργαλεία, τα οποία θα μας δώσουν την δυνατότητα, να κοιμόμαστε ήσυχοι τα βράδια….
Πως όμως είναι δυνατόν να έχουμε ένα Semi High available περιβάλλον, for free! Πρέπει πρώτα απ όλα να κατανοήσουμε την τοπολογία του Physical / Virtual Infrastructure που θα κατασκευάσουμε και στην συνέχεια το πώς θα δέσουμε όλα τα εργαλεία που υπάρχουν έτσι ώστε να έχουμε ΔΩΡΕΑΝ μια Super Available υποδομή..
Ας ξεκινήσουμε πρώτα με τα εργαλεία που θα χρησιμοποιήσουμε για να δημιουργήσουμε για το περιβάλλον μας.
Τα εργαλεία είναι 2.
B) Disk2VHD
Ήρθε η ώρα να πιάσουμε δουλεία και πρώτα απ όλα να σχεδιάσουμε την λύση έτσι ώστε να κατανοήσουμε πως θα χρησιμοποιήσουμε και θα αξιοποιήσουμε αυτά τα Δωρεάν εργαλεία
Ας ξεκινήσουμε το παράδειγμα μας ...
Είμαστε Administrator στην εταιρία Autoexec SA, η οποία έχει εγκατεστημένο ένα Mixed Mode περιβάλλον με ένα Physical File Server 2003 SP2, και έναv Windows 2008 Server ο οποίος έχει εγκαταστημένο τον ρόλο του Hyper V και φιλοξενεί έναν Web Application Server, και ένα terminal server. Πάμε λοιπόν στον CEO Κο Ανδρέα….. και του λέμε ότι θα χρειαστούμε μια λύση Backup UP γιατί οι Server αυτοί είναι critical για την εταιρία.
O Κος Ανδρέας λοιπόν, μας ενημερώνει πως οι καιροί είναι ΠΟΛΥ ΔΥΣΚΟΛΟΙ, και φωνάζει τον οικονομικό διευθυντή Κο Θανάση… … και μας λέει … τα εξής…
(Κος Θανάσης)
-ΔΕΝ έχουμε λεφτά… αλλά πρέπει ο File Server και ο Web Server να είναι 100% available γιατί αλλιώς δεν θα πληρωθούμε τον επόμενο μήνα… τα μόνα EURO που έχουμε να διαθέσουμε είναι 1000€ για φέτος…. ΑΑΑ.. και πολλά σου είναι… αν θές παραπάνω, μπορώ ευχαρίστως να τα κρατήσω από τον μισθό σου…. !!!!
(Κος Ανδρέας)
-Εύγε Κε Θανάση, έχουμε ακριβώς την ίδια σκέψη… κατάλαβες τώρα Βαγγέλη, ΔΕΝ έχουμε λεφτά … Φρόντισε σε παρακαλώ να φτιάξεις σωστά την υποδομή μας με 1000€ και μην ξαναέρθεις για λεφτά, μέχρι να σταματήσει η οικονομική κρίση!
(Βαγγέλης ΙΤ)
-Μα κύριε Διευθυντά, κύριε Οικονομικέ, με P0ρd3$ δεν βάφονται αυγά, 1000 Euro …δεν παίρνουμε τίποτα, ούτε ένα Tape Backup…. L!!! Αλλά…. μμμμμμμμ ……. Κάτι έχω στο μυαλό μου … 1000 € πιστεύω να μου φτάσουν ….
Μετά την εποικοδομητική συζήτηση με τους διευθυντές πήραμε 1000 ολόκληρα € και πάμε να σχεδιάσουμε την λύση…
Εικόνα 1
Στην εικόνα 1 βλέπουμε ένα Mixed Mode περιβάλλον το οποίο υπάρχει στις περισσότερες επιχειρήσεις, και το οποίο συνήθως μας δημιουργεί περισσότερο φόβο για το πώς θα το επαναφέρουμε εάν κάποια στιγμή γίνει το κακό…
Τα 1000 € θα τα αξιοποιήσουμε ώστε να πάρουμε ένα Server , Low Level ο οποίος το κύριο χαρακτηριστικό που θα έχει είναι ένα CPU που να υποστηρίζει VT, μνήμη και SATA δίσκους … όσους πιο πολλούς μπορούμε. Βέβαια μπορούμε να πάρουμε και μόνο 2 δίσκους έναν για το OS και έναν για τα VHD που θα αποθηκεύσουμε… Από μνήμη, όση περισσότερη τόσο το καλύτερο για όλους μας!
Το λειτουργικό σύστημα που θα χρησιμοποιήσουμε φροντίζουμε να είναι ΔΩΡΕΑΝ και τι καλύτερο από τον HYPER V Server 2008 R2 ο οποίος είναι αυτό ακριβώς που χρειάζεται!
Κάνουμε λοιπόν την εγκατάσταση όπως βλέπουμε στον Step By Step οδηγό εγκατάστασης του Autoexec.gr (Forum Πληροφορικής με ίδιο όνομα, Απλή συνωνυμία J)
Πρέπει όμως να κάνουμε και κάτι ακόμη. Να τον βάλουμε στο Domain του Autoexec.gr, και στην συνέχεια να δημιουργήσουμε ένα Virtual Network. Και αυτά μπορούμε να τα δούμε από το forum Autoexec.gr
Στην συνέχεια εφ όσων έχουμε τον server μας έτοιμο, αυτό που έχουμε να κάνουμε είναι shared ένα Directory από τον 2ο δίσκο ή όπως βλέπετε στην εικόνα από την συστοιχία Raid5.
Πώς κάνουμε όμως Shared ένα directory από CMD… δεν είναι δύσκολο …
"net share VHDs=d:\vhds /grant:user,Full"
Με αυτή την εντολή κάνουμε share ένα Directory από CMD. Αυτό το κάνουμε από τον Hyper V Server μας.
Στην συνέχεια πάμε πρώτα στους Server μας όπου εκεί έχουμε να κάνουμε την εξής διαδικασία.
Από τον Server που θέλουμε να κάνουμε το P2V κάνουμε "mount network drive" το share directory που μόλις δημιουργήσαμε και του δίνουμε όποιο Drive Letter θέλουμε, στο παράδειγμα που ακολουθεί χρησιμοποιούμε το Default και τιμημένο "z:"
Πρέπει πρώτα να φτιάξουμε 2 scripts της μορφής VHDFromPhysical.bat και VHDFromVirtual.bat, τα οποία θα μπουν παρέα με το εργαλείο Disk2VHD σε ένα directory.
Πάμε να δούμε πως…
Εάν ανοίξουμε το Disk2VHD Help file, θα δούμε και τα CMD τα οποία μπορεί να δεχτεί, αυτά είναι που θα χρειαστούμε για να μετατρέψουμε τους physical server μας σε Virtual αλλά και τους ίδιους τους Virtual σε Consistent Backup VMs.
Πριν προχωρήσουμε στις τελευταίες διαδικασίες των Scripts και των tasks που θα φτιάξουμε, ας μιλήσουμε λίγο για κάποιους άλλους ρόλους από servers στους οποίους θα θέλετε να ρωτήσετε αν μπορεί να γίνει αυτή η διαδικασία. Άλλους ρόλους καταλαβαίνουμε όλοι πως εννοούμε Active Directory DS, Exchange Servers, Database Servers.
Αν κατανοήσουμε πως το disk 2vhd λειτουργεί με το Windows Volume Snapshot, το οποίο παίρνει consistent point-in-time snapshots στα volumes τα οποία θέλουμε να κάνουμε P2V, τότε μπορούμε να αναρωτηθούμε, μπορούμε άραγε να το κάνουμε online σε Servers όπου υπάρχουν βάσεις δεδομένων, που τυγχάνει να εργάζονται εκείνη την στιγμή? Θα είναι όλα μια χαρά όταν θα ανοίξουμε το Backup VM ή θα γίνει πατάταγος?
Η απάντηση είναι πως ναι θα ανοίξουν τα VMs αλλά θα κάνει repair η βάση του Active Directory, οπότε ένα system state είναι αρκετό μαζί με το Virtual Backup DC. Όσο αφορά τον Exchange η απάντηση είναι η ίδια,"Backup Exchange" και όσο αφορά τον SQL είναι επίσης η ίδια "SQL Backup". Αλλά υπάρχει και ένα ΜΕΓΑΛΟ αλλά σε αυτή την περίπτωση…
Εάν πριν από την διαδικασία του VHD γίνουν stop τα κατάλληλα services, να σας δώσω ένα παράδειγμα. Εάν πριν το Disk2VHD έχουμε εκτελέσει ένα batch file που κάνει Stop ta Services του Εxchange, και μετά αφού ολοκληρωθεί το VHD, πάλι start τα Services τότε η βάση του Exchange και τα mailboxes θα είναι απείραχτα, το ίδιο ισχύει και για τον SQL Server. Πάντα προσέχουμε τι κάνουμε σε περιβάλλοντα παραγωγής. Πρέπει να είμαστε σίγουροι για το τι πρέπει να προσέχουμε. Πάντα δοκιμάζουμε, ελέγχουμε και μετά το τοποθετούμε στην παραγωγή μας.
Προσωπικά δοκίμασα αρκετά Virtual Machines, τα οποία ΟΛΑ σηκώθηκαν κανονικά ακόμη και από Live περιβάλλοντα, αλλά πρέπει να έχουμε στο μυαλό μας πως το Backup, είναι το πιο σωστό, γιατί χρησιμοποιεί ειδικούς VSS Writers οι οποίοι έχουν σχεδιαστεί έτσι για τις κατάλληλες εφαρμογές που υποστηρίζουν. Σας προτρέπω να το δοκιμάσετε, και αφού σιγουρευτείτε ότι όλα είναι ΣΩΣΤΑ, τότε να το λάβετε υπ όψιν σας για το Disaster Recovery Scenario που καλούμαστε να υλοποιήσουμε.
Ας δούμε όμως το batch file του Disk2VHD.
Σε ένα ήδη υπάρχων VM για την μεταφορά του VHD σε ένα άλλο μέρος έχουμε ήδη σαν λύσεις το Windows Backup του HOST Server μας και διάφορα άλλα scripts τα οποία έχουμε ανακοινώσει εδώ και καιρό στο Autoexec. Ας δούμε όμως και κάτι καινούργιο.
Κατεβάζουμε το Disk2VHD από το παραπάνω link και αφού το αποσυμπιέσουμε το βάζουμε σε ένα Directory στο C:\. Παραδείγματος χάρη C:\Disk2VHD. Ανοίγουμε λοιπόν ένα καινούργιο notepad μέσα στο Directory αυτό και βάζουμε το παρακάτω,
Disk2vhd * (με το αστεράκι παίρνουμε όλους τους δίσκους P2V, αλλιώς βάζουμε μόνο το drive letter του δίσκου που θέλουμε δηλαδή c:\)
Ολόκληρη η εντολή τώρα.
Usage disk2vhd <[drive: [drive:]...]|> <vhdfile>
Παράδειγμα
Disk2vhd * z:\vhds\VHDName.vhd
To "Z" είναι το Map Drive το οποίο έχουμε από πριν κάνει mount στο παραγωγικό server μας και ανήκει στο Shared Drive το οποίο κάναμε Share στον Hyper V Server μας.
Αυτό το notepad εφ όσων το κάνουμε rename αντί για .txt σε bat τότε είναι ένα 100% εκτελέσιμο αρχείο. Αυτό είναι το εύκολο κομμάτι γιατί ο server μας είναι Virtual…. Σε physical όμως που είναι 2003….τι κάνουμε?
Κάνουμε ακριβώς το ίδιο πράγμα μόνο που στο τέλος προσθέτουμε το switch –h το οποίο τροποποιεί κατάλληλα το HAL (Hardware Abstract Layer) για την λειτουργία του VHD σε Virtual PC / Hyper V. ΠΡΟΣΟΧΗ το Virtual PC υποστηρίζει ΜΟΝΟ vhd των οποίων το μέγεθος ΔΕΝ ξεπερνά τα 127GB. Πάμε όμως να δούμε και το cmd το οποίο θα χρησιμοποιήσουμε, για το Physical 2003 Srv.
Usage disk2vhd [-h] <[drive: [drive:]...]|> <vhdfile>
Παράδειγμα
Disk2vhd –h * z:\vhds\VHDName.vhd
Αυτά τα 2 cmd είναι και ο κορμός όλης της διαδικασίας, αποθηκεύουμε λοιπόν τα notepad ως VHDFromVirtual.bat και VHDFromPhysical.bat αντίστοιχα.
Τώρα, δεν μένει παρά να τα βάλουμε σε ένα scheduler έτσι ώστε να εκτελούνται κάθε βράδυ. Το βράδυ είναι μια καλή περίπτωση και για τους «μη» server μας, μιας και οι παραγωγικοί server μας δεν θα δέχονται εγγραφές εκείνη την ώρα στις βάσεις τους.
Πάμε λοιπόν να δημιουργήσουμε ένα schedule task στον Server μας που είναι 2003 σε παραγωγή. Στην παρακάτω εικόνα βλέπουμε ακριβώς την διαδικασία.
|
Με αυτόν τον τρόπο και εφόσον μετά στον οδηγό επιλέξουμε το daily schedule και δώσουμε το Account το οποίο θα εκτελεί την διαδικασία είμαστε έτοιμοι!
"TIP No1"
Πριν τρέξετε το schedule 1η φορά, κάντε ένα διπλό κλικ πάνω στο disk2vhd.exe ώστε να πατήσετε το Agree στο License Agreement το οποίο ζητείτε την πρώτη φορά που τρέχετε την εφαρμογή.
Και ορίστε το αποτέλεσμα!!!
Έχουμε τον φυσικό παραγωγικό μας server Virtual ανά πάσα στιγμή. Φαντάζεστε στην περίπτωση που κάποιο Hardware Failure από ένα φυσικό μηχάνημα ρίξει την παραγωγή μας. ΚΑΝΕΝΑ ΠΡΟΒΛΗΜΑ… Έχουμε όλη την υποδομή μας δίπλα σε ένα Hyper V Server R2 ανά πάσα στιγμή διαθέσιμη και το καλό όλων … ΧΩΡΙΣ ΚΟΣΤΟΣ!!!
|
"TIP No2"
Σε 2008, 2008 R2 όταν δημιουργούμε το task, σε δοκιμές που έκανα, μόνο όταν ο user ήταν logon έτρεχε κανονικά, όταν επέλεγα να τρέξει το task και εφ όσων ο user δεν ήταν logon το task αποτύγχανε να τρέξει, οπότε καλό είναι να κάνουμε disconnect από το session ή αλλιώς απλά να κλειδώνουμε το session. Όποιος ανακαλύψει γιατί γίνετε στον scheduler του 2008 και 2008 R2 να μας το πει
H ίδια διαδικασία, γίνετε αυτούσια και σε Virtual Machine.
Είδαμε λοιπόν πως από κάποια δωρεάν προγράμματα, μπορούμε να εξασφαλίσουμε σε μεγάλο βαθμό την υποδομή μας. Το μοναδικό που έχουμε να κάνουμε έπειτα από όλα αυτά είναι απλά να ξεκινήσουμε τα Backup Virtual Machines, που θα έχουμε δημιουργήσει στον HyperV Server μας, και προσέχουμε ΠΑΝΤΑ να μην έχουμε Online και τα 2 συστήματα. Προτείνω για λόγους δοκιμών, να δημιουργήσετε τα Virtual Machines και να τα έχετε Disconnect από τα εικονικά δίκτυα ή αλλιώς σε κάποιο Private Network με σκοπό να κάνετε τις δοκιμές σας.
Όπως είπαμε πρώτα δοκιμάζουμε και μετά, βασιζόμαστε στο Disaster Recovery Περιβάλλον!
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου