Το πρώτο θέμα στη σειρά 'What' s new in Windows Server 2012 R2' αφορά τη διαχείριση και τον αυτοματισμό. Διάλεξα το συγκεκριμένο θέμα ως πρώτο γιατί σαν IT Pro’s θέλουμε ο Server μας να είναι εύκολος στη διαχείριση και να μας παρέχει όλα τα εργαλεία αυτοματισμού. Το γιατί νομίζω είναι λίγο πολύ γνωστό σε όλους και συνοψίζεται σε μια λέξη, virtualization. Με την διάδοση του virtualization αυξήθηκαν οι απαιτήσεις διαχείρισης. Σε μια τυπική εγκατάσταση πλέον ένας διαχειριστής καλείται να εγκαθιστά,  να παρακολουθεί και να συντηρεί αρκετούς εξυπηρετητές. Η ανάγκη για εύκολη και αποτελεσματική εγκατάσταση και παρακολούθηση απαιτεί ένα λειτουργικό που έχει σχεδιαστεί για να συνεργάζεται με τα πάντα και παρέχει κάποιες λειτουργίες αυτοματισμού. Παραθέτω μια εικόνα για να δούμε τους τομείς της βελτίωσης

  

Ας ξεκινήσουμε από αυτά που είναι ήδη γνωστά, την επιλογή του Interface. Με την έλευση του Windows Server 2012 αποκτήσαμε τρεις επιλογές για το Interface. Η πρώτη είναι η γνωστή εγκατάσταση με GUI , η δεύτερη είναι η εγκατάσταση μόνο με γραμμή εντολών και η Τρίτη είναι το minimal shell, μια λειτουργία γραμμής εντολών με περιορισμένες δυνατότητες γραφικής απεικόνισης συγκεκριμένων εργαλείων.
Φυσικά μαζί με τις επιλογές προστέθηκε η δυνατότητα να αλλάζουμε λειτουργία κατά βούληση, επιτρέποντας τους διαχειριστές να ξεκινήσουν στο σημείο που επιθυμούν. Για παράδειγμα θα μπορούσε να ξεκινήσει κανείς με το Full GUI και να αφαιρέσει το ρόλο για να επιστρέψει στην εγκατάσταση Core μόλις τελείωνε την εργασία του.
 
Μαζί με τις αλλαγές στο Interface ήρθε και ο νέος Server Manager , ο οποίος μας δίνει τη δυνατότητα να συνδεθούμε σε κάποιον εξυπηρετητή και να προσθέσουμε ή να αφαιρέσουμε ρόλους και να δούμε την κατάστασή του κάτω από μία και μοναδική κονσόλα. Ακριβώς ότι χρειάζεται για να μπορούμε να ανταπεξέλθουμε στη νέα πραγματικότητα.
Οι σημαντικές αυτές προσθήκες είναι δυνατές χάρη στην βελτίωση του υποσυστήματος διαχείρισης.

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

Ας περάσουμε στα …. ενδιαφέροντα. Αυτοματισμός, το επόμενο βήμα στην εξέλιξη. Ο ένας και μοναδικός τρόπος για να γλιτώσετε κόπο , χρόνο και χρήμα. Και η απάντηση σε αυτό:

Desired State Configuration. Ενσωματωμένα στον Windows Server 2012 R2 θα βρείτε το εργαλείο που θα σας βοηθήσει να εγκαταστήσετε τους εξυπηρετητές σας και να τους αλλάξετε τη διαμόρφωση σε δευτερόλεπτα. Σίγουρα κάποιοι έχουν εφαρμόσει παρόμοιες πρακτικές ή και Scripts τα οποία αναλαμβάνουν να κάνουν αυτή τη δουλειά. Τέλεια , μα το Desired State Configuration αναλαμβάνει εκτός της αρχικής διαμόρφωσης , να ελέγχει την κατάσταση. Εάν υπάρχει αλλαγή στην επιθυμητή αυτή κατάσταση το Desired State Configuration θα φροντίσει να επαναφέρει την αρχική, την επιθυμητή. Απάντηση λοιπόν στο Configuration Drift που μας βασανίζει.

Το Desired State Configuration είναι βασισμένο στο PowerShell 4 και βρίσκεται ήδη εγκατεστημένο στον Windows Server 2012 R2 του Datacenter σας και μπορείτε να το εγκατασήσετε σε Windows Server 2012 ή και 2008 R2.

Η δουλειά του είναι να μετατρέπει τη λογική που θέλετε να ακολουθήσετε στη γλώσσα που καταλαβαίνει ο Server σας.

