VMware Data Protection

Facebooktwittergoogle_plusredditlinkedin

VDP, come lo si chiama abitualmente, è una comoda soluzione di backup per le macchine virtuali VMware che, in modo molto semplice ed efficacie, mette a disposizione un interessante set di funzionalità per protegge volumi anche interessanti di dati. In questo post vorrei sottolineare, nel bene e nel male, alcune caratteristiche del prodotto. Come prima […]

Scenari di utilizzo di Sysprep

Facebooktwittergoogle_plusredditlinkedin

Sysprep è l’utility per la creazione delle immagini del sistema operativo da utilizzare per automatizzare il deploy sia su sistemi fisici che virtuali.

Prima di utilizzare Sysprep per creare un’immagine del sistema da utilizzare per il deploy massivo o per eventuali future reinstallazioni occorre tenere presente le seguenti limitazioni:

  • Utilizzare l’interfaccia a riga di comando, a partire da Windows 8.1 l’interfaccia utente di Sysprep è deprecata e anche se ancora supportata potrebbe essere rimossa nelle future versioni del sistema operativo.
  • Non tutti i ruoli server supportano Sysprep, a riguardo si veda il seguente Sysprep Support for Server Roles. Il supporto può variare a seconda della versione de sistema operativo e per alcuni ruoli possono essere necessarie alcune operazioni (per esempio per quanto riguarda Hyper-V è supportato a partire da WS2008R2 ed occorre eliminare le reti virtuali prima di usare Sysprep)
  • Non eseguire Syprep su sistemi formattati NTFS con file o cartelle criptate, in caso contrario i file o le cartelle diventeranno illeggibili e non sarà possibile recuperarle
  • Eseguire Sysprep prima eseguire di join a dominio, in caso contrario verrà rimosso dal dominio). Inoltre il Sysprep eseguito su computer a dominio con GPO che impone una password robusta a tutti gli utenti non rimuove tale GPO, quindi se anche gli utenti locali non hanno una password che rispetti tale policy non sarà possibile eseguire il logon.
  • Utilizzare sempre il Sysprep contenuto nel sistema e non una versione differente, in Windows Vista/Windows Server 2008 e successivi Sysprep è disponibili nella cartella %windir%system32sysprep
  • Come indicato nel seguente Capture an Image for Deployment (Generalize) in Windows 8 con product key retail o volume license è possibile eseguire Sysprep fino ad 8 volte, dopodiché occorre ripartire da una nuova immagine dal momento che sono stati esauriti il numero di Rearm disponibili (in Windows 7 il numero di rearm disponibili è pari a 3).

Scenario 1: Generalizzazione del sistema

  1. Eseguire Sysprep /generalize /shutdown
  2. Al riavvio il sistema rimuove le informazioni univoche, resetta il SID, resetta l’attivazione, elimina i restore points e azzera gli event logs

Scenario 2: Creazione di un’immagine di distribuzione

  1. Eseguire Sysprep /generalize /shutdown /oobe
  2. Catturare l’immagine del sistema
  3. All’avvio il sistema esegue l’ Out-Of-Box Experience

Scenario 3: Creazione di un’immagine di distribuzione per una VM Windows 8

  1. Eseguire Sysprep /generalize /shutdown /oobe /mode:vm
  2. Copiare il VHD/VHDX
  3. All’avvio della VM viene eseguito l’ Out-Of-Box Experience

Scenario 4: Creazione di un’immagine di distribuzione tramite un file di risposte

  1. Eseguire Sysprep /audit /reboot /unattend:PathUnattend.xml
  2. Al riavvio vengono applicate le impostazioni definite nel file di risposte
  3. Eseguire Sysprep /generalize /shutdown /oobe
  4. Catturare l’immagine del sistema

