Jump to content

kavag

Administrators
  • Posts

    222
  • Joined

  • Last visited

  • Days Won

    49

Blog Entries posted by kavag

  1. kavag
    2. Έλεγχος αντοχής Three-Way Mirroring
    Στο δεύτερο μέρος αυτού του blogpost θα ασχοληθούμε με τον έλεγχο της αντοχής ενός Storage Space με επίπεδο προστασίας Three-Way Mirroring.
    Για την υλοποίηση αυτού του Storage Space, o ελάχιστος αριθμός σκληρών δίσκων που θα χρειαστούν είναι πέντε (5), ενώ η ακεραιότητα των δεδομένων εξασφαλίζεται ακόμη και στην περίπτωση βλάβης δύο (2) δίσκων.
    2.1 Δημιουργία δίσκων
    Όπως αναλύσαμε στο προηγούμενο άρθρο, το κάθε Storage Space δημιουργείται επί ενός Storage Pool το οποίο με την σειρά του περιλαμβάνει τους σκληρούς δίσκους του συστήματος.
    Το πρώτο βήμα λοιπόν, είναι η δημιουργία αυτών των σκληρών δίσκων και η προσθήκη τους στο σύστημα των δοκιμών με λειτουργικό σύστημα Windows Server 2012R2.
    Τους δίσκους τους δημιουργούμε και τους συνδέουμε με το VM των δοκιμών μας, εύκολα και απλά μέσω του PowerShell και των παρακάτω εντολών στον Hyper-V host.
    # Create five VHDX1..5| %{New-VHD -Path "C:Hyper-VW2012R2Virtual Hard DisksDisk-$_.vhdx" -SizeBytes 20GB -Dynamic}# Attach VHDX disks to a VM1..5|%{Add-VMHardDiskDrive -VMName W2012R2 -Path "C:Hyper-VW2012R2Virtual Hard DisksDisk-$_.vhdx" -ControllerType SCSI}
    Διαπιστώνουμε τόσο την δημιουργία των δίσκων όσο και την σύνδεση τους στο VM, με την Get-PhysicalDisk στο VM
    PS C:> Get-PhysicalDisk | ft -AutoSize
    FriendlyName CanPool OperationalStatus HealthStatus Usage Size
    ———— ——- —————– ———— —– —-
    PhysicalDisk2 True OK Healthy Auto-Select 20 GB
    PhysicalDisk3 True OK Healthy Auto-Select 20 GB
    PhysicalDisk0 False OK Healthy Auto-Select 127 GB
    PhysicalDisk5 True OK Healthy Auto-Select 20 GB
    PhysicalDisk1 True OK Healthy Auto-Select 20 GB
    PhysicalDisk4 True OK Healthy Auto-Select 20 GB2.2 Δημιουργία Storage Pool
    Αφού δημιουργήσαμε τους σκληρούς δίσκους και τους συνδέσαμε στο VM, φτιάχνουμε το Storage Pool με τις παρακάτω εντολές στο VM
    # Create Storage Pool$disks=Get-PhysicalDisk -CanPool $true$StorSubSys=Get-StorageSubSystem -FriendlyName *Spaces*New-StoragePool -FriendlyName StorPool01 -PhysicalDisks $disks -StorageSubSystemFriendlyName $StorSubSys.FriendlyName
    Πιστοποιούμε την ολοκλήρωση του Storage Pool, με την παρακάτω εντολή στο VM
    PS C:> Get-StoragePool | ft -AutoSize
    FriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly
    ———— —————– ———— ———— ———-
    StorPool01 OK Healthy False False
    Primordial OK Healthy True False2.3 Υλοποίηση Storage Space
    Αφού ολοκληρώθηκε η δημιουργία του Storage Pool, μπορούμε να φτιάξουμε το Storage Space με το επίπεδο ασφάλειας που επιθυμούμε. Στην συγκεκριμένη περίπτωση θα δημιουργήσουμε ένα Three-Way Mirror, με τις εξής εντολές στο VM
    # Create Storage Space$StorPool=Get-StoragePool -FriendlyName StorPool01Set-ResiliencySetting -StoragePool $StorPool -Name Mirror -NumberOfColumnsDefault 1 -NumberOfDataCopiesDefault 3$StorPool | New-VirtualDisk -FriendlyName StorSpace01 -ResiliencySettingName Mirror -UseMaximumSize
    To Storage Space που δημιουργήθηκε είναι ένας νέος δίσκος για το σύστημα μας, ο οποίος χρειάζεται αρχικοποίηση (initialization), δημιουργία partition και format, κατά τα γνωστά.
    # Assign Drive Letter and format new drive$DiskNo = (Get-VirtualDisk -FriendlyName StorSpace01 | Get-Disk).NumberSet-Disk -Number $DiskNo -IsReadOnly 0Set-Disk -Number $DiskNo -IsOffline 0Initialize-Disk -Number $DiskNo -PartitionStyle MBRNew-Partition -DiskNumber $DiskNo -DriveLetter S -UseMaximumSizeInitialize-Volume -DriveLetter S -FileSystem NTFS -Confirm:$false
    Εάν θέλουμε να δούμε την κατάσταση του StorageSpace, του partition και των φυσικών δίσκων πάνω στους οποίους έχουν δημιουργηθεί, τότε χρησιμοποιούμε την παρακάτω εντολή
    # Display Physical Disks that construct a volumeGet-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | Get-PhysicalDisk | ft –AutoSize
    PS C:> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | Get-PhysicalDisk | ft -AutoSize
    FriendlyName CanPool OperationalStatus HealthStatus Usage Size
    ———— ——- —————– ———— —– —-
    PhysicalDisk2 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk3 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk5 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk1 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk4 False OK Healthy Auto-Select 19.25 GB2.4 Συμπεριφορά σε βλάβη
    Όπως είπαμε και στην αρχή, τα δεδομένα που είναι αποθηκευμένα στο Storage Space με προστασία Three-Way Mirror, είναι εξασφαλισμένα ακόμη και στην περίπτωση βλάβης δύο δίσκων.
    Θα προσομοιώσουμε λοιπόν την βλάβη δύο δίσκων της συστοιχίας Three-Way Mirror και θα παρατηρήσουμε την συμπεριφορά του Storage Pool και του Storage Space.
    Οι ενέργειες που θα γίνουν θα είναι οι εξής
    Αφαίρεση δίσκων
    Επαναφορά δίσκων
    Αφαίρεση και αντικατάσταση με νέους δίσκους
    Προσθήκη του χαλασμένων δίσκων, μετά την αντικατάσταση τους
    2.4.1 Αφαίρεση
    Η αφαίρεση των δίσκων και συγκεκριμένα των δύο τελευταίων, γίνεται με την παρακάτω εντολή στον Hyper-V Host
    # Remove two disks5..6 | %{Remove-VMHardDiskDrive -VMName W2012R2 -ControllerNumber 0 -ControllerLocation $_ -ControllerType SCSI}
    Στο Guest VM, διαπιστώνουμε την βλάβη των δίσκων, ως εξής
    PS C:> Get-PhysicalDisk | ft -AutoSize
    FriendlyName CanPool OperationalStatus HealthStatus Usage Size
    ———— ——- —————– ———— —– —-
    PhysicalDisk2 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk3 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk0 False OK Healthy Auto-Select 127 GB
    PhysicalDisk-1 False Lost Communication Warning Auto-Select 19.25 GB
    PhysicalDisk1 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk-1 False Lost Communication Warning Auto-Select 19.25 GB
    Ενώ έχουμε και εγγραφές στο SystemEventLog
    PS C:> Get-EventLog -LogName System -Source Disk | fl
    Index : 649
    EntryType : Warning
    InstanceId : 2147745949
    Message : Disk 5 has been surprise removed.
    Category : (0)
    CategoryNumber : 0
    ReplacementStrings : {DeviceHarddisk5DR14, 5}
    Source : disk
    TimeGenerated : 23/6/2014 3:23:44 μμ
    TimeWritten : 23/6/2014 3:23:44 μμ
    UserName :
    Index : 648
    EntryType : Warning
    InstanceId : 2147745949
    Message : Disk 4 has been surprise removed.
    Category : (0)
    CategoryNumber : 0
    ReplacementStrings : {…DR13, 4}
    Source : disk
    TimeGenerated : 23/6/2014 3:23:43 μμ
    TimeWritten : 23/6/2014 3:23:43 μμ
    UserName :
    Η κατάσταση του Storage Pool είναι η εξής
    PS C:> Get-StoragePool | ft -AutoSize
    FriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly
    ———— —————– ———— ———— ———-
    StorPool01 Degraded Warning False False
    Primordial OK Healthy True False
    Η κατάσταση του Storage Space είναι η εξής
    PS C:> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSize
    FriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size
    ———— ——————— —————– ———— ————– —-
    StorSpace01 Mirror Incomplete Warning False 30 GB
    Μετά την αφαίρεση του δίσκου λοιπόν, το Storage Pool είναι Degraded (υποβαθμισμένο) και το Storage Space είναι σε κατάσταση προειδοποίησης (Warning).
    Η λειτουργική κατάσταση όμως του Storage Space με βαθμό προστασίας Three-Way Mirroring μετά την αφαίρεση δύο δίσκων, είναι καλή και τα δεδομένα που είναι αποθηκευμένα εκεί είναι διαθέσιμα.2.4.2 Επαναφορά
    Τους δίσκους που αφαιρέσαμε στην προηγούμενη δοκιμή τους επαναφέρουμε με την παρακάτω εντολή στον Hyper-Vhost
    # Reconnect the disk drives5..6 | %{Add-VMHardDiskDrive -VMName W2012R2 -Path "C:Hyper-VW2012R2Virtual Hard DisksDisk-$_.vhdx" -ControllerType SCSI -ControllerNumber 0 -ControllerLocation $_}
    Στο Guest VM παρατηρούμε την κατάσταση των φυσικών δίσκων
    PS C:> Get-PhysicalDisk | ft -AutoSize
    FriendlyName CanPool OperationalStatus HealthStatus Usage Size
    ———— ——- —————– ———— —– —-
    PhysicalDisk2 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk3 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk0 False OK Healthy Auto-Select 127 GB
    PhysicalDisk4 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk1 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk5 False OK Healthy Auto-Select 19.25 GB
    Η κατάσταση του Storage Pool είναι
    PS C:> Get-StoragePool | ft -AutoSize
    FriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly
    ———— —————– ———— ———— ———-
    StorPool01 OK Healthy False False
    Primordial OK Healthy True False
    Και του Storage Space
    PS C:> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | Get-PhysicalDisk | ft -AutoSize
    FriendlyName CanPool OperationalStatus HealthStatus Usage Size
    ———— ——- —————– ———— —– —-
    PhysicalDisk2 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk3 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk4 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk1 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk5 False OK Healthy Auto-Select 19.25 GB
    Επομένως το Storage Subsystem και συγκεκριμένα τα Storage Spaces, κατάλαβαν την επανασύνδεση των δίσκων, έκαναν όλες τις απαραίτητες ενέργειες αποκατάστασης και η κατάσταση της συστοιχίας είναι και πάλι Healthy.
    Όλες αυτές οι ενέργειες έγιναν στο παρασκήνιο, ενώ τα δεδομένα μας ήταν συνεχώς διαθέσιμα.2.4.3 Αφαίρεση και αντικατάσταση με νέους δίσκους
    Στην παράγραφο αυτή θα προσομοιώσουμε την ταυτόχρονη βλάβη δύο δίσκων και την αντικατάσταση τους με νέους.
    Για την αφαίρεση των δίσκων, χρησιμοποιούμε την παρακάτω εντολή στον Hyper-VHost
    # Remove two disks5..6 | %{Remove-VMHardDiskDrive -VMName W2012R2 -ControllerNumber 0 -ControllerLocation $_ -ControllerType SCSI}
    Στο Guest VM διαπιστώνουμε την βλάβη με τους τρόπους που παρουσιάστηκαν στην προηγούμενη παράγραφο 2.4.2 Αφαίρεση.
    Η κατάσταση λοιπόν της συστοιχίας είναι η εξής
    PS C:> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSize
    FriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size
    ———— ——————— —————– ———— ————– —-
    StorSpace01 Mirror Incomplete Warning False 30 GB
    Για να αντικαταστήσουμε τους προηγούμενους δίσκους με νέους, πρέπει πρώτα να τους δημιουργήσουμε. Αυτό γίνεται με την εξής εντολή στον Hyper-VHost
    1..2| %{New-VHD -Path "C:Hyper-VW2012R2Virtual Hard DisksDisk-New-$_.vhdx" -SizeBytes 20GB -Dynamic}
    Ενώ η προσθήκη στο guest VM γίνεται με την παρακάτω εντολή
    1..2|%{Add-VMHardDiskDrive -VMName W2012R2 -Path "C:Hyper-VW2012R2Virtual Hard DisksDisk-New-$_.vhdx" -ControllerType SCSI}
    Οι δύο νέοι δίσκοι εμφανίζονται στο Guest VM, όπως φαίνεται παρακάτω
    PS C:> Get-PhysicalDisk | ft -AutoSize
    FriendlyName CanPool OperationalStatus HealthStatus Usage Size
    ———— ——- —————– ———— —– —-
    PhysicalDisk5 True OK Healthy Auto-Select 20 GB
    PhysicalDisk2 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk3 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk0 False OK Healthy Auto-Select 127 GB
    PhysicalDisk-1 False Lost Communication Warning Auto-Select 19.25 GB
    PhysicalDisk4 True OK Healthy Auto-Select 20 GB
    PhysicalDisk1 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk-1 False Lost Communication Warning Auto-Select 19.25 GB
    Οι νέοι δίσκοι είναι έτοιμοι να προστεθούν στο StoragePoolκαι να ξεκινήσει η διαδικασία της αποκατάστασης της συστοιχίας.
    Πρώτα όμως θα πρέπει να τοποθετηθούν οι «χαλασμένοι» δίσκοι σε κατάσταση Retired. Αυτό γίνεται στο Guest VM ως εξής
    Get-PhysicalDisk | where OperationalStatus -like Lost* | Set-PhysicalDisk -Usage Retired
    PS C:> Get-PhysicalDisk | where OperationalStatus -like Lost* | Set-PhysicalDisk -Usage Retired
    PS C:> Get-PhysicalDisk | ft -AutoSize
    FriendlyName CanPool OperationalStatus HealthStatus Usage Size
    ———— ——- —————– ———— —– —-
    PhysicalDisk5 True OK Healthy Auto-Select 20 GB
    PhysicalDisk2 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk3 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk0 False OK Healthy Auto-Select 127 GB
    PhysicalDisk-1 False Lost Communication Warning Retired 19.25 GB
    PhysicalDisk4 True OK Healthy Auto-Select 20 GB
    PhysicalDisk1 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk-1 False Lost Communication Warning Retired 19.25 GB
    Προσθέτουμε τους νέους δίσκους στο Storage Pool με την εντολή στο Guest VM
    Add-PhysicalDisk -StoragePoolFriendlyName StorPool01 -PhysicalDisks (Get-PhysicalDisk -CanPool $true)
    Ενώ για να ξεκινήσει η διαδικασία της αποκατάστασης εκτελούμε την παρακάτω εντολή στο Guest VM
    Repair-VirtualDisk -FriendlyName StorSpace01
    Με την ολοκλήρωση της αποκατάστασης, η λειτουργική κατάσταση του Storage Space είναι και πάλι καλή (Healthy).
    PS C:>
    Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSize
    FriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size
    ———— ——————— —————– ———— ————– —-
    StorSpace01 Mirror OK Healthy False 30 GB

    Ελέγχοντας το StoragePool, παρατηρούμε ότι είναι σε κατάσταση Degraded (υποβαθμισμένο)
    PS C:> Get-StoragePool | ft -AutoSize

    FriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly
    ———— —————– ———— ———— ———-
    StorPool01 Degraded Warning False False
    Primordial OK Healthy True False

    Αυτό συμβαίνει γιατί περιλαμβάνει και τους δίσκους που έχουν χαλάσει και έχουν αντικατασταθεί
    PS C:> Get-StoragePool -FriendlyName StorPool01 | Get-PhysicalDisk| ft -AutoSize
    FriendlyName CanPool OperationalStatus HealthStatus Usage Size
    ———— ——- —————– ———— —– —-
    PhysicalDisk5 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk2 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk3 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk-1 False Lost Communication Warning Retired 19.25 GB
    PhysicalDisk4 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk1 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk-1 False Lost Communication Warning Retired 19.25 G
    Τους δίσκους αυτούς μπορούμε να τους αφαιρέσουμε από το Storage Pool ως εξής
    # Remove Failed DisksRemove-PhysicalDisk -StoragePoolFriendlyName StorPool01 -PhysicalDisks (Get-PhysicalDisk | where OperationalStatus -like Lost*)
    Μετά την αφαίρεση η κατάσταση του Storage Pool είναι και πάλι Healthy
    PS C:> Get-StoragePool | ft -AutoSize
    FriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly
    ———— —————– ———— ———— ———-
    StorPool01 OK Healthy False False
    Primordial OK Healthy True False
    Είναι βέβαια περιττό να αναφέρουμε , ότι όλες αυτές οι ενέργειες γίνονταν στο παρασκήνιο ενώ τα δεδομένα μας είναι διαρκώς διαθέσιμα.2.4.4 Προσθήκη των χαλασμένου δίσκων μετά την αντικατάσταση τους
    Στην δοκιμή αυτή θα εξετάσουμε εάν υπάρχει κάποια επίπτωση στην λειτουργική κατάσταση του Storage Space, στην περίπτωση που οι χαλασμένοι δίσκοι, αφού αφαιρέθηκαν και αντικαταστάθηκαν με νέους, επανασυνδεθούν στο Guest VM.
    Ξεκινάμε λοιπόν με την προσθήκη αυτών των δίσκων εκτελώντας στον Hyper-V host την εξής εντολή
    # Reconnect the disk drives4..5 | %{Add-VMHardDiskDrive -VMName W2012R2 -Path "C:Hyper-VW2012R2Virtual Hard DisksDisk-$_.vhdx" -ControllerType SCSI }
    Αφού προστεθούν οι δίσκοι, στο Guest VM έχουμε την εξής εικόνα
    PS C:> Get-PhysicalDisk | ft -AutoSize
    FriendlyName CanPool OperationalStatus HealthStatus Usage Size
    ———— ——- —————– ———— —– —-
    PhysicalDisk5 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk2 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk3 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk0 False OK Healthy Auto-Select 127 GB
    PhysicalDisk7 False Unrecognized Metadata Unhealthy Unknown 20 GB
    PhysicalDisk4 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk1 False OK Healthy Auto-Select 19.25 GB
    PhysicalDisk8 False Unrecognized Metadata Unhealthy Unknown 20 GB
    Παρατηρούμε λοιπόν ότι οι δίσκοι αναγνωρίζονται ως Unhealthy με Unrecognized Metadata, δεδομένα δηλαδή των οποίων την περιγραφή δεν φαίνεται να την γνωρίζει το VM.
    Η επανασύνδεση αυτών των δίσκων δεν είχε καμία απολύτως επίπτωση στην λειτουργική κατάσταση του StorageSpace, όπως φαίνεται και παρακάτω
    PS C:> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSize
    FriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size
    ———— ——————— —————– ———— ————– —-
    StorSpace01 Mirror OK Healthy False 30 GB
    Στην περίπτωση που θέλουμε να χρησιμοποιήσουμε αυτούς τους δίσκους θα πρέπει να κάνουμε επαναφορά (reset) της κατάστασης τους, ως εξής
    Get-PhysicalDisk | where OperationalStatus -like Unrecognized* | Reset-PhysicalDisk 2.5 Βλάβη τριών δίσκων (3) δίσκων
    Όπως αναφέραμε στην αρχή, το Three-Way Mirror επιτρέπει την απρόσκοπτη λειτουργία σε περίπτωση βλάβης μέχρι και δύο δίσκων. Εάν υποστούν βλάβη περισσότεροι από δύο (2) δίσκους τότε αναμένεται η συστοιχία να μην λειτουργεί και τα δεδομένα που είναι αποθηκευμένα επάνω της να μην είναι διαθέσιμα.
    Αφαιρώντας λοιπόν τρεις δίσκους, μέσω των παρακάτω εντολών στον Hyper-Vhost
    # Remove two disks2..4 | %{Remove-VMHardDiskDrive -VMName W2012R2 -ControllerNumber 0 -ControllerLocation $_ -ControllerType SCSI}
    Παρατηρούμε ότι το Storage Pool είναι σε κατάσταση εκτεταμένης βλάβης
    PS C:> Get-StoragePool | ft -AutoSize
    FriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly
    ———— —————– ———— ———— ———-
    StorPool01 Read-only Unhealthy False False
    Primordial OK Healthy True False
    Ενώ το Storage Space δεν υπάρχει
    PS C:> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | Get-PhysicalDisk | ft -AutoSize
    Get-Volume : No MSFT_Volume objects found with property ‘DriveLetter’ equal to ‘S’. Verify the value of the property and r
    At line:1 char:1
    + Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | Get-PhysicalDisk | f …
    + ~~~~~~~~~~~~
    + CategoryInfo : ObjectNotFound: (S:Char) [Get-Volume], CimJobException
    + FullyQualifiedErrorId : CmdletizationQuery_NotFound_DriveLetter,Get-Volume
    Εάν επανασυνδέσουμε τους δίσκους στο VM τότε το Storage Pool και το Storage Space θα έρθουν και πάλι σε καλή λειτουργική κατάσταση.
    The post Έλεγχος αντοχής των Storage Spaces με την χρήση του PowerShell (Three-Way Mirror) appeared first on Vaggelis Kappas.
     
    Source
  2. kavag
    3. Έλεγχος αντοχής προστασίας τύπου Parity
    Στο τρίτο και τελευταίο μέρος αυτού του blogpost θα ασχοληθούμε με τον έλεγχο της αντοχής ενός Storage Space με επίπεδο προστασίας Parity, που είναι κάτι αντίστοιχο με το γνωστό μας RAID 5.
    Στην περίπτωση αυτού του επιπέδου ασφαλείας, του Parity, o ελάχιστος αριθμός σκληρών δίσκων για την υλοποίηση είναι τρεις (3), ενώ προσφέρεται προστασία των δεδομένων στην περίπτωση βλάβης ενός δίσκου.3.1 Δημιουργία δίσκων
    Το πρώτο βήμα είναι η δημιουργία των σκληρών δίσκων και η προσθήκη τους στο σύστημα των δοκιμών που είναι ένα Virtual Machine με λειτουργικό σύστημα Windows Server 2012R2.
     
    Για να γίνει αυτό θα χρησιμοποιήσουμε το PowerShell και τις παρακάτω εντολές στον Hyper-V host.
    # Create three VHDXs1..3| %{New-VHD -Path "C:Hyper-VW2012R2Virtual Hard DisksDisk-$_.vhdx" -SizeBytes 20GB -Dynamic}# Attach VHDX disks to a VM1..3|%{Add-VMHardDiskDrive -VMName W2012R2 -Path "C:Hyper-VW2012R2Virtual Hard DisksDisk-$_.vhdx" -ControllerType SCSI}
    Διαπιστώνουμε τόσο την δημιουργία των δίσκων όσο και την σύνδεση τους στο VM, με την Get-PhysicalDisk στο VM
    PS C:Windowssystem32> Get-PhysicalDisk | ft -AutoSizeFriendlyName CanPool OperationalStatus HealthStatus Usage Size------------ ------- ----------------- ------------ ----- ----PhysicalDisk3 True OK Healthy Auto-Select 20 GBPhysicalDisk0 False OK Healthy Auto-Select 127 GBPhysicalDisk2 True OK Healthy Auto-Select 20 GBPhysicalDisk1 True OK Healthy Auto-Select 20 GB 3.2 Δημιουργία Storage Pool
    Αφού δημιουργήσαμε τους σκληρούς δίσκους και τους συνδέσαμε στο VM, φτιάχνουμε το Storage Pool με τις παρακάτω εντολές στο VM
    # Create Storage Pool$disks=Get-PhysicalDisk -CanPool $true$StorSubSys=Get-StorageSubSystem -FriendlyName *Spaces*New-StoragePool -FriendlyName StorPool01 -PhysicalDisks $disks -StorageSubSystemFriendlyName $StorSubSys.FriendlyName
    Πιστοποιούμε την ολοκλήρωση του Storage Pool, με την παρακάτω εντολή στο VM
    PS C:> Get-StoragePool | ft -AutoSizeFriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly------------ ----------------- ------------ ------------ ----------StorPool01 OK Healthy False FalsePrimordial OK Healthy True False 3.3 Υλοποίηση Storage Space
    Αφού ολοκληρώθηκε η δημιουργία του Storage Pool, μπορούμε να φτιάξουμε το Storage Space με το επίπεδο ασφάλειας που επιθυμούμε. Στην συγκεκριμένη περίπτωση θα δημιουργήσουμε ένα Parity Storage Space, με τις εξής εντολές στο VM
    # Create Storage Space (Parity)$StorPool=Get-StoragePool -FriendlyName StorPool01Set-ResiliencySetting -StoragePool $StorPool -Name Parity -AutoNumberOfColumns$StorPool | New-VirtualDisk -FriendlyName StorSpace01 -ResiliencySettingName Parity -UseMaximumSize
    To Storage Space που δημιουργήθηκε είναι ένας νέος δίσκος για το σύστημα μας, ο οποίος χρειάζεται αρχικοποίηση (initialization), δημιουργία partition και format, κατά τα γνωστά.
    # Assign Drive Letter and format new drive$DiskNo = (Get-VirtualDisk -FriendlyName StorSpace01 | Get-Disk).NumberSet-Disk -Number $DiskNo -IsReadOnly 0Set-Disk -Number $DiskNo -IsOffline 0Initialize-Disk -Number $DiskNo -PartitionStyle MBRNew-Partition -DiskNumber $DiskNo -DriveLetter S -UseMaximumSizeInitialize-Volume -DriveLetter S -FileSystem NTFS -Confirm:$false
    Εάν θέλουμε να δούμε την κατάσταση του Storage Space, του partition και των φυσικών δίσκων πάνω στους οποίους έχουν δημιουργηθεί, τότε χρησιμοποιούμε την παρακάτω εντολή
    # Display Physical Disks that construct a volumeGet-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | Get-PhysicalDisk | ft –AutoSize
    PS C:Windowssystem32> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | Get-PhysicalDisk | ft -AutoSizeFriendlyName CanPool OperationalStatus HealthStatus Usage Size------------ ------- ----------------- ------------ ----- ----PhysicalDisk3 False OK Healthy Auto-Select 19.25 GBPhysicalDisk2 False OK Healthy Auto-Select 19.25 GBPhysicalDisk1 False OK Healthy Auto-Select 19.25 GBPS C:Windowssystem32> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSizeFriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size------------ --------------------- ----------------- ------------ -------------- ----StorSpace01 Parity OK Healthy False 36 GB 3.4 Προσομοίωση βλάβης δίσκου
    Θα προσομοιώσουμε την βλάβη ενός δίσκου της συστοιχίας Parity και θα παρατηρήσουμε την συμπεριφορά του Storage Pool και του Storage Space.
    Οι ενέργειες που θα γίνουν θα είναι οι εξής
    Αφαίρεση δίσκου
    Επαναφορά δίσκου
    Αφαίρεση και αντικατάσταση με νέο
    Προσθήκη του χαλασμένου δίσκου μετά την αντικατάσταση
    3.4.1 Αφαίρεση
    Η αφαίρεση του δίσκου, γίνεται με την παρακάτω εντολή στον Hyper-V Host
    # Remove a DiskRemove-VMHardDiskDrive -VMName W2012R2 -ControllerNumber 0 -ControllerLocation 2 -ControllerType SCSI
    Στο guest VM, διαπιστώνουμε την βλάβη, ως εξής
    ]PS C:Windowssystem32> Get-PhysicalDisk | ft -AutoSizeFriendlyName CanPool OperationalStatus HealthStatus Usage Size------------ ------- ----------------- ------------ ----- ----PhysicalDisk3 False OK Healthy Auto-Select 19.25 GBPhysicalDisk0 False OK Healthy Auto-Select 127 GBPhysicalDisk2 False OK Healthy Auto-Select 19.25 GBPhysicalDisk-1 False Lost Communication Warning Auto-Select 19.25 GB
    Ενώ έχουμε και εγγραφές στο System Event Log
    PS C:Windowssystem32> Get-EventLog -LogName System -Source Disk | flIndex : 1065EntryType : WarningInstanceId : 2147745949Message : Disk 1 has been surprise removed.Category : (0)CategoryNumber : 0ReplacementStrings : {DeviceHarddisk1DR5, 1}Source : diskTimeGenerated : 25/6/2014 4:59:12 μμTimeWritten : 25/6/2014 4:59:12 μμUserName :
    Η κατάσταση του Storage Pool είναι η εξής
    ]PS C:> Get-StoragePool | ft -AutoSizeFriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly------------ ----------------- ------------ ------------ ----------StorPool01 Degraded Warning False FalsePrimordial OK Healthy True False
    Η κατάσταση του Storage Space είναι η εξής
    ]PS C:Windowssystem32> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSizeFriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size------------ --------------------- ----------------- ------------ -------------- ----StorSpace01 Parity Incomplete Warning False 36 GB

    Μετά την αφαίρεση του δίσκου λοιπόν, το Storage Pool είναι Degraded (υποβαθμισμένο) και το Storage Space είναι σε κατάσταση προειδοποίησης (Warning).
    Η λειτουργική κατάσταση όμως του Storage Space με βαθμό προστασίας Parityμετά την αφαίρεση του δίσκου, είναι καλή και τα δεδομένα που είναι αποθηκευμένα εκεί είναι διαθέσιμα.3.4.2 Επαναφορά
    Για την επαναφορά του δίσκου που αφαιρέθηκε παραπάνω, χρησιμοποιούμε την παρακάτω εντολή στον Hyper-V host
    # Reconnect the disk drivesAdd-VMHardDiskDrive -VMName W2012R2 -Path 'C:Hyper-VW2012R2Virtual Hard DisksDisk-1.vhdx' -ControllerType SCSI
    Στο Guest VM παρατηρούμε την κατάσταση των φυσικών δίσκων
    PS C:Windowssystem32> Get-PhysicalDisk | ft -AutoSizeFriendlyName CanPool OperationalStatus HealthStatus Usage Size------------ ------- ----------------- ------------ ----- ----PhysicalDisk2 False OK Healthy Auto-Select 19.25 GBPhysicalDisk0 False OK Healthy Auto-Select 127 GBPhysicalDisk1 False OK Healthy Auto-Select 19.25 GBPhysicalDisk4 False OK Healthy Auto-Select 19.25 GB
    Η κατάσταση του Storage Pool είναι
    PS C:> Get-StoragePool | ft -AutoSizeFriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly------------ ----------------- ------------ ------------ ----------StorPool01 OK Healthy False FalsePrimordial OK Healthy True False
    Και του Storage Space
    PS C:Windowssystem32> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSizeFriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size------------ --------------------- ----------------- ------------ -------------- ----StorSpace01 Parity OK Healthy False 36 GB
    Επομένως το Storage Subsystem και συγκεκριμένα τα Storage Spaces, κατάλαβαν την επανασύνδεση του δίσκου και έκαναν όλες τις απαραίτητες ενέργειες αποκατάστασης ώστε η κατάσταση της συστοιχίας να είναι και πάλι Healthy.
    Όλες αυτές οι ενέργειες έγιναν στο παρασκήνιο, ενώ τα δεδομένα μας ήταν συνεχώς διαθέσιμα.3.4.3 Αφαίρεση και αντικατάσταση με νέο
    Στην παράγραφο αυτή θα προσομοιώσουμε την βλάβη ενός δίσκου, τον οποίο στην συνέχεια θα αντικαταστήσουμε με έναν καινούριο.
    Για την αφαίρεση του δίσκου, χρησιμοποιούμε την παρακάτω εντολή στον Hyper-V Host
    # Remove a DiskRemove-VMHardDiskDrive -VMName W2012R2 -ControllerNumber 0 -ControllerLocation 2 -ControllerType SCSI
    Στο Guest VM διαπιστώνουμε την βλάβη με τους τρόπους που παρουσιάστηκαν στην προηγούμενη παράγραφο 3.4.1 Αφαίρεση.
    Η κατάσταση λοιπόν της συστοιχίας είναι η εξής
    PS C:Windowssystem32> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSizeFriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size------------ --------------------- ----------------- ------------ -------------- ----StorSpace01 Parity Incomplete Warning False 36 GB
    Για να αντικαταστήσουμε τον «χαλασμένο» δίσκο, θα δημιουργήσουμε έναν καινούριο, τον οποίο μετά θα τον συνδέσουμε στο Guest VM. Οι παρακάτω εντολές στον Hyper-VHost, θα κάνουν τις ενέργειες αυτές.
    # New Disk creationNew-VHD -Path 'C:Hyper-VW2012R2Virtual Hard DisksDisk-1-New.vhdx' -SizeBytes 20GB -Dynamic# Add new disk to VMAdd-VMHardDiskDrive -VMName W2012R2 -Path 'C:Hyper-VW2012R2Virtual Hard DisksDisk-1-New.vhdx' -ControllerType SCSI -ControllerNumber 0
    Ο νέος δίσκος εμφανίζεται στο Guest VM, όπως φαίνεται παρακάτω
    PS C:Windowssystem32> Get-PhysicalDisk | ft -AutoSizeFriendlyName CanPool OperationalStatus HealthStatus Usage Size------------ ------- ----------------- ------------ ----- ----PhysicalDisk2 False OK Healthy Auto-Select 19.25 GBPhysicalDisk4 True OK Healthy Auto-Select 20 GBPhysicalDisk0 False OK Healthy Auto-Select 127 GBPhysicalDisk1 False OK Healthy Auto-Select 19.25 GBPhysicalDisk-1 False Lost Communication Warning Auto-Select 19.25 GB
    Ο νέος δίσκος είναι στην διάθεση μας και μπορούμε να τον προσθέσουμε στο Storage Pool και να ξεκινήσει η διαδικασία της αποκατάστασης της συστοιχίας.
    Για να ξεκινήσει όμως η επιδιόρθωση της συστοιχίας θα πρέπει να αφαιρεθεί ο χαλασμένος δίσκος από το Storage Pool και να προστεθεί ο καινούριος. Αυτό γίνεται με τις εξής εντολές στο Guest VM
    Get-PhysicalDisk | where OperationalStatus -like Lost* | Set-PhysicalDisk -Usage RetiredPS C:Windowssystem32> Get-PhysicalDisk | where OperationalStatus -like Lost* | Set-PhysicalDisk -Usage RetiredPS C:Windowssystem32> Get-PhysicalDisk | ft -AutoSizeFriendlyName CanPool OperationalStatus HealthStatus Usage Size------------ ------- ----------------- ------------ ----- ----PhysicalDisk2 False OK Healthy Auto-Select 19.25 GBPhysicalDisk4 True OK Healthy Auto-Select 20 GBPhysicalDisk0 False OK Healthy Auto-Select 127 GBPhysicalDisk1 False OK Healthy Auto-Select 19.25 GBPhysicalDisk-1 False Lost Communication Warning Retired 19.25 GB
    Αφού θέσουμε τον «χαλασμένο» δίσκο σε κατάσταση Retired, προσθέτουμε τον νέο δίσκο στο Storage Pool με την παρακάτω εντολή στο Guest VM
    # Add New disk to Storage PoolAdd-PhysicalDisk -StoragePoolFriendlyName StorPool01 -PhysicalDisks (Get-PhysicalDisk -CanPool $true)
    Ενώ για να ξεκινήσει η διαδικασία της αποκατάστασης εκτελούμε την παρακάτω εντολή στο Guest VM
    # Repair Storage SpaceRepair-VirtualDisk -FriendlyName StorSpace01
    Με την ολοκλήρωση της αποκατάστασης, η λειτουργική κατάσταση του Storage Space είναι και πάλι καλή (Healthy).
    PS C:Windowssystem32> Repair-VirtualDisk -FriendlyName StorSpace01PS C:Windowssystem32> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSizeFriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size------------ --------------------- ----------------- ------------ -------------- ----StorSpace01 Parity OK Healthy False 36 GB
    Ελέγχοντας όμως το Storage Pool, παρατηρούμε ότι είναι σε κατάσταση Degraded (υποβαθμισμένο)
    PS C:> Get-StoragePool | ft -AutoSizeFriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly------------ ----------------- ------------ ------------ ----------StorPool01 Degraded Warning False FalsePrimordial OK Healthy True False
    Αυτό συμβαίνει γιατί περιλαμβάνει και τους δίσκους που έχουν χαλάσει και έχουν αντικατασταθεί
    PS C:Windowssystem32> Get-StoragePool -FriendlyName StorPool01 | Get-PhysicalDisk| ft -AutoSizeFriendlyName CanPool OperationalStatus HealthStatus Usage Size----------- ------- ----------------- ------------ ----- ----PhysicalDisk2 False OK Healthy Auto-Select 19.25 GBPhysicalDisk4 False OK Healthy Auto-Select 19.25 GBPhysicalDisk1 False OK Healthy Auto-Select 19.25 GBPhysicalDisk-1 False Lost Communication Warning Retired 19.25 GB
    Όμως αυτόν τον δίσκο μπορούμε να τον αφαιρέσουμε εύκολα από το Storage Pool ως εξής
    # Remove Failed DisksRemove-PhysicalDisk -StoragePoolFriendlyName StorPool01 -PhysicalDisks (Get-PhysicalDisk | where OperationalStatus -like Lost*)
    Μετά την αφαίρεση η κατάσταση του Storage Pool είναι και πάλι Healthy
    PS C:Windowssystem32> Get-StoragePool | ft -AutoSizeFriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly------------ ----------------- ------------ ------------ ----------StorPool01 OK Healthy False FalsePrimordial OK Healthy True False
    Είναι βέβαια περιττό να αναφέρουμε , ότι όλες αυτές οι ενέργειες γίνονταν στο παρασκήνιο ενώ τα δεδομένα μας είναι διαρκώς διαθέσιμα.3.4.4 Προσθήκη του χαλασμένου δίσκου μετά την αντικατάσταση του
    Στην δοκιμή αυτή θα εξετάσουμε εάν υπάρχει κάποια επίπτωση στην λειτουργική κατάσταση του storage Space, στην περίπτωση που ο χαλασμένος δίσκος αφού αφαιρέθηκε και αντικαταστάθηκε με νέο, επανασυνδεθεί στο Guest VM.
    Ξεκινάμε λοιπόν με την προσθήκη του δίσκου, εκτελώντας στον Hyper-V host την εξής εντολή
    # Reconnect the disk drivesAdd-VMHardDiskDrive -VMName W2012R2 -Path 'C:Hyper-VW2012R2Virtual Hard DisksDisk-1.vhdx' -ControllerType SCSI
    Με την προσθήκη του δίσκου, στο Guest VM έχουμε την εξής εικόνα
    PS C:Windowssystem32> Get-PhysicalDisk | ft -AutoSizeFriendlyName CanPool OperationalStatus HealthStatus Usage Size------------ ------- ----------------- ------------ ----- ----PhysicalDisk2 False OK Healthy Auto-Select 19.25 GBPhysicalDisk4 False OK Healthy Auto-Select 19.25 GBPhysicalDisk0 False OK Healthy Auto-Select 127 GBPhysicalDisk1 False OK Healthy Auto-Select 19.25 GBPhysicalDisk5 False Unrecognized Metadata Unhealthy Unknown 20 GB
    Παρατηρούμε λοιπόν ότι ο δίσκος αναγνωρίζεται ως Unhealthy με Unrecognized Metadata, δεδομένα δηλαδή των οποίων την περιγραφή δεν φαίνεται να την γνωρίζει το VM.
    Η επανασύνδεση του δίσκου δεν είχε καμία απολύτως επίπτωση στην λειτουργική κατάσταση του Storage Space, όπως φαίνεται και παρακάτω
    PS C:Windowssystem32> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | ft -AutoSizeFriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size------------ --------------------- ----------------- ------------ -------------- ----StorSpace01 Parity OK Healthy False 36 GB
    Στην περίπτωση που θέλουμε να χρησιμοποιήσουμε αυτούς τους δίσκους θα πρέπει να κάνουμε επαναφορά (reset) της κατάστασης τους, ως εξής
    Get-PhysicalDisk | where OperationalStatus -like Unrecognized* | Reset-PhysicalDisk 3.5 Βλάβη δύο (2) δίσκων δίσκων
    Όπως αναφέραμε στην αρχή, το Storage Space με προστασία τύπου Parity επιτρέπει την απρόσκοπτη λειτουργία σε περίπτωση βλάβης ενός δίσκου. Εάν υποστούν βλάβη περισσότεροι του ενός δίσκοι, τότε αναμένεται η συστοιχία να μην λειτουργεί και τα δεδομένα που είναι αποθηκευμένα επάνω της να μην είναι διαθέσιμα.
    Αφαιρώντας λοιπόν δύο δίσκους με την παρακάτω εντολή στον Hyper-V host
    # Remove two disks3..4 | %{Remove-VMHardDiskDrive -VMName W2012R2 -ControllerNumber 0 -ControllerLocation $_ -ControllerType SCSI}
    Παρατηρούμε ότι το Storage Pool είναι σε κατάσταση εκτεταμένης βλάβης
    PS C:Windowssystem32> Get-StoragePool | ft -AutoSizeFriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly------------ ----------------- ------------ ------------ ----------StorPool01 Read-only Unhealthy False FalsePrimordial OK Healthy True False
    Ενώ το Storage Space δεν υπάρχει
    PS C:Windowssystem32> Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | Get-PhysicalDisk | ft -AutoSize
    Get-Volume : No MSFT_Volume objects found with property ‘DriveLetter’ equal to ‘S’. Verify the value of the property and r
    At line:1 char:1
    + Get-Volume S | Get-Partition | Get-Disk | Get-VirtualDisk | Get-PhysicalDisk | f …
    + ~~~~~~~~~~~~
    + CategoryInfo : ObjectNotFound: (S:Char) [Get-Volume], CimJobException
    + FullyQualifiedErrorId : CmdletizationQuery_NotFound_DriveLetter,Get-Volume
    Εάν επανασυνδέσουμε τους δίσκους στο VM τότε το Storage Pool και το Storage Space θα έρθουν και πάλι σε καλή λειτουργική κατάσταση.
    The post Έλεγχος αντοχής των Storage Spaces με την χρήση του PowerShell (Parity) appeared first on Vaggelis Kappas.
     
    Source
  3. kavag
    Κατεβάστε όλη την σειρά των άρθρων σε μορφή PDF
    Storage Spaces: Έλεγχος αντοχής και επαναφοράς από βλάβη

    Γενικά
    Σε αυτήν την σειρά των άρθρων θα κάνουμε έλεγχο της ανθεκτικότητας των Storage Spaces έναντι βλάβης ενός, δύο ή και περισσοτέρων σκληρών δίσκων πάνω στους οποίους έχουν υλοποιηθεί. Θα εξετάσουμε και τα τρία επίπεδα ασφάλειας που προσφέρονται, δηλαδή :
    Two Way Mirroring
    Three Way Mirroring και
    Parity

    Υπάρχει μια αντιστοιχία των παραπάνω επιπέδων ασφαλείας με τα γνωστά μας RAID levels, αλλά όχι απόλυτη μια που, όπως θα δούμε, μπορούμε να δημιουργήσουμε ένα Two-Way Mirror με χρήση τριών (3) δίσκων.
    Ένα πλήθος με τις συνηθέστερες ερωτήσεις και τις απαντήσεις τους σχετικά με τα Storage Spaces θα βρείτε στο παρακάτω σύνδεσμο :
    Storage Spaces Frequently Asked Questions (FAQ)
    Ενώ, πολύ χρήσιμος είναι και ο παρακάτω πίνακας στον οποίο παρουσιάζεται ο συσχετισμός των επιπέδων ασφαλείας των Storage Spaces με τον ελάχιστο απαιτούμενο αριθμό δίσκων.Resiliency typeMinimum number of columnsColumn-to-disk correlationMinimum number of disksTwo-way mirror

    1



    1:2



    2

    Three-way mirror

    1



    1:3



    5

    Parity

    3



    1:1



    3


    Για την δημιουργία των Storage Spaces και τους ελέγχους της αντοχής τους, την προσομοίωση δηλαδή της βλάβης, θα χρησιμοποιήσουμε το αγαπημένο μας εργαλείο, το PowerShell, ενώ όλες οι δοκιμές θα διεξαχθούν σε εργαστηριακό περιβάλλον που περιλαμβάνει έναν Windows Server 2012R2 Hyper-V host και ένα Guest VM με Windows Server 2012R2
    Βρείτε στα άρθρα που ακολουθούν, τα αναλυτικά βήματα ανά επίπεδο ασφάλειας :
    Two Way Mirroring
    Three Way Mirroring και
    Parity

    The post Storage Spaces: Έλεγχος αντοχής και επαναφοράς από βλάβη appeared first on Vaggelis Kappas.
     
    Source
  4. kavag
    Αυτό που ήταν γνωστό μέχρι τώρα και τονιζόταν ιδιαιτέρως, ήταν να μην αποδίδεται για οποιοδήποτε λόγο Static IP address στα Virtual Machines του Microsoft Azure IaaS. Ακόμη και εάν τα VMs προορίζονταν για Domain Controllers ή για DNS Servers.
    Όσοι μάλιστα το είχαν προσπαθήσει είδαν τα VMs που είχαν δημιουργήσει να εξαφανίζονται, ξαφνικά, από την κονσόλα διαχείρισης.
    Με τις τελευταίες όμως βελτιώσεις που έγιναν στις υπηρεσίες του Azure IaaS (Μάιος 2014), στην περίπτωση που το VM συνδέεται σε κάποιο Virtual Network, έχουμε την δυνατότητα πλέον να επιλέξουμε την επιθυμητή IP διεύθυνση που θα πάρει όταν θα ξεκινήσει ή μετά την επανεκκίνηση.
     
    Εάν έχουμε λοιπόν ένα Virtual Network που περιλαμβάνει υποδίκτυα (Subnets) όπως το παρακάτω

    και δημιουργήσουμε ένα VM που θα το συνδέσουμε π.χ. στο υποδίκτυο ADDS

    αυτό θα πάρει την πρώτη διαθέσιμη διεύθυνση από το Subnet, δηλαδή την 10.10.4.4. Tο δεύτερο VM που θα συνδεθεί στο δίκτυο αυτό θα πάρει την 10.10.4.5 κ.ο.κ.
    Πρέπει να σημειώσουμε ότι οι τρείς πρώτες διευθύνσεις κάθε δικτύου και υποδικτύου, από .1 έως .3, είναι κατειλημμένες από το Azure και δεν είναι διαθέσιμες.

    Όσο τα Virtual Machines είναι εν λειτουργία θα διατηρήσουν τις IP διευθύνσεις που τους έχει δώσει το Azure, ακόμη και στην περίπτωση του reboot ή του Shutdown μέσα από το λειτουργικό.
    Εάν όμως σταματήσουν (Stop) από το Management Portal ή μέσω του PowerShell τότε γίνονται de-provisioned. Αυτό σημαίνει ότι την επόμενη φορά που θα ξεκινήσουν θα αναζητήσουν την πρώτη διαθέσιμη IP διεύθυνση.
    Έτσι εάν κάνουμε Stop τα Virtual Machines, μέσω PowerShell και ξεκινήσουμε πρώτα το DC01 και μετά το DNS01 τότε οι IP διευθύνσεις που θα έχουν θα είναι οι εξής

    Βλέπουμε λοιπόν ότι τώρα που ξεκίνησε πρώτο το DC01 πήρε την πρώτη διαθέσιμη διεύθυνση IP δηλαδή την 10.10.4.4.
    Όπως είπαμε και παραπάνω, μέχρι τις πρόσφατες αλλαγές και βελτιώσεις, για να είμαστε σίγουροι για την διεύθυνση IP που θα πάρει ένα VM θα έπρεπε να ελέγχουμε την σειρά εκκίνησης (Startup Sequence).Αλλαγές Μαΐου 2014, Static Internal IP Address (DIP)
    Για ορισμένα Virtual Machines, όπως για παράδειγμα οι DNS Servers ή οι Domain Controllers το να αλλάζουν διευθύνσεις IP είναι κάτι που δεν είναι επιθυμητό.
    Τώρα λοιπόν μπορούμε εάν θέλουμε, μέσω του PowerShell, να εξασφαλίσουμε διευθύνσεις IP από το Virtual Network που έχουμε αναπτύξει στο Azure γι’ αυτά τα VMs.
    Ας δούμε πωςΈλεγχος διαθεσιμότητας διεύθυνσης IP
    Για να δώσουμε μία διεύθυνση IP, θα πρέπει πρώτα να είμαστε σίγουροι ότι αυτή είναι διαθέσιμη. Ο έλεγχος της διαθεσιμότητας μιας διεύθυνσης IP γίνεται με την εντολή Test-AzureStaticVNetIP.
    Test-AzureStaticVNetIP -VNetName Labs-VNET -IPAddress 10.10.4.11IsAvailable : TrueAvailableAddresses : {}OperationDescription : Test-AzureStaticVNetIPOperationId : f8c1df87-56ed-0adb-8c74-24bd82eeebe6OperationStatus : Succeeded
    Απαραίτητο είναι το όνομα του Virtual Network στα Subnets του οποίου είναι η IP διεύθυνση για την οποία γίνεται ο έλεγχος.Ορισμός static internal IP (DIP) σε υπάρχον VM
    Αφού κάναμε έλεγχο για την διαθεσιμότητα της επιθυμητής διεύθυνσης IP και συγκεκριμένα της 10.10.4.11, μπορούμε να την δώσουμε σε ένα από τα Virtual Machines που έχουμε ήδη δημιουργήσει, π.χ. στο DNS01
    Get-AzureVM -ServiceName Labs-CS -Name DNS01 | Set-AzureStaticVNetIP -IPAddress 10.10.4.11 | Update-AzureVM
    Η εντολή Update-AzureVM θα κάνει την απαραίτητη επανεκκίνηση στο VM για να πάρει την επιθυμητή διεύθυνση IP
    Ορισμός static internal IP (DIP) σε νέο VM
    Εάν δημιουργούμε Virtual Machines μέσω PowerShell, έχουμε την δυνατότητα να δώσουμε την επιθυμητή διεύθυνση IP στην φάση της υλοποίησης
    $ImageName = "a699494373c04fc0bc8f2bb1389d6106__Windows-Server-2012-R2-201408.01-en.us-127GB.vhd"$admin="vkappas"$passwd="Admin@2014"New-AzureVMConfig -Name "DNS02" -InstanceSize "Small" -ImageName $ImageName | Add-AzureProvisioningConfig -Windows -AdminUsername $admin -Password $passwd | Set-AzureSubnet -SubnetNames "ADDS" | Set-AzureStaticVNetIP -IPAddress "10.10.4.12" | New-AzureVM -ServiceName "Labs-CS" -AffinityGroup "Labs-AG"
    Αφαίρεση static internal IP (DIP)
    Όπως δώσαμε την επιθυμητή διεύθυνση IP σε ένα VM, μπορούμε και να την αφαιρέσουμε ώστε αυτό να λάβει την πρώτη ελεύθερη κατά τα γνωστά.
    Η εντολή που θα χρησιμοποιήσουμε είναι η Remove-AzureStaticVNetIP ως εξής
    Get-AzureVM -ServiceName labs-CS -Name DNS01 | Remove-AzureStaticVNetIP | Update-AzureVM
    The post Configuring a Static Internal IP Address (DIP) for a VM in Azure VNET appeared first on Vaggelis Kappas.
     
    Source
  5. kavag
    Με μεγάλη χαρά την πρώτη Οκτωβρίου έλαβα ένα email που έλεγε τα παρακάτω
    Είμαι πολύ χαρούμενος και υπερήφανος για τη διάκριση αυτή, η οποία μου δίνει τη δύναμη όσο και την έμπνευση, να συνεχίσω με αμείωτο ζήλο την προσπάθεια και την συνεισφορά στην κοινότητα των IT Pros.
    Θα ήθελα να ευχαριστήσω όλα τα μέλη της κοινότητας των IT Pros, το autoexec.gr και τους φίλους, πολλοί από τους οποίους είναι ή ήταν συν-MVPs, για όλη τη βοήθεια, την υποστήριξη και την καθοδήγηση τους όλο αυτό το χρονικό διάστημα.
    Τέλος θα ήθελα, ιδιαίτερα, να ευχαριστήσω τους φίλους στη Microsoft τόσο για τη διαρκή υποστήριξή τους στην κοινότητα όσο και για την εμπιστοσύνη που μου έδειξαν.
    Σας ευχαριστώ και πάλι και υπόσχομαι να συνεχίσω με αμείωτο ενδιαφέρον και πάθος όλη την προσπάθεια και την συνεισφορά στην κοινότητα των IT Pros.
    The post Microsoft Hyper-V MVP Award 2014 appeared first on Vaggelis Kappas.
     
    Source
  6. kavag
    To Windows 8 είναι το νεότερο και πιο σύγχρονο λειτουργικό σύστημα της Microsoft, το οποίο με την μοντέρνα του αρχιτεκτονική έρχεται να καλύψει τις ολοένα και μεγαλύτερες αλλά κυρίως διαφορετικές και σύνθετες ανάγκες των χρηστών τόσο στο “σπίτι” όσο και στο εταιρικό και επιχειρηματικό περιβάλλον.
    Για να πετύχει, λοιπόν, αυτούς τους στόχους σχεδιάστηκε από την αρχή ενσωματώνοντας τις σύγχρονες αντιλήψεις για την ασφάλεια των λειτουργικών συστημάτων, την ταχύτητα, αλλά και την ευκολία και την αμεσότητα του κόσμου των σύγχρονων συσκευών που υποστηρίζουν την αφή.
     
    Σε αυτήν την σειρά των άρθρων, θα αναλύσουμε τα χαρακτηριστικά που μας εντυπωσίασαν σε αυτό το σύγχρονο λειτουργικό σύστημα, το Microsoft Windows 8.
    Τα χαρακτηριστικά που αναπτύξουμε, θα είναι τα εξής :
    O Windows Explorer έφυγε, ζήτω ο File Explorer
    File History
    Storage Pools, και Storage Spaces
    Task Manager
    Hot-Keys and gestures
    Νέα Start Screen και live tiles

    Ξεκινάμε λοιπόν αμέσως με τον File Explorer.
    The post Εξερεύνηση των Microsoft Windows 8 – Νέα χαρακτηριστικά και δυνατότητες. appeared first on Vaggelis Kappas.
     
    Source
  7. kavag
    To Windows Azure Active Directory (WAAD), είναι μία νέα και σύγχρονη υπηρεσία που παρέχει το Windows Azure.
    Η υπηρεσία αυτή βασίζεται στην αρχιτεκτονική REST, (REpresentational State Transfer), εκτελείται πάνω από το HTTP και προσφέρει υπηρεσίες ελέγχου πρόσβασης και ταυτοποίησης για τις εφαρμογές που εκτελούνται στο υπολογιστικό νέφος (cloud), δηλαδή το Windows Azure.
     
    Με λίγα λόγια η νεότατη αυτή υπηρεσία είναι, περίπου, αντίστοιχη με το Windows Active Directory για το εσωτερικό δίκτυο των εταιρειών.
    Είναι όμως αναγκαία και απαραίτητη, αφού προσφέρει ταυτοποίηση χρηστών και έλεγχο πρόσβασης στις εφαρμογές που εκτελούνται στο Cloud, όπως το Microsoft Office 365, το Windows Intune, το Dynamics CRM Online, το Windows Azure και άλλες.
    Η αρχιτεκτονική της υπηρεσίας WAAD, της επιτρέπει να προσφέρει :
    Ενοποίηση με την υπηρεσία Windows Active Directory του δικτύου της επιχείρησης
    Με το WAAD, υπάρχει η δυνατότητα να επεκταθεί η υπάρχουσα, on-premises, υποδομή ταυτοποίησης (Active Directory) του δικτύου μιάς επιχείρησης. Έτσι οι χειριστές αυτής της επιχείρησης, θα μπορούν να χρησιμοποιούν το όνομα χρήστη και τον κωδικό τους για να χρησιμοποιούν εφαρμογές όπως το Microsoft Office 365, το Windows Azure κ.λ.π.
    Δυνατότητα Single Sign-On (λογαριασμού χρήστη) για τις Cloud εφαρμογές
    Η πρόσβαση στις Cloud εφαρμογές τόσο της Microsoft όσο και άλλων προμηθευτών ή και αυτών που έχει αναπτύξει η κάθε εταιρεία, απλοποιείται και παρέχεται η ευκολία της σύνδεσης με μοναδικό λογαριασμό χρήστη, Single Sign-On. Ως πάροχοι μοναδικού λογαριασμού χρήστη μπορούν να χρησιμοποιηθούν το Microsoft Account, το Google, Yahoo! αλλά και το Facebook.
    Έλεγχο πρόσβασης για τις Cloud εφαρμογές
    Η πρόσβαση στις εφαρμογές ελέγχεται κεντρικά και εφαρμόζονται οι πολιτικές και οι κανόνες ασφαλείας, για την πρόσβαση στην πληροφορία, της επιχείρησης. Έτσι διατηρείται η κανονιστική συμμόρφωση ενώ τηρούνται όλοι οι εσωτερικοί κανονισμοί της επιχείρησης.
    Μπορείτε να δοκιμάσετε την νέα υπηρεσία, WAAD, δημιουργώντας έναν λογαριασμό μέσω αυτού του συνδέσμου
    Windows Azure AD tenant
    The post Τι είναι το Windows Azure Active Directory (WAAD) appeared first on Vaggelis Kappas.
     
    Source
  8. kavag
    Οι επιχειρήσεις που θέλουν να εκμεταλλευτούν την δυνατότητα SingleSign-on (SSO), την πρόσβαση δηλαδή στις υπηρεσίες του MicrosoftOffice 365, με τον λογαριασμό χρήστη που ήδη έχουν για την υποδομή της επιχείρησης, το ActiveDirectory, θα πρέπει να εξασφαλίσουν έναν αριθμό από Servers που ανάλογα με τον αριθμό των εργαζομένων και των απαιτήσεων θα πρέπει να είναι διαρκώς διαθέσιμοι και αδιαλείπτως συνδεδεμένοι με το Internet.
    Για να υλοποιηθεί μία υβριδική υποδομή του MicrosoftOffice 365, και να εξασφαλιστεί το SSO, θα πρέπει να υπάρχουν και μάλιστα σε λειτουργία «υψηλής διαθεσιμότητας» οι παρακάτω υπηρεσίες :
     
    · Active Directory Domain Services (AD DS)
    · Active Directory Federation Services (AD FS) και Active Directory Federation Services Proxy
    · Directory synchronization services
    Η λειτουργία αυτών των υπηρεσιών και μάλιστα σε «υψηλή διαθεσιμότητα» προσθέτει μία εκτεταμένη υποδομή με Servers, συνδέσεις και υποστήριξη στην υποδομή της επιχείρησης πράγμα που οι σημερινές επιχειρήσεις θα ήθελαν να μετριάσουν ή και να ελαχιστοποιήσουν.
    Την ανάγκη αυτή έρχεται να καλύψει το WindowsAzureμε τα VirtualMachinesκαι γενικότερα το InfrastructureasaService.
    Έτσι, το να χρησιμοποιεί η επιχείρηση την υποδομή του WindowsAzureκαι των VirtualMachinesτου, για να φιλοξενήσει τις απαραίτητες για την λειτουργία της υπηρεσίες έχει πολλά πλεονεκτήματα.
    Αρχικά συνάδει με την τάση και την γενικότερη προσέγγιση για την χρήση υποδομών και υπηρεσιών σε μικτά, υβριδικά, περιβάλλοντα. Η επιχείρηση θέλει να φιλοξενήσει στο υπολογιστικό νέφος, στο WindowsAzure, υποδομή που είναι απαραίτητη για τις υπηρεσίες και τις εφαρμογές του MicrosoftOffice 365 που χρησιμοποιεί.
    Ακόμη, υπάρχει η δυνατότητα της μείωσης του κόστους κτήσης και λειτουργίας της αναγκαίας υποδομής, όπως είναι οι Serversκαι οι συνδέσεις καθώς και η ταχύτατη ανάπτυξη της λύσης, αφού το μόνο που χρειάζεται είναι η δημιουργία των VirtualMachines.
    Τέλος εξασφαλίζει την συνεχή και αδιάλειπτη διάθεση, των απαραίτητων για την λειτουργία της επιχείρησης υπηρεσιών, ανεξάρτητα εάν τα γραφεία της επιχείρησης είναι offline λόγω κάποιας βλάβης, ή έχει συμβεί κάποια καταστροφή.
    Ο σχεδιασμός της υβριδικής υποδομής που θα υποστηρίξει την χρήση του SSOγια την πρόσβαση στις υπηρεσίες του MicrosoftOffice 365, θα πρέπει να γίνει με προσοχή και να είναι αναλυτικός ανεξάρτητα εάν η υποδομή που θα φιλοξενήσει τις απαραίτητες υπηρεσίες είναι στο WindowsAzureή στο κέντρο υποδομής (ControlRoom) της επιχείρησης.
    Στην περίπτωση που από την ανάλυση των αναγκών της επιχείρησης, προκύψει ότι είναι απαραίτητη η χρήση του SingleSign-on, υπάρχει η δυνατότητα της φιλοξενίας της υποδομής στο WindowsAzureκαι η χρήση των υπηρεσιών InfrastructureasaServiceπου προσφέρει, σε μια προσέγγιση «όλα στο σύννεφο», (Cloud-Only)
    Αλλά μπορούμε να ακολουθήσουμε και μία πιο υβριδική και «μικτή» προσέγγιση και να χρησιμοποιήσουμε το Windows Azure IaaS για να αντιμετωπίσουμε περιπτώσεις βλάβης ή και καταστροφής (Disaster Recovery).
    Θα ακολουθήσουν και άλλα άρθρα, στα οποία θα αναλύσουμε τα δύο προαναφερόμενα σενάρια και τους τρόπους που μπορούμε να κάνουμε σε κάθε περίπτωση την υλοποίηση.
    The post Το Windows Azure IaaS, στην υπηρεσία του Single Sign-On (SSO) appeared first on Vaggelis Kappas.
     
    Source
  9. kavag
    Εκτός από τις υπόλοιπες υπηρεσίες που προσφέρει το Windows Azure, προσφέρει και αποθηκευτικό χώρο μέσω του Windows Azure Storage, με την χρήση του οποίου μπορούμε να αυξήσουμε τον αποθηκευτικό μας χώρο.
    Σε αυτό το άρθρο, θα ασχοληθούμε με ένα από τα είδη αποθηκευτικού χώρου που προσφέρονται το Binary Large Object, ή αλλιώς BLOB
    Το Windows Azure Blob Storage, είναι μία υπηρεσία που μας επιτρέπει την αποθήκευση μεγάλης ποσότητας μη δομημένης πληροφορίας, η οποία μάλιστα είναι προσβάσιμη μέσω πρωτοκόλλου HTTP ή HTTPS, πρακτικά από παντού. Ένα Blob μπορεί να έχει μέγεθος εκατοντάδων gigabytes, ενώ το κάθε Storage Account του Windows Azure μπορεί να περιέχει έως και 100TB από Blobs.
     
    Συνήθως τα Blobs χρησιμοποιούνται για την αποθήκευση :
    Πολυμέσων, όπως φωτογραφίες και βίντεο.
    Πολυμέσων, όπως βίντεο και ήχος για online παρακολούθηση (streaming)
    Μεγάλων αρχείων
    Αρχείων εφαρμογών Backup και Disaster Recovery
    Δεδομένα πολύ μεγάλου όγκου για περαιτέρω ανάλυση.

    Η υπηρεσία Blob του Windows Azure Storage έχει τα παρακάτω ιεραρχική δομή

    Περιλαμβάνει δηλαδή τα :
    Storage Account: Είναι το υψηλότερο επίπεδο της ονοματολογίας για την πρόσβαση στα Blobs, γι’αυτό και όλη η πρόσβαση γίνεται μέσω αυτού. Μπορεί να περιλαμβάνει απεριόριστο αριθμό από Containers, φτάνει το συνολικό μέγεθος του Account να είναι 100ΤΒ.
    Container: Αποτελεί ένα τρόπο ομαδοποίησης των Blobs και μπορεί να περιλαμβάνει απεριόριστο αριθμό από αυτά. Κάθε Blob πρέπει να περιλαμβάνεται σε ένα Container
    Blob: Ένα οποιοδήποτε αρχείο με πολύ μεγάλο μέγεθος. Διαχωρίζονται σε Block blobs με μέγεθος μέχρι 200GB και Table blobs με μέγεθος έως 1ΤΒ.
    The post Τι είναι το Windows Azure Storage appeared first on Vaggelis Kappas.
     
    Source
×
×
  • Create New...