Όλα ξεκινάνε με τη λέξη Configuration… στο συγκεκριμένο παράδειγμα θέλω να φροντίσω πως ο Server μου , MyServer, θα διαβάσει ένα Configuration ,το DeployIIS, το οποίο θα φροντίσει ένα WindowsFeature ,ένα ρόλο δηλαδή να εγκατασταθεί εαν δε βρίσκεται εγκατεστημένος,

 
Configuration DeployIIS{
       Node
MyServer
       {
           WindowsFeature
IIS
           {
                  Ensure   
= “Present”
                  Name     
= “Web-Server”
           }

    }
 
Το πρώτο κομμάτι κώδικα "Configuration DeployIIS" είναι απλά το λεκτικό , το Configuration που θα κάνουμε θα έχει την περιγραφή DeployIIS.
 
 
Το επόμενο Block κώδικα αναφέρετε στoυς Servers για τους οποίους θέλουμε να περάσουμε το Configuration "Node MyServer" , σε αυτό θα μπορούσαμε να βάλουμε για παράδειγμα Localhost ,να προσθέσουμε περισσότερους όπως Server1,Server2 χωρισμένους με κόμμα ή να το αφήσουμε κενό και να το συμπληρώσουμε στην γραμμή εντολών όταν θα τρέχαμε το Script.
Tο αμέσως επόμενο είναι το Block των Resources "WindowsFeature IIS . Resources ορίζονται οι ιδιότητες για τις οποίες θέλουμε να φτιάξουμε ένα Configuration, το μωβ κομμάτι είναι απλά ένα λεκτικό, μια περιγραφή του τι κάνουμε. Στο κομμάτι του κώδικα που βλέπετε ασχολούμαστε με κάποιο ρόλο του Server. Θα μπορούσαμε να φτιάξουμε ένα Configuration για μια πληθώρα Resources , όπως αρχεία ,scripts, registry ακόμη και δικά μας Resource. Για παράδειγμα θα μπορούσαμε συμπεριλάβουμε το
"File ToArcheiomoy" και να ασχοληθούμε με κάποιο Resource που αφορά αρχείο.
Το επόμενο Block είναι το Configuration που θέλουμε να κάνουμε, " Ensure=“Present” " και Name=“Web-Server” , το Ensure Present θα φροντίσει να ελέγξει τη ρύθμιση για το αν υπάρχει. Ομοίως εαν γράφαμε τη λέξη Absent τότε το DSC θα φρόντιζε να αφαιρέσει το αμέσως επόμενο, Name="Web-Server".

Αυτή η φάση ονομάζεται Authoring Phase, το σημείο στο οποίο απλά περιγράψαμε το Configuration. Ώρα να προχωρήσουμε στη φάση Staging.
 
Στη φάση Staging λοιπόν θα εκτελέσουμε τον κώδικα στο Powershell. Το όνομα της εντολής είναι το όνομα του λεκτικού DeployIIS. Όταν τελειώσει η εντολή δε θα δούμε κάτι στην οθόνη μας ούτε και θα αλλάξει κάποια ρύθμιση , απλά θα παραχθεί ένα αρχείο MOF (Management Object Format)  το οποίο θα περιέχει τη μετάφραση αυτής της λογικής στη γλώσσα που καταλαβαίνει το DSC.
 
Το τελευταίο βήμα είναι η φάση της πραγματοποίησης την οποία ενεργοποιούμε με την εντολή Start-DscConfiguration –Path .\DeployIIS
 
Αυτή η εντολή θα διάβαζε τον κώδικα του MOF αρχείο και θα φρόντιζε στο παράδειγμά μας να εγκαταστήσει το ρόλο του Web Server στο server με το όνομα MyServer.
 
 
Το Desired State Configuration δουλεύει είτε σε Push mode είτε σε Pull Μode. Το Push Mode φροντίζει να στείλει το Configuration σε κάποιο Server και το Pull Mode βάζει το DSC στη διαδικασία αναζήτησης του σωστού Configuration από κάποιο Server. Η λογική του Pull Mode έρχεται με ένα νέο Feature στον Windows Server που παρέχει μια υπηρεσία Web για να συνδέονται οι Servers και να κατεβάζουν το Configuration που τους αντιστοιχεί.
 
 

Συνοψίζοντας το Part 1 το Cloud OS πέρασε την πρώτη δοκιμασία, της διαχείρισης και του αυτοματισμού έτσι ώστε να ταιριάζει σε οποιοδήποτε Datacenter , με οποιοδήποτε Configuration!
Περισσότερες πληροφορίες :

Μην ξεχάσετε να κατεβάσετε τη δοκιμαστική έκδοση του Windows Server 2012 R2 για να δοκιμάσετε μόνοι σας τις δυνατότητές του!