Scenario 5: Personalizzazione di un’immagine generata con Sysprep

  1. Premere CTRL+MAIUSC+F3 nella prima schermata della Out-Of-Box Experience (Welcome screen)
  2. Viene avviato il desktop dell’amministratore locale
  3. Eseguire le personalizzazioni (per esempio impostare configurazioni e installare driver aggiuntivi, aggiornamenti o applicazioni
  4. Eseguire Sysprep /generalize /shutdown /oobe
  5. Catturare l’immagine del sistema

Per meglio comprendere come è strutturato il processo di avvio di Windows e in quale fase viene utilizzato il file di risposte si veda il seguente schema tratto dal link oobeSystem:

image

Di seguito invece lo schema della modalità Audit tratto dal link auditUser:

image

 

Per ulteriori approfondimenti si vedano:

Gestire le notifiche dei server HP tramite Powershell

Facebooktwittergoogle_plusredditlinkedin

HP ha nel corso degli anni sviluppato una serie di software per consentire la diagnostica e la verifica dello stato di salute dell’hardware dei propri server. In particolare per quanto riguarda la serie Proliant momento esistono i seguenti tool:

  • HP System Management Homepage (SMH) ovvero una console web che si installa direttamente sul sistema da monitorare che permette di avere una panoramica sullo stato dell’hardware.
  • HP Insight Management WBEM Providers che consente di ottenere informazioni dall’hardware e renderle disponibili alla SMH, di registrare avvisi di notifica nell’event viewer in caso di problemi. I WBEM providers sono basati sullo standard Distributed Management Task Force’s (DMTF) Web-based Enterprise Management rappresentano sono un’alternativa più semplice all’approccio basato su Simple Network Management Protocol (SNMP) disponibile tramite gli HP Insight Management Agents.
  • HP Smart Storage Administrator una console web per la gestione e la configurazione dello storage e l’HP ProLiant Smart Array SAS/SATA Event Notification Service ovvero un servizio che registra nell’Event Viewer gli eventi relativi allo storage controller.
  • Hp insight diagnostics online edition una console web che permette di eseguire test diagnostici che si integra con SMH.
  • Per l’installazione e l’aggiornamento dei sistemi, dei driver e dei tool sono disponibili HP Intelligent Provisioning (IP), HP Service Pack for ProLiant e HP Smart Update Manager (HP SUM)

SMH consente di supervisionare lo stato del sistema in maniera completa, ma non consente di gestire l’invio di notifiche ad esempio tramite mail nel caso si verifichino problemi hardware.

image

Per gestire notifiche di alert è necessario utilizzare HP Systems Insight Manager (SIM), una console web tramite cui gestire Inventory, Reporting, Heath e update di Firmware e Software dei server dell’infrastruttura.

Per la problematica relativa al mancato riconoscimento del certificato digitale utilizzato da SMH e SIM in IE si veda HP Systems Insight Manager (HP SIM) and System Management Homepage (SMH) – Microsoft Internet Explorer Does Not Link Website Certificate to all IP or DNS Names Associated with the Certificate.

Vi sono però piccole realtà o scenari in cui SIM diventa una soluzione non così pratica perché basterebbe una semplice notifica mail degli eventi di warning e di errore registrati dai WBEM providers o dall’HP ProLiant Smart Array SAS/SATA Event Notification Service.

In questi scenari può tornare utile l’utilizzo di PowerShell per eseguire una query sugli eventi registrati da agent o tool HP e inviarli poi tramite mail. Per un elenco degli eventi registrati si veda ad esempio HP Insight Management WBEM Providers 9.3 for Microsoft Windows Eventlog.

Di seguito riporto uno script personalizzabile che esegue la ricerca degli eventi di errore e di warning contenti la parola HP nel campo Source registrati negli ultimi 60 minuti e li invia per mail:

HPEventNotifier.ps1

# *** Impostazioni ***
$LastMinutes = 60
$Source = “*HP*”
$SmtpServer = “NameOrIPServerSMTP
$MailFrom = “MailFromAddress
$MailTo = “MailToAddress
# ********************

# *** Ricerca eventi Error e Warning ***
$Events = Get-EventLog -LogName System -EntryType Error, Warning -Source $Source -After (Get-Date).AddMinutes(-1*$LastMinutes) -ErrorAction SilentlyContinue
$EventsCount = 0
If($Events -ne $null) {$EventsCount = ($Events | Measure).Count}

# *** Invio mail per ogni evento trovato ***
If($EventsCount -gt 0)
{
  ForEach ($event In $Events)
  {
   # *** Impostazione Subject Mail ***
   $MailSubject = $env:COMPUTERNAME
   $MailSubject = $MailSubject + ” – ” + $event.EntryType
   $MailSubject = $MailSubject + ” ” + $event.Index
   $MailSubject = $MailSubject + ” ” + $event.Source

   # *** Impostazione Body Mail ***
   $MailBody = “Time: ” + $event.TimeGenerated + “`n`n”
   $MailBody = $MailBody + “Message:`n”
   $MailBody = $MailBody + $event.Message

   # *** Invio Mail ***
   Send-MailMessage -To $MailTo -Subject $MailSubject -From $MailFrom -Body $MailBody -SmtpServer $SmtpServer
  }
}

Per automatizzare la scansione degli eventi e l’invio sarà sufficiente schedulare l’esecuzione di un file cmd che esegue lo script:

HPEventNotifier.cmd

%SystemRoot%system32WindowsPowerShellv1.0powershell.exe C:ScriptsHPEventNotifierHPEventNotifier.ps1

Ovviamente occorrerà schedulare l’esecuzione ripetitiva del file cmd con un intervallo inferiore a 60 minuti, ad esempio 55 minuti, per evitare il rischio di perdere qualche evento accettando l’eventualità di poter ricevere una doppia notifica di qualche evento data l’importanza di ricevere tempestivamente gli alert di problemi correlati all’hardware.

HP ha inoltre reso disponibile una serie di 112 cmdlets tramite l’HP Scripting Tools for Windows PowerShell che permetteno di interfacciarsi con sistema di gestione HP Integrated Lights-Out (iLO).

Veeam Backup & Replication 7.0 R2 update

Facebooktwittergoogle_plusredditlinkedin

image

E’ stata rilasciata la R2 per Veeam Backup & Replication 7.0 con pieno supporto a Windows Server 2012 R2 e VmWare 5.5.

L’update è disponibile per il download a questo Link.

Queste le Funzionalità complete aggiunte:

New Features:

VMware

  • vSphere 5.5 support, including support for 62TB virtual disks and virtual hardware v10 virtual machines.
  • vCloud Director 5.5 support.
  • Support for Windows Server 2012 R2 and Windows 8.1 as guest virtual machines (VMs).
  • Added ability to limit maximum amount of active VM snapshots per datastore to prevent it from being overfilled with snapshot deltas. The default value of 4 active snapshots can be controlled with MaxSnapshotsPerDatastore (REG_DWORD) registry key.

 
Microsoft

  • Windows Server 2012 R2 Hyper-V and free Hyper-V Server 2012 R2 support, including support for Generation 2 virtual machines.
  • Support for Windows Server 2012 R2 and Windows 8.1 as guest virtual machines (VMs)
  • Support for System Center 2012 R2 Virtual Machine Manager (VMM)
  • Support for the installation of Veeam Backup & Replication and its components on Windows Server 2012 R2 and Windows 8.1.

 
Built-in WAN acceleration

  • Increased data processing performance up to 50% with hard drive based cache, and up to 3 times with SSD based cache. Multi-core CPU on source WAN accelerator is recommended to take full advantage of the enhanced data processing engine.

 
Replication

  • Added ability for source and target proxy servers to reconnect and resume replication when network connection between source and target site drops for a short period of time.

 
Tape

  • Added support for a number of enterprise-class tape libraries with partitioning functionality that allows presenting multiple tape library partitions to the same host.
  • Import/export slot interaction has been redesigned to add support for a number of IBM and Oracle tape libraries.
     

Application-aware processing

  • Added ability for application-aware processing logic to detect passive Microsoft Exchange DAG database present on the VM, and process it accordingly.
  • Added support for Exchange CCR clusters.

 
User interface

  • User interface should now remember size and positions off the main window, as well as all panels and columns.

 
Resolved issues
:
 
Engine

  • Importing backup fails with the “Failed to load backup meta from file. Unexpected end of file has occurred.” if VBM file size exceeds 10MB.
  • Deleted VM retention incorrectly applies to not deleted VMs when full backup transform duration exceeds the deleted VM retention period (14 days by default).
  • Removed unintentional compression (and further uncompression) of data transferred between source and target data movers when both are running on the same server, and compression is disabled in the job settings.

 
VMware

  • Replication jobs should now automatically handle the situations when source VM disk size changes, instead of failing with the “Declared and actual sizes of the disk are different” error.
  • Replication jobs using Windows 2003 hot add source proxy fails with the “Client error: Failed to send command” error.
  • Very long running replication jobs may fail with the “Failed to process [srcSaveSignature]” error.
  • Re-IP addressing process may unintentionally update some reparse points found in the guest file system, which under certain circumstances may make them unusable.
  • vCenter Server version is not updated after vCenter update on the vSphere Web Plug-in configuration page of Enterprise Manager web UI.
  • vSphere Web Client plug-in shows “Access denied” error for all users that have never logged into Enterprise Manager.
  • Added ability to configure timeouts for networkless (VIX) operations via vixOperationTimeoutSec (REG_DWORD) and vixExecutionTimeoutSec (REG_DWORD) registry values in seconds.
  • Added ability to configure timeouts for Instant VM Recovery operations via IrMountLeaseTimeOut (REG_DWORD) and IrVcdMountLeaseTimeOut (REG_DWORD) registry values in minutes. The new, increased defaults are 30 and 45 minutes respectively.

 
Hyper-V

  • Under certain scenarios of dynamic VHD virtual disk size increase, changed block tracking information can be reset, resulting in incremental job run having to read the entire VHD to determine the incremental changes.
  • Performing compact operation on VHD virtual disk can reset changed block tracking information.
  • Instant VM Recovery fails with the “Connection with Hyper-V mount agent was lost” error for VMs with dynamic VHD disk size not being a multiple of 256MB.
  • Failure to rescan any host makes rescan of the remaining cluster hosts to fail with the following error: “Failed to execute WMI Query
  • Instant VM Recovery fails with the “Failed to prepare VHD file for mounting” when target Hyper-V host’s storage uses native 4KB sector size disks.
  • Application-aware processing of Windows Server 2012 VM running on Windows Server 2008 R2 Hyper-V may hang for 10 minutes.
  • Removed the single VSS snapshot per cluster limit. As the results, all jobs should now correctly use the max concurrent snapshot per volume setting.
  • Replication job may fail during the free disk space check with the “Failed to extract volume mount point by the specified path” error, depending on how destination folder was selected in the replication job wizard.
  • Veeam jobs may cause non-VM owner Hyper-V nodes to log the following events to the system event log: “(eventid = 8194): “Unexpected error querying for the IVssWriterCallback interface.  hr = 0x80070005, Access is denied”
  • Changed block tracking functionality does not function on cluster disks.

 
Application-aware processing

  • Exchange 2003 running in VM restored from Veeam backup may rename its mailbox databases after each subsequent reboot.

 
Backup Copy

  • Retry cycles cause incorrect processing duration shown in the Backup Copy job report.
  • Backup Copy job reports show the inflated traffic savings ratios due to being calculated off the incorrect parameter.
  • Certain Backup Copy jobs failures result in Backup Copy job report not send immediately, but rather at the end of the copy interval.
  • A number of additional enhancements to the Backup Copy job report.

 
File level recovery

  • Copy To fails on files with long paths with the following error: “The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248”
  • Mount cache files should now be cleaned up from %AppData% folder automatically.

 
Guest file system indexing

  • Guest file system catalog data processing performance was accelerated a few times in cases when the catalog contains very largest amount of restore points.
  • Catalog service may take a very long time to start when there is a large data upload queue present.

 
1-Click VM Restore

  • File restore operator scope settings should no longer affect ability to perform VM restore in certain scenarios with overlapping permissions.

 
Built-in WAN Acceleration

  • Backup Copy job fails with the “Unable to initialize remote target session connection: all aliases have failed” after source VM disk has been resized
  • Large Backup Copy jobs may fail with the “ERR |Invalid length of the binary data” error.
  • WAN accelerator resource is not released correctly if Backup Copy job did not copy any data during the copy interval, preventing the following copy intervals from obtaining access to WAN accelerators.
  • Under certain circumstances, the Backup Copy job health check may fail with the “Access is denied” error.

 
Backup from Storage Snapshots

  • Added ability to perform multiple VM snapshot removal concurrently (according to the global concurrency setting) when multiple VMs are backed up from the same LUN by the same job.
  • HP StoreServ (3PAR) integrated jobs may fail with the “Invalid input: string length exceeds limit” error depending on the snapshot name length.

 
Tape

  • Drive to library matching code does not process some symbols in the serial numbers, resulting in matching problems with certain tape libraries (for example, QUADStor VTL).
  • Added ability to disable tape device rescan completely with the DisableTapeSubsystem (REG_DWORD) registry key. This can help in situations when the same tape devices is shared between multiple backup solutions.
  • In some cases, stopping tape jobs can cause backup session not finalized correctly, resulting in future attempts to write to the same tape failing with the “Tape positioning” error.
  • The Do not protect data (cyclic overwrite tapes as required) option does not work correctly for standalone drives.
  • Tapes with multiple partitions cannot be correctly formatted.
  • Tape jobs fail with the “Tape changer alert: The library was unable to read the bar code on a cartridge” error upon receiving the corresponding alert from the tape library.
  • Certain tape device configurations cause “There is no media in the drive” error to be logged incorrectly when the media is in fact present in the drive.
  • Under rare circumstances, writing to the first tape in the media set may fail with the following error: The INSERT statement conflicted with the FOREIGN KEY constraint “FK_Tape.file_parts_file_versions”

 
File Copy

  • Linux symbolic links are not copied by file management operations and file copy jobs.

 
SureBackup

  • SureBackup job may incorrectly use vCloud Director virtual machine backup when Application Group is configured by adding VM from vSphere infrastructure.
  • SureBackup does not update port group correctly when both production and virtual lab networks are located on the same Distributed Virtual Switch (DVS).

 
Veeam Explorer for Microsoft Exchange

  • Launching Veeam Explorer for Exchange from Backup Browser may fail with the following error: “Error: JetError -546, JET_errLogSectorSizeMismatch, the log file sector size does not match the current volume’s sector size”

 
Veeam Explorer for Microsoft SharePoint

  • Using localized SQL server for staging fails with the “File is a Directory” error.
  • Attachments lost during recovery when attachment path contains Unicode symbols, even though they can be seen in the user interface.

 
Known Issues:

General

  • Network traffic verification does not function when the Use multiple upload streams per job option is disabled.
     

vSphere 5.5

  • E1000E vNIC adaptors has been found to crash ESXi host under heavy load. Avoid using them until the patch is available from VMware. For more information, please refer to VMware support KB2059053
  • Virtual appliance (hot add) processing mode does not support SATA disks. This is by design of VMware hot add functionality, which requires SCSI adaptors.
  • vSAN beta is not supported.
     

Hyper-V 2012 R2

  • Offhost backup from deduplicated volume fails if Data Deduplication feature is disabled on backup proxy server, or incompatible with Windows Server deduplication version used on backed up volume.
  • Shared VHDX virtual disks backup is not supported.
     

Windows Server 2012 R2

  • In Windows Server 2012 R2 environments with Windows Server deduplication feature in use, be sure to install Veeam Backup & Replication on Windows Server 2012 R2, and enable the Data Deduplication feature. Windows Server 2012 deduplication driver is not compatible with Windows Server 2012 R2 deduplication, causing file level recovery errors with false data corruption reports

 

R2a Update (build 7.0.0.771)
 

This newer build addresses only the following issues introduced with the original R2 build:

  • Backup and replication jobs fail with the “Dynamic library cannot be loaded” error when the backup proxy is missing C++ redistributable components (such as in case of clean OS install). Alternatively to installing this newer build, you may instead choose to install C++ redistributable components from vee.am/runtime.
  • “Transferred” job counter displays the same value with “Read” counter in cases when both source and target data movers are running on the same server (such as when backup proxy is writing data to its own disk). This is purely a cosmetic issue, as the actual transferred amount is lower due to source-side dedupe and compression.

  • Tape backup jobs writing to a standalone tape drive hangs on processing the second task in the job.


The update also contains all fixes from
Patch 1

 

SQL Server e GPO Attività manutenzione volume

Facebooktwittergoogle_plusredditlinkedin

Per velocizzare le attività che comportano l’allocazione di file data (creazione db, restore db, aggiunta file ad un DB, estensione dimensione di un file DB, autogrow) è possibile aggiugere l’account con cui viene eseguito SQL Server Server alla policy locare di sicurezza Perform Volume Maintenance Tasks che abilita l’instant file initialization.

Questa impostazione non influisce sulla allocazione dei file logs, ma apporta benefici in termini di performance durante l’esecuzione dei comandi CREATE DATABASE, ALTER DATABASE, RESTORE e AUTOGROW.

image

Dopo aver impostato la policy occorre riavviare il servizio di SQL Server (la rimozione di tale impostazione comporta invece un riavvio del sistema). Tale policy ha un’implicazione di sicurezza di cui occorre tenere presente, infatti se attivata quando viene eliminato un file questo viene solo deallocato e lo spazio occupato da questo non viene riempito di zeri permettendo quindi di recuperare i dati come indicato in How and Why to Enable Instant File Initialization:

“This permission keeps SQL Server from “zeroing out” new space when you create or expand a data file (it is not applied to log files).  This helps performance for CREATE DATABASE, ALTER DATABASE, RESTORE, and AUTOGROW. It can have a significant positive impact on how long it takes to create or expand a data file, but there is a small security risk in doing so. That is because a file “delete” really just deallocates the space and a new allocation can reuse that space which may still have data in it. When you do not zero out the existing space there is a possibility that someone could read data that you thought had been deleted. It is very common to turn Instant File Initialization on. Many shops consider the increased performance benefit to far outweigh the small security risk, but you must weigh the cost and benefits within your own environment.”

L’impostazione di tale policy è anche consigliata tra le best practices dell’implementazione di SQL Server su VM in Azure disponibile al seguente Performance Considerations for SQL Server in Windows Azure Virtual Machines, in quanto non è impostata di default nelle SQL Server platform image:

“For databases of any significant size, enabling instant file initialization can improve the performance of some operations involving database files, such as creating a database or restoring a database, adding files to a database or extending the size of an existing file, autogrow, and so on. For information, see How and Why to Enable Instant File Initialization.

To take advantage of instant file initialization, you grant the SQL Server (MSSQLSERVER) service account with SE_MANAGE_VOLUME_NAME and add it to the Perform Volume Maintenance Tasks security policy. If you are using a SQL Server platform image for Windows Azure, the default service account (NT ServiceMSSQLSERVER) isn’t added to the Perform Volume Maintenance Tasks security policy. In other words, instant file initialization is not enabled in a SQL Server Windows Azure platform image.

After adding the SQL Server service account to the Perform Volume Maintenance Tasks security policy, restart the SQL Server service.”

Sempre  nella white paper Performance Guidance for SQL Server in Windows Azure Virtual Machines vengono resi disponibili i test sulla creazione e il restore di un DB di 100 GB con e senza l’impostazione dell’instant file initialization:

image

Per ulteriori informazioni si veda Database File Initialization.

Per chi desidera approfondire le potenzialità offerte da Azure vi ricordo i prossimi IT Camp su Azure.

Il formato VHDX

Facebooktwittergoogle_plusredditlinkedin

imageCon Windows Server 2012 è stato introdotto un nuovo formato per i dischi virtuali denominato VHDX che apporta una serie di miglioramenti:

  • Supportano fino a 64 TB (contro i 2 TB dei VHD)
  • Garantiscono una maggior protezione dei dati da fail dovuti a mancanza di corrente
  • Migliorano l’allineamento dei VHD per lavorare su dischi con settori di grandi dimensioni
    • I dischi dinamici e differenziali possono utilizzare block size di dimensioni maggiori
    • E’ stato introdotto un 4-KB logical sector virtual disk che aumenta le performance nelle applicazioni/workloads progettati per settori 4 KB.
  • Consentono il salvataggio di metadati custom che l’utente potrebbe voler memorizzare (versione OS, patch applicate)
  • Consentono il Trim ovvero permette allo storage fisico di recuperare lo spazio non utilizzato

Per la precisione anche i VHD in Windows Server 2012 hanno subito dei miglioramenti come indicato nella Performance Tuning Guidelines for Windows Server 2012, infatti i VHD creati in WS2012 sono ottimizzati per l’allineamento a 4 KB:

“The VHD format was the only virtual hard disk format that was supported by Hyper-V in past releases. In Windows Server 2012, the VHD format has been modified to allow better alignment, which results in significantly better performance on new large sector disks.

Any new VHD that is created on a Windows Server 2012 operating system has the optimal 4 KB alignment. This aligned format is completely compatible with previous Windows Server operating systems. However, the alignment property will be broken for new allocations from parsers that are not 4 KB alignment-aware (such as a VHD parser from a previous version of Windows Server or a non-Microsoft parser).

Any VHD that is moved from a previous release does not automatically get converted to this new improved VHD format.

You can check the alignment property for all the VHDs on the system, and it should be converted to the optimal 4 KB alignment. You create a new VHD with the data from the original VHD by using the Create-from-Source option.

By default, VHDs are exposed with a physical sector size of 512 bytes. This is done to ensure that physical sector size dependent applications are not impacted when the application and VHDs are moved from a previous version of Windows Server to Windows Server 2012.

After you confirm that all VHDs on a host are not impacted by changing the physical sector size to 4 KB, you can set the following registry key to modify all the physical sector sizes of all the VHDs on that host to 4 KB. This helps systems and applications that are 4 KB-aware to issue 4 KB sized I/Os to the VHDs.

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesvhdmpParameters Vhd1PhysicalSectorSize4KB = (REG_DWORD)

A non-zero value will change all VHDs to report 4k physical sector size.

By default, disks with the VHDX format are created with the 4 KB physical sector size to optimize their performance profile regular disks and large sector disks.”

In WS2012 è stato introdotto il supporto per i Native 4 K Disks (avevo parlato di questa problematica nel post Windows 2008 R2: Errore 517 durante il backup). Quindi Hyper-V può memorizzare i virtual disk su questi dischi come riportato nella Performance Tuning Guidelines for Windows Server 2012:

“Hyper‑V in Windows Server 2012 makes it possible to store virtual hard disks. This is done by implementing a software RMW algorithm in the virtual storage stack layer that converts 512-byte access and update requests to corresponding 4 KB accesses and updates.

Because VHD file can only expose themselves as 512-byte logical sector size disks, it is very likely that there will be applications that issue 512-byteI/O requests. In these cases, the RMW layer will satisfy these requests and cause performance degradation. This is also true for a disk that is formatted with VHDX that has a logical sector size of 512 bytes.

It is possible to configure a VHDX file to be exposed as a 4 KB logical sector size disk, and this would be an optimal configuration for performance when the disk is hosted on a 4 KB native physical device. Care should be taken to ensure that the guest and the application that is using the virtual disk are backed by the 4 KB logical sector size. The VHDX formatting will work correctly on a 4 KB logical sector size device.”

Di seguito lo schema del formato dei file VHDX:

image

 

Le parti che compongono un VHDX sono strutture che, come detto precedentemente supportano, large allocation e sono 1 MB aligned. Nel dettaglio tali strutture sono:

  • L’Header region che identifica la posizione della altre region (log, BAT e metadata table). E’ composta da due header, ma che non sono mai contemporaneamente attive per aumentare la resilienza ed evitare la corruzione.
  • L’Intent log è un buffer circolare in cui vengono scritte le modifiche alle metastrutture del VHDX prima di essere scritte nella locazione finale. In questo modo nel caso si verifichi un’interruzione di corrente durate la scrittura alla successiva riapertura le modifiche saranno riapplicate dal log permettendo al VHDX di ritornare in uno stato consistente. Il log non mantiene le modifiche del payload blocks, quindi no protegge i dati in essi contenuti
  • La Data region che è composta dalla BAT che contiene i puntatori ai user data blocks e ai sector bitmap block. Nel VHD invece i sector bitmaps sono aggregati nei loro blocks invece di essere posizionati in testa ad ogni payload block.
  • La Metadata region che contiene una tabella di puntatori ai user-defined metadata e ai virtual hard disk file metadata (block size, physical sector size e logical sector size)

I requisiti per l’utilizzo dei VHDX sono:

  • Sistema operativo Windows Server 2012/Windows 8 o superiore
  • Ruolo Hyper‑V
  • Per poter utilizzare la funzionalità di trim occorre:
  • Hardware Trim-capable, ovvero in grado di inviare le unmap notifications che Hyper-V in WS 2012 è in grado di gestire.
  • I VHDX devono essere connessi come virtual SCSI devices  o come directly attached physical disks (detti anche pass-through disks) o come natively attached VHDX-based virtual disks.

Per ulteriori approfondimenti sulla funzionalità di Trim si veda quanto riportato nella Performance Tuning Guidelines for Windows Server 2012:

“Virtual hard disk files exist as files on a storage volume, and they share available space with other files. Because the size of these files tends to be large, the space that they consume can grow quickly. Demand for more physical storage affects the IT hardware budget, so it’s important to optimize the use of physical storage as much as possible.

Currently, when applications delete content within a virtual hard disk, which effectively abandons the content’s storage space, the Windows storage stack in the guest operating system and the Hyper-V host have limitations that prevent this information from being communicated to the virtual hard disk and the physical storage device. This prevents the Hyper-V storage stack from optimizing the space usage by the VHDX-based virtual disk files. It also prevents the underlying storage device from reclaiming the space that was previously occupied by the deleted data.

In Windows Server 2012, Hyper-V supports unmap notifications, which allow VHDX files to be more efficient in representing that data within it. This results in smaller files size, and it allows the underlying physical storage device to reclaim unused space.

Only Hyper-V-specific SCSI, Enlightened IDE and virtual Fibre Channel controllers allow the unmap command from the guest to reach the host virtual storage stack. Hyper-V-specific SCSI is also used for pass-through disks. On the virtual hard disks, only virtual disks formatted as VHDX support unmap commands from the guest.

For these reasons, we recommend that you use VHDX files attached to a SCSI controller when not using regular pass through or virtual Fibre Channel disks.

Conclusioni

Nel caso in cui si migrino le VM su WS2012 da sistemi precedenti è consigliabile convertire i VHD al nuovo formato VHDX come indicato nella Performance Tuning Guidelines for Windows Server 2012:

“When you upgrade to Windows Server 2012, we recommend that you convert all VHD files to the VHDX format due to these benefits. The only scenario where it would make sense to keep the files in the VHD format is when a virtual machine has the potential to be moved to a previous release of the Windows Server operating system that supports Hyper-V.”

E’ possibile convertire i VHD in VHDX tramite la console Hyper-Manager tramite la funzionalità “Edit Disk…” (a riguardo si veda Converting a VHD to a VHDX).

L’unico caso in cui può avere un senso non migrare il formato da VHD a VHDX è quello in cui si prevedere di spostare le VM su versioni precedenti di Hyper-V (come ad esempio WS2008 R2). Per un prova sul campo dei benefici ottenuti nella migrazione da VHD a VHDX grazie al supporto large sector disks e ai 4 KB logical sector si veda Why you want to be using VHDX in Hyper-V whenever possible and why it’s important to know your baselines.

Se desiderate provare le funzionalità di WS2012 R2 vi ricordo che su TechNet Evaluation Center è possibile scaricare la versione di valutazione di Windows Server 2012 R2, mentre il 17-18-19 dicembre a Catania si terranno una serie di IT Camp su WS2012 R2, System Center 2012 R2 e W8.1.

Blog italiani (e in italiano) nel mondo IT/ICT