Hyper-V Tips of the Day

Hey folks!  I know it is Friday afternoon, it is mid-May, and most of the country is hip-deep in the NHL playoffs, so I figure I will give you a lighter post… something that will stick in your mind, but with no ‘gotta test it, action items attacked’ sort of thing.

Hyper-V has come a long way since its introduction.  They have gotten to a position of parity with vSphere (its major competition), with a few unique features and a couple of missing features… but for the first time the Microsoft team is confident that their product is on a par.

As someone who has been around Hyper-V since the beginning, I always enjoy when I notice something that has been introduced quietly; not the big ones, like Storage Live Migration and Dynamic Memory that get all of the fanfare, but smaller things. Such as:

  • Hot-changing of many of the Virtual Machine settings, such as Name, Integration Services, and Automatic Start Actions; these are all things that can be changed on running virtual machines.
  • Hot-changing Memory & CPU Resources: With Dynamic Memory the Minimum RAM can be lowered and the Maximum RAM can be raised; the Memory Buffer and Memory Weight can both be changed on the fly as well.
  • Virtual Hard Drives can be added to an existing SCSI Controller – this is great for demonstrating Storage Spaces!
  • Virtual Switches (previously Virtual Networks) can be modified on the fly, and virtual machines can be connected or disconnected on the fly; in fact the only change that cannot be made to Virtual Switches is with SR-IOV, which can only be configured for a virtual switch when that switch is created.
  • Snapshots can be taken of virtual machines at any point, and those snapshots can be reverted or deleted at any time.  One huge improvement to this is that VHDs and AVHD files will merge on the fly, instead of having to wait until the virtual machine is shut down.

These are just some of the minor improvements that I have found in Hyper-V in Windows Server 2012 (although it applies equally to Hyper-V Server 2012 and Hyper-V in Windows 8).  There are more of course, but in a nutshell we see real advantages here over previous versions.

No, we do not have hot-add memory and CPUs… I hope the team is working on that; but by enabling the adjustment (up and down) of Dynamic Memory we have made real strides, and adding to that the other improvements, it is worth downloading and installing right now!  You can deploy this in you lab and take advantage of the flexibility this technology can provide. Try it for yourself by downloading Windows Server 2012!

 

Two new books on Hyper-V: Networking & Storage!

I love promoting IT Pros and Microsoft, but when one of the champions is a Canadian it is even better for me.  Mitch Tulloch is an IT Pro author from Winnipeg, and is one of the guys I really look up to.  I have a bunch of his books, and every time a new one comes out I try to add it to my collection.  Here are two more that are right in my wheelhouse – Hyper-V in Windows Server 2012.  Pick them up and you will not regret it! –MDG 

Microsoft Press is releasing two new titles for IT pros who work with the Hyper-V virtualization platform:

The author team includes Mitch Tulloch, series editor, and over a dozen individuals at Microsoft including Support Escalation Engineers, Premier Field Engineers, Program Managers, Data Center Specialists, and experts from Microsoft Consulting Services.  These short titles will be available in June in both ebook and print format and while their primary focus is on the Windows Server 2012 version of Hyper-V, much of what they cover can also be applied to previous versions of Hyper-V.  Note that these titles are not intended as systematic guides and instead cover various scenarios on how to optimize Hyper-V environments and how to troubleshoot different kinds of issues involving networking and storage for Hyper-V hosts and virtual machines.

clip_image001 clip_image002

Windows Server 2012: Roles & Features

A colleague asked me earlier today if I knew off the top of my head how many roles and features there are in Windows Server 2012, and I had to admit that I did not know.  As Albert Einstein once said, why memorize what you can reference.  However as a quick exercise I decided to not only count them, but type them up into an article for Kalvin… and for all of you!

NOTE: I included all of the sub-roles and sub-features as well for all except for the Remote Server Administration Tools, which would show a tool for all of the roles and features.

Roles:

1. Active Directory Certificate Services

2. Active Directory Domain Services

3. Active Directory Federation Services

4. Active Directory Lightweight Directory Services

5. Active Directory Rights Management Services

6. Application Server

7. DHCP Server

8. DNS Server

9. Fax Server

10. File and Storage Services

a. File and iSCSI Services

i. File Server

ii. BranchCache for Network Files

iii. Data Deduplication

iv. DFS Namespaces

v. DFS Replication

vi. File Server Resource Manager

vii. File Server VSS Agent Services

viii. iSCSI Target Server

ix. iSCSI Target Storage Provider

x. Server for NFS

b. Storage Services

11. Hyper-V

12. Network Policy and Access Services

13. Print and Document Services

14. Remote Access

15. Remote Desktop Services

16. Volume Activation Services

17. Web Server (IIS)

Features:

1. .NET Framework 3.5 Features

a. .NET Framework 3.5 (includes .NET 2.0 and 3.0)

b. HTTP Activation

c. Non-HTTP Activation

2. .NET Framework 4.5 Features

a. .NET Framework 4.5

b. ASP.NET 4.5

c. WCF Services

i. HTTP Activation

ii. Message Queuing (MSMQ) Activation)

iii. Named Pipe Activation

iv. TCP Activation

v. TCP Port Sharing

3. Background Intelligent Transfer Service (BITS)

a. IIS Server Extension

b. Compact Server

4. BitLocker Drive Encryption

5. BitLocker Network Unlock

6. BranchCache

7. Client for NFT

8. Data Center Bridging

9. Enhanced Storage

10. Failover Clustering

11. Group Policy Management

12. Ink and Handwriting Services

13. Internet Printing Client

14. IP Address Management (IPAM) Server

15. iSNS Server Service

16. LPR Port Monitor

17. Management OData IIS Extension

18. Media Foundation

19. Message Queuing

a. Message Queuing Services

b. Message Queuing DCOM Proxy

20. Multipath I/O

21. Network Load Balancing

22. Peer Name Resolution Protocol

23. Quality Windows Audio Video Experience

24. RAS Connection Manager Administration Kit (CMAK)

25. Remote Assistance

26. Remote Differential Compression

27. Remote Server Administration Tools

28. RPC over HTTP Proxy

29. Simple TCP/IP Services

30. SMTP Server

31. SNMP Server

a. SNMP WMI Provider

32. Subsystem for UNIX-based Applications (Deprecated)

33. Telnet Client

34. Telnet Server

35. TFTP Client

36. User Interfaces and Infrastructure

a. Graphical Management Tools and Infrastructure

b. Desktop Experience

c. Server Graphical Shell

37. Windows Biometric Framework

38. Windows Feedback Forwarder

39. Windows Identity Foundation 3.5

40. Windows Internal Database

41. Windows PowerShell

a. Windows PowerShell 3.0

b. Windows PowerShell 2.0

c. Windows PowerShell ISE

d. Windows PowerShell Web Access

42. Windows Process Activation Service

a. Process Model

b. .NET Environment 3.5

c. Configuration APIs

43. Windows Search Service

44. Windows Server Backup

45. Windows Server Migration Tools

46. Windows Standards-Based Storage Management

47. Windows System Resource Manager (Deprecated)

48. Windows TIFF IFilter

49. WinRM IIS Extension

50. WINS Server

51. Wireless LAN Service

52. WoW64 Support

53. XPS Viewer

Now: Adding roles and features in Windows Server 2012 is easier than it was previously… either use the Add Roles and Features Wizard (See my article and video here).  Or you can use Windows PowerShell (which is the preferred way to do it) by using the cmdlet Install-WindowsFeature.  Even though there is a distinction between Roles and Features, the cmdlet to install them is the same for both.

Now go forth and serve, my fellow IT Pros!

Windows Server 2012: More than Virtualization!

Since it was in pre-release I have been evangelizing Windows Server 2012.  I have gone from sea to shining sea talking about it at Launch events, at Partner showcases, in IT Camps, at user groups talking about how much better it is than Windows Server 2008, but more importantly I chiefly discuss the improvements to Hyper-V over previous versions, and how it (and System Center 2012) compares to VMware’s vSphere 5.1 and vCenter Server.

While all of that is true, to say that virtualization is the only benefit to Windows Server 2012 is doing it a disservice.  Don’t get me wrong, Hyper-V officially rocks; but if virtualization was the only benefit to the new Server, couldn’t companies simply deploy the new version on their host hardware, and leave their virtual machines running Windows Server 2008 R2?

Going forward when someone asks me what is new and exciting in Windows Server, I am going to start with the improvements to Hyper-V… but then we can go into the real meat of the product, and see where it takes us.  Improvements such as:

Storage Spaces (or Storage Pools), which I have equated to software-RAID after ten generations of improvement.  With Storage Spaces you can build your volume from multiple disks of equal or disparate size, on similar or disparate architecture.  Imagine having three SAS disks of 450GB, 146GB, and 72GB combined into a single volume of 668GB… or a 146GB SAS disk, a 500GB SATA disk, and a 2TB USB disk combined into a 2.46TB volume.  Add to that the ability to hot-add drives on the fly (in a recent demo I added two disks in under 30 seconds), and have your volume protected by Mirroring or Parity. All of this is built into Windows Server 2012, and we have written about it extensively.  Try it for yourself by following my article here.

Data Deduplication is built into the operating system.  Previously a tool that storage-conscious companies would pay thousands of dollars to third-party vendors for, is now a check box away when creating your volume.  Once it is enabled on your volume you can either use the GUI tool or, if you are efficient, Windows PowerShell to either schedule your dedup or run the job immediately on either your local or remote systems.

Software iSCSI Target was exclusively a feature of Microsoft Storage Server until April of 2010 when Microsoft released it as a fully supported free download.  Now integrated in Server 2012, it gives you the ability to create a software SAN device on your server with all of the functionality of most hardware SANs, but at a fraction of the cost.  While I will still not replace my hardware SAN devices in large organizations, it brings that functionality to smaller businesses without the budget for the extra hardware.  Couple this feature with Storage Spaces and Data Dedup and you have yourself a real ballgame!  To get started check out our article here.

MinShell is the new ‘compromise’ step between the full GUI Server installation and the Server Core installation.  It allows you to have a sort of ‘safety net’ of the GUI management tools, without actually having the Windows GUI environment installed.  You will save tons of resources across your virtualized environment because you no longer need the GUI on hundreds of virtual machines, as we wrote about here.

Server Manager was introduced to Windows Server 2003 R2 with all of the ho-hum yawning that it deserved.  Okay, a lot of our tasks were brought into one app, but that was about it.  That is why I was so surprised that the modern Server Manager in Server 2012 blew me away with its true multi-server management, the Dashboard functionality that gives the administrator a birds-eye view of the health of all of his or her systems, and the ability to manage… well, everything from one console.  Install roles and features on your local or remote servers with the same ease.  Manage multiple servers from the same console – add them by simply right-clicking the All Servers context, and then without any more work see that all of the services running on that (or those) remote server(s) are instantly added to your Dashboard.  I recorded a video of some of the great functionality in Server Manager for our blog here.

PowerShell 3.0 is the breakout version of this already incredible scripting environment, with nearly ten times the cmdlets than previously available (out of the box).  Add to that the Integrated Scripting Environment (ISE) and you have a powerful scripting environment that is even easier to learn and use than before!

Active Directory Administration Center is a new all-encompassing tool for Active Directory management.  No longer will admins have to open one of several different consoles depending on what they wanted to do, the ADAC is it… plain and simple!

Active Directory Recycle Bin was introduced in Windows Server 2008 R2, and is now even easier to use to use.  Enable it in the ADAC (remember that once enabled it cannot be disabled).  To lean how to enable it read our article here, and the to use it to restore an object we have another article here.

Windows PowerShell History Viewer records the underlying Windows PowerShell commands when action is taken in the Active Directory Administrative Center so that the admin can copy and reuse the scripts.  This is also a great way for admins to start learning PowerShell!

Cloning and Snapshotting Domain Controllers, along with DCs that are fully aware of virtualization, mean that we no longer need to maintain a physical domain controller in our fully virtualization (or cloud-based) organization.  I can rapidly deploy new domain controllers (either in an existing or new domain), and quickly and easily restore business continuity during disaster recovery.  I can rapidly provision test environments and quickly meet increased capacity needs in branch offices.  Our virtualized domain controllers will detect snapshot restoration and non-authoritatively synchronize the delta of changes for Active Directory and the SYSVOL, making DC virtualization safer.

Fine-Grained Password Policies in Active Directory allows me to have better security for my infrastructure by making it easier for users with no access to sensitive information have more lenient password policies, while enforcing stricter policies for users with more access and for service accounts.  While everyone will still have to have password awareness, this will see a marked decrease in Post-It Note Security Violations.

Dynamic Access Control is a new way of securing your information, whether on file shares, in SharePoint Document Libraries, or even in e-mail.  It works with Rights Management Server using Central Access Policies to verify who is accessing what information from where (what device).  The expression-based access policies determine before decrypting the content that both the user and the device are trusted.  If you have highly sensitive information that should only be accessed on corporately managed devices this is going to be a great new security feature available to you!

DirectAccess was introduced in the 2008 era with a plethora of complex requirements and prerequisites needed to implement.  In 2009 Rodney Buike wrote an article that is a great explanation of DirectAccess on our blog which can be read here.  In Server 2012 it is so much simpler to plan for, deploy, and use.  Anthony Bartolo wrote the article about what it is, what it needs, and what it does recently, and you can read that article here.

…and the list just keeps going and going.  I urge you to download the evaluation software and try it out by clicking on the appropriate link:

Windows Server

System Center 2012

Windows 8

In addition to downloading the software and reading our articles, you could have a chance in winning your lab computer by participating in free Microsoft offered Virtual Academy.  To have a chance to win an HP EliteBook Revolve and two chances to win 400 Microsoft Points enter here.  Complete two TechNet evaluations, and take the selected Microsoft Virtual Academy courses for your chance at a $5,000 grand prize!

If He Can Do It YOU Can Too!

I have been saying for the past couple of years that Microsoft’s Hyper-V is much simpler than vSphere, but I never imagined that I would see this:  Caleb, a 5th grader, shows us how to create a virtual machine, install an OS, and even create a virtual switch.  Not only was I impressed with how well he does it, but his communication skills far exceed those of many adult IT Pros that I have met!  (Not you of course… I mean the other guys…)

http://blogs.technet.com/b/yungchou/archive/2013/03/18/are-you-smarter-than-a-5th-grader-in-creating-hyper-v-virtual-machine-and-installing-windows-server-2012.aspx?wa=wsignin1.0

So the question is if he can do it, why can’t you?  Of course you can, it is that simple!

What not to Learn… Revisited for 2013!

In October, 2011 I posted an article called vPTA: What NOT to take away from my 1-day virtualization training!  It was only partly tongue-in-cheek on the environment that I have been using for several years to demonstrate server virtualization from a pair of laptops.  A few months later Damir Bersinic took that list and made some modifications, and published it on this blog as Things NOT To Take Away from the IT Virtualization Boot CampBecause we spend so much time in our IT Camps demonstrating similar environments, I decided it was a good time to rewrite that article.

Normally when I revisit an article I would simply republish it.  There are two reasons that I decided to rewrite this one from scratch:

  • The improvements in Windows Server 2012, and
  • My more official position at Microsoft Canada

Since writing that original article I have tried to revise my writing style so as to not offend some people… I am trying to be a resource to all IT Professionals in Canada, and to do that I want to eliminate a lot of the sarcasm that my older posts were replete with.  At the same time there are points that I want to reinforce because of the severity of the consequences.

Creating a lab environment equivalent to Microsoft Canada’s IT Camps, with simple modifications:

1. In our IT Camps we provide the attendees with hardware to use for their labs.  Depending on the camp attendees will work in teams on either one or two laptops.  While this is fine for the Windows 8 camps, please remember that in your environment – even in a lab where possible – you should be using actual server hardware.  With virtualization it is so simple to create a segregated lab environment on the same server as your production environment, using virtual switches and VLAN tagging.  In environments where System Center 2012 has already been deployed it is easy enough to provision private clouds for your test/dev environments, but even without that it is a good idea.  The laptops that we use for the IT Camps are great for the one- or two-day camps, but for longer than that you are going to risk running into a plethora of crashes that are easy enough to anticipate.

2. You should always have multiple domain controllers in any environment, production or otherwise.  Depending on who you speak to many professionals will tell you that at least one domain controller in your domain should be on a physical box (as opposed to a virtual machine).  I am still not convinced that this does not fall into the category of ‘Legacy Thinking’ but there is certainly an argument to be made for this.  Whether you are going to do this in physical or virtual, you should never rely on a single domain controller.  Likewise your domain controllers should be dedicated as such, and should not also be file or application servers.

3. I strongly recommend shared storage for your virtualization hosts be implemented on Storage Area Networks (SANs).  SAN devices are a great method of sharing data between clustered nodes in a failover cluster.  In Windows Server 2012 we have included the iSCSI Software Target that was previously an optional download (The Microsoft iSCSI Software Target is now free).  While this is still not a good replacement of physical SANs, it is a fully supported solution for Windows Failover Cluster Services, including for Hyper-V virtual machine environments.  It is even now recognized as an option for System Center 2012 private clouds.  As well the Storage Pools feature in the new Server is a compelling feature to consider.  However there are some caveats to consider:

A. Both iSCSI software targets and Storage Pools rely on virtual storage (VHDX files) for their LUNs and Pools.  While VHDX files are very stable, putting one VHDX file into another VHDX file is a bad idea… at least for long-term testing and especially for production environments.  If you are going to use a software target or Storage Pool (which are both fully supported by Microsoft for production environments) it is strongly recommended that you put them onto physical hardware.

B. While Storage Pools are supported on any available drive architecture (including USB, SATA, etc…) the only architecture that will be supported for clustered environments are iSCSI and SAS (Serial Attached SCSI).  Do not try to build a production (or long-term test environment) cluster on inexpensive USB or SATA drives.

C. In our labs we use a lot of thin-provisioned (dynamically expanding, storage-on-demand) disks.  While these are fully supported, it is not necessarily a best practice.  Especially on drives where you may be storing multiple VHDX files you are simply asking for fragmentation issues.

4. If you are building a lab environment on a single host, you may run into troubles when trying to join your host to the domain.  I am not saying that it will not work – as long as you have properly configured your virtual network it likely will – but there are a couple of things to remember.  Make sure that your virtual domain controller is configured to Always Start rather than Always start if it was running when the service stopped.  As well it is a good idea to configure a static IP address for the host, just in case your virtual DHCP server fails to start properly, or in a timely fashion.

5. Servers are meant to run.  Shutting down your servers on a daily basis has not been a recommended practice for many years, and the way we do things – at the end of the camp we re-image our machines, pack them into a giant case and ship them to the next site – is a really bad idea.  If you are able I strongly recommend leaving your lab servers running at all times.

6. While it is great to be able to demo server technologies, when at all possible you should leave your servers connected (and turned on) in one place.  If you are able to bring your clients to you for demos that is ideal, but it is so easy these days to access servers remotely on even the most basic of Internet connections.  If your company does not have a static IP address I would recommend using a dynamic DNS service (such as dyndns.com) with proper port-forwarding configured in your gateway router to access then remotely.

7. I am asked all the time how many network adapters you need for a proper server environment.  I always answer ‘It depends.’  There are many factors to consider when building your hosts, and in a demo environment there are concessions you can make.  However unless you have absolutely no choice it should be more than one.  For a proper cluster configuration (excluding multi-pathing and redundancy) you should have a production network, a storage network, and a heartbeat network… and that is three just for the bare minimum.  Some of these can share networks and NICs by configuring VLANs, but again, preferably only in lab environments.  Before building your systems consider what you are willing to compromise on, and what is absolutely required.  Then build your architectural plan and determine what hardware is required before making your purchase.

7a. While on the subject of networks, in our demo environment the two laptop-servers are connected to each other by a single RJ-45 cable.  BUY SWITCHES… and the ones that are good enough for you to use at home are usually not good enough for your production environment! Smile

8. When it is at all possible your storage network should be physically segregated from your production network.  When physical segregation is not possible then at least separating the streams by using vLANs is strongly recommended.  The first offers security as well as bandwidth management, the second only security.

9. Your laptop and desktop hardware are not good-enough substitutes for server-grade hardware.  I know we mentioned this before, but I still feel it is important enough to state again.

10. In Windows Server 2008 R2 we were very adamant that snapshots, while handy in labs and testing, were a bad idea for your production environment.  With the improvements to Hyper-V in Windows Server 2012 we can be a little less adamant, but remember that you cannot take a snapshot and forget about it.  When you delete or apply a snapshot it will now merge the VHDX and AVHDX files live… but snapshots can still outgrow your volume so make sure that when you are finished with a snapshot you clean up after yourself.

11. Breaking any of these rules in a production environment is not just a bad idea, it would likely result in an RGE (Resume Generating Event).  In other words, some of these can be serious enough for you to lose your job, lose customers, and possibly even get you sued.  Follow the best practices though and you should be fine!

Converting VHDs to VHDX and other questions…

Many of the articles I write for both The World According to Mitch and the Canadian IT Pro Connection come directly from people I meet through my travels.  They send me questions about technology by e-mail and rather than simply replying to them, if I feel the questions are relevant, I write them up as articles.  So if you meet me at one of my sessions and you ask me a question, do not be surprised if I ask you to e-mail it to me… oftentimes I will need to research the answer, but sometimes it is because I think that it would make for an interesting write-up.

I have known Betty for as long as I have been going to her home town, and while she loves to give me grief I know that she is always attentive and learns from my presentations.  She recently sent me an e-mail with two very good questions on Hyper-V following my IT Camp on Windows Server 2012.

QUESTION 1:

I have several virtual machines that were created on Server 2008R2, and I would like to convert them to VHDX to take advantage of all the new features on Windows 2012. Is this possible?

The process for exporting the virtual machine from Hyper-V on Windows Server 2008 R2 and then importing it as a virtual machine onto a host running Windows Server 2012 is fairly simple: Export, then Import.  However as I am sure you realize this does not convert the disk file format… ViVo in this case stands for VHD in, VHD out.  However the Edit Disk Wizard in the new Hyper-V is your friend here.

  1. Ensure that your virtual machine is powered down (or better yet disconnected).
  2. From the Actions Pane of the Hyper-V Manager click Edit Disk…
  3. On the Before You Begin page click Next.
  4. On the Locate Virtual Hard Disk page navigate to the location of our VHD file (use Browse if you like!).  Click Next.
  5. On the Choose Action page select the radio marked Convert and click Next.
  6. On the Convert Virtual Hard Disk page select the radio marked VHDX and click Next.
  7. On the second Convert Virtual Hard Disk page select the disk format you prefer (Fixed or Dynamically Expanding) and click Next.
  8. On the third Convert Virtual Hard Disk page enter the name and location of your new VHDX file and click Finish.
    Depending on the size of your source disk it may take a few minutes to create the new file; for larger disks you might want to run the Edit Disk Wizard to compact it before proceeding.  However once you are done you will have both the Source and the Destination disks, and all you have to do is edit the settings of your VM and attach the new drive, and you are ready to rock!image
  • Notice that your new file is about 145 MB larger than the original.  That is perfectly normal and nothing to be concerned about.

      PowerShell: I’ve Got The Power!!
      Thanks to folks like Ed Wilson and our very own Sean Kearney it is once again cool to use the command line… or rather, the cmdlet.   Nearly anything that you can do in the GUI can also be done in PowerShell, hence allowing us to create scripts to use at various clients or sites.  If you want to convert your VHD to VHDX in PowerShell here’s how:

    Convert-VHD -Path C:\ClusterStorage\Volume1\VHDsVM-1.vhd -DestinationPath C:\ClusterStorage\Volume1\VHDsVM-1.vhdx

    SNAGHTML6c7c42

    Again, it is important to remember that a) Your hard drive be off-line (or disconnected), and b) that once you have created the new VHDX file you must attach it to the VM before spinning it back up.  As well you will notice the difference in file size.  Nothing to be concerned by.

    (This cmdlet can also be used to convert VHDX files back to VHD files)

    QUESTION 2:

    Do the virtual machines have to be Server 2012 for me to take advantage of the new features of Hyper-V in Windows Server 2012, and especially the new .VHDX file format?

    Of course not.  Remember that the host and the guest have no real conception that the other is there; as long as you can install it on x86 hardware, you can install it in a Hyper-V virtual machine.  With that being said, there is a difference between can and is supported.  Remember that your Windows NT, 2000, DOS 3.3 and OS/2 Warp VMs are not supported by Microsoft… even though they will work just fine Winking smile 

    For Bonus Points:

    What is possible technologically is not always allowed legally.  It is important to make sure that all of the operating systems in your VMs are licensed on that host.  I have seen too many companies perform P2V migrations of physical servers that had OEM licenses attached to them, only to discover during an audit that they were out of compliance.  Make sure you have verified all of your licensing so that nobody will get their nose out of joint Smile

  • Failover Clustering: Let’s spread the Hyper-V love across hosts!

    This article was originally published on the Canadian IT Pro Connection.

    Some veteran IT Pros hear the term ‘Microsoft Clustering’ and their hearts start racing.  That’s because once upon a time Microsoft Cluster Services was very difficult and complicated.  In Windows Server 2008 it became much easier, and in Windows Server 2012 it is now available in all editions of the product, including Windows Server Standard.  Owing to these two factors you are now seeing all sorts of organizations using Failover Clustering that would previously have shied away from it.

    The service that we are seeing clustered most frequently in smaller organizations is Hyper-V virtual machines.  That is because virtualization is another feature that is really taking off, and the low cost of virtualizing using Hyper-V makes it very attractive to these organizations.

    In this article I am going to take you through the process of creating a failover cluster from two virtualization hosts that are connected to a single SAN (storage area network) device.  However in Windows Server 2012 these are far from the limits.  You can actually cluster up to sixty-four servers together in a single cluster.  Once they are joined to the cluster we call them cluster nodes.

    Failover Clustering in Windows Server 2012 allows us to create highly available virtual machines using a method called Active-Passive clustering.  That means that your virtual machine is active on one cluster node, and the other nodes are only involved when the active node becomes unresponsive, or if a tool that is used to dynamically balance the workloads (such as System Center 2012 with Performance and Resource Optimization (PRO) Tips) initiates a migration.

    In addition to using SAN disks for your shared storage, Windows Server 2012 also allows you to use Storage Pools.  I explained Storage Pools and showed you how to create them in my article Storage Pools: Dive Right In! I also explained how to create a virtual SAN using Windows Server 2012 in my article iSCSI Storage in Windows Server 2012.  For the sake of this article, we will use the simple SAN target that we created together in that article.

    Step 1: Enabling Failover Clustering

    Failover Clustering is a feature on Windows Server 2012.  In order to enable it we will use the Add Roles and Features wizard.

    1. From Server Manager click Manage, and then select Add Roles and Features.

    2. On the Before you begin page click Next>

    3. On the Select installation type page select Role-based or feature-based installation and click Next>

    4. On the Select destination server page select the server onto which you will install the role, and click Next>

    5. On the Select server roles page click Next>

    6. On the Select features page select the checkbox Failover Clustering.  A pop-up will appear asking you to confirm that you want to install the MMC console and management tools for Failover Clustering.  Click Add Features.  Click Next>

    7. On the Confirm installation selections page click Install.

    NOTE: You could also add the Failover Clustering feature to your server using PowerShell.  The script would be:

    Install-WindowsFeature -Name Failover-Clustering –IncludeManagementTools

    If you want to install it to a remote server, you would use:

    Install-WindowsFeature -Name Failover-Clustering –IncludeManagementTools –ComputerName <servername>

    That is all that we have to do to enable Failover Clustering in our hosts.  Remember though, it does have to be done on each server that will be a member of our cluster.

    Step 2: Creating a Failover Cluster

    Now that Failover Clustering has been enabled on the servers that we want to join to the cluster, we have to actually create the cluster.  This step is easier than it ever was, although you should take care to follow the recommended guidelines.  Always run the Validation Tests (all of them!), and allow Failover Cluster Manager to determine the best cluster configuration (Node Majority, Node and Disk Majority, etc…)

    NOTE: The following steps have to be performed only once – not on each cluster node.

    1. From Server Manager click Tools and select Failover Cluster Manager from the drop-down list.

    2. In the details pane under Management click Create Cluster…

    3. On the Before you begin page click Next>

    4. On the Select Servers page enter the name of each server that you will add to the cluster and click Add.  When all of your servers are listed click Next>

    5. On the Validation Warning page ensure the Yes. When I click Next, run configuration validation tests, and then return to the process of creating the cluster radio is selected, then click Next>

    6. On the Before You Begin page click Next>

    7. On the Testing Options page ensure the Run all tests (recommended) radio is selected and then click Next>

    8. On the Confirmation page click Next> to begin the validation process.

    9. Once the validation process is complete you are prompted to name your cluster and assign an IP address.  Do so now, making sure that your IP address is in the same subnet as your nodes.

    NOTE: If you are not prompted to provide an IP address it is likely that your nodes have their IP Addresses assigned by DHCP.

    10. On the Confirmation page make sure the checkbox Add all eligible storage is selected and click Next>.  The cluster will now be created.

    11. Click on Finish.  In a few seconds your new cluster will appear in the Navigation Pane.

    Step 3: Configuring your Failover Cluster

    Now that your failover cluster has been created there are a couple of things we are going to verify.  The first is in the main cluster screen.  Near the top it should say the type of cluster you have.

    If you created your cluster with an even number of nodes (and at least two shared drives) then the type should be a node and disk majority.  In a Microsoft cluster health is determined when a majority (50% +1) of votes are counted.  Every node has a vote.  This means that if you have an even number of nodes (say 10) and half of them (5) go offline then your cluster goes down.  If you have ten nodes you would have long since taken action, but imagine you have two nodes and one of them goes down… that means your entire cluster would go down.  So Failover Clustering uses node and disk majority – it takes the smallest drive shared by all nodes (I usually create a 1GB LUN) and configures it as the Quorum drive – it gives it a vote… so if one of the nodes in your two node cluster goes down, you still have a majority of votes, and your cluster stays on-line.

    The next thing that you want to check is your nodes.  Expand the Nodes tree in the navigation pane and make sure that all of your nodes are up.

    Once this is done you should check your storage.  Expand the Storage tree in the navigation pane, and then expand Disks.  If you followed my articles you should have two disks – one large one (mine is 140GB) and a small one (mine is 1GB).  The smaller disk should be marked as assigned to Disk Witness in Quorum, and the larger disk will be assigned to Available Storage.

    Cluster Shared Volumes was introduced in Windows Server 2008R2.  It creates a contiguous namespace for your SAN LUNs on all of the nodes in your cluster.  In other words, rather than having to ensure that all of your LUNs have the same drive letter on each node, CSVs create a link – a portal if you will – on your C: under the directory C:\ClusterStorage.  Each LUN would have its own subdirectory – C:\ClusterStorage\Volume1, C:\ClusterStorage\Volume2, and so on.  However using CSVs means that you are no longer limited to a single VM per LUN, so you will likely need fewer.

    CSVs are enabled by default, and all you have to do is right-click on any drive assigned to Available Storage, and click Add to Cluster Shared Volumes.  It will only take a second to work.

    NOTE: While CSVs create directories on your C drive that is completely navigable, it is never a good idea to use it for anything other than Hyper-V.  No other use is supported.

    Step 4: Creating a Highly Available Virtual Machine (HAVM)

    Virtual machines are no different to Failover Cluster Manager than any other clustered role.  As such, that is where we create them!

    1. In the navigation pane of Failover Cluster Manager expand your cluster and click Roles.

    2. In the Actions Pane click Virtual Machines… and click New Virtual Machine.

    3. In the New Virtual Machine screen select the node on which you want to create the new VM and click OK.

    The New Virtual Machine Wizard runs just like it would in Hyper-V Manager.  The only thing you would do differently here is change the file locations for your VM and VHDX files.  In the appropriate places ensure they are stored under C:\ClusterStorage\Volume1.

    At this point your highly available virtual machine has been created, and can be failed over without delay!

    Step 5: Making an existing virtual machine highly available

    In all likelihood you are not starting from the ground up, and you probably have pre-existing virtual machines that you would like to add to the cluster.  No problem… However before you go, you need to put the VM’s storage onto shared storage.  Because Windows Server 2012 includes Live Storage Migration it is very easy to do:

    1. In Hyper-V Manager right-click the virtual machine that you would like to make highly available and click Move

    2. In the Choose Move Type screen select the radio Move the virtual machine’s storage and click Next>

    3. In the Choose Options for Moving Storage screen select the radio marked Move all of the virtual machine’s data to a single location and click Next>

    4. In the Choose a new location for virtual machine type C:\ClusterStorage\Volume1 into the field.  Alternately you could click Browse… and navigate to the shared file location.  Then click Next>

    5. On the Completing Move Wizard page verify your selections and click Finish.

    Remember that moving a running VM’s storage can take a long time.  The VHD or VHDX file could theoretically be huge… depending on the size you selected.  Be patient, it will just take a few minutes.  Once it is done you can continue with the following steps.

    6. In Failover Cluster Manager navigate to the Roles tab.

    7. In the Actions Pane click Configure Role…

    8. In the Select Role screen select Virtual Machine from the list and click Next>.  This step can take a few minutes… be patient!

    9. In the Select Virtual Machine screen select the virtual machine that you want to make highly available and click Next>

    NOTE: A great improvement in Windows Server 2012 is the ability to make a VM highly available regardless of its state.  In previous versions you needed to shut down the VM to do this… no more!

    10. On the Confirmation screen click Next>

    …That’s it! Your VM is now highly available.  You can navigate to Nodes and see which server it is running on.  You can also right-click on it, click Move, select Live Migration, and click Select Node.  Select the node you want to move it to, and you will see it move before your very eyes… without any downtime.

    What? There’s a Video??

    Yes, We wanted you to read through all of this, but we also wrote it as a reference guide that you can refer to when you try to build it yourself.  However to make your life slightly easier, we also created a video for you and posted it online.  Check it out!

    Creating and configuring Failover Clustering for Hyper-V in Windows Server 2012

    For Extra Credit!

    Now that you have added your virtualization hosts as nodes in a cluster, you will probably be creating more of your VMs on Cluster Shared Volumes than not.  In the Hyper-V Settings you can change the default file locations for both your VMs and your VHDX files to C:\ClusterStorage\Volume1.  This will prevent your having to enter them each time.

    As well, the best way to create your VMs will be in the Failover Cluster Manager and not in Hyper-V Manager.  FCM creates your VMs as HAVMs automatically, without your having to perform those extra steps.

    Conclusion

    Over the last few weeks we have demonstrated how to Create a Storage Pool, perform a Shared Nothing Live Migration, Create an iSCSI Software Target in Windows Server 2012, and finally how to create and configure Failover Clusters in Windows Server 2012.  Now that you have all of this knowledge at your fingertips (Or at least the links to remind you of it!) you should be prepared to build your virtualization environment like a pro.  Before you forget what we taught you, go ahead and do it.  Try it out, make mistakes, and figure out what went wrong so that you can fix it.  In due time you will be an expert in all of these topics, and will wonder how you ever lived without them.  Good luck, and let us know how it goes for you!

    iSCSI Storage in Windows Server 2012

    Storage is one of the most important aspects of our IT infrastructure.  In this day and age of virtualization it is even more important because our entire server infrastructure may be stored on a limited set of devices.

    Of course that is a lot easier said than done, especially for smaller companies with limited IT budgets.  Even the simplest SAN devices can be expensive, and the temptation to save our virtual machines on direct attached storage often wins over the ability to live-migrate virtual machines between hosts.

    In April, 2011 Microsoft released the iSCSI Software Target 3.3 as a free (and supported) download, and suddenly iSCSI SANs were available to the masses.  At the time Pierre and I wrote a series of articles in this space as guest bloggers (The Microsoft iSCSI Software Target is now free, All for SAN and SAN for All!, Creating a SAN using Microsoft iSCSI Software Target 3.3, Creating HA VMs for Hyper-V with Failover Clustering using FREE Microsoft iSCSI Target 3.3).

    While Hyper-V has made virtualization available to the masses, I feel the iSCSI Software Target has been one of the tools that has best enabled me to teach true datacentre virtualization to the masses, because after all without Live Migration and Failover Clustering virtualization is really limited to the capacity of a single box.

    In Windows Server 2012 Microsoft has taken us one step further: The ISCSI Software Target is actually included in the box.  Enabling and creating a target is as simple as following the steps in this article.

    Environment

    As with most of my articles, the screen captures will be from servers in my production environment.  As with any technology, if you are going to play with this one I strongly suggest you do it in a lab environment before bringing it into your production network.

    Target Server:

    I have created a virtual machine called SWMITarget on one of my virtualization hosts.  The resource requirements are pretty simple… as it is not performing any other function, it seldom needs more than 512 MB of RAM; using dynamic memory I give it that as a minimum, but allow it up to 2048 (2GB) for a maximum… in case it really needs it.  I should mention that in a production environment I would never recommend virtualizing your SAN… try to pick up an inexpensive server with a bunch of good drives in it.

    While I do not recommend this in most companies, For this environment I am using the same network as my production environment.  In a production environment I would recommend a separate network for the SAN environment for two reasons: security and bandwidth.  As my network is a closed loop with 10GigE switches neither is an issue.

    The storage for the target is separated into two: a 40GB system disk attached to an IDE Controller for the Windows Partition, and a 150GB disk attached to a SCSI controller for the LUN (Logical Unit Number).  In reality I will have a Storage Pool of three 150GB disks for my production environment.  To learn about Storage Pools read my recent article Storage Pools: Dive right in!

    Host Servers:

    Because the iSCSI security model will only expose its LUNs to a server (Initiator) that is pre-specified, you should know the IP Addresses of the servers that will be connecting to the shared storage before building the iSCSI Target.  I will be connecting two hosts to this target, and have checked their addresses: 192.168.0.9 and 192.168.0.10.  This could also be done by DNS Name or IQN (iSCSI Qualified Name), but IP is the easiest.

    Preparing the Target Server:

    imageAlthough the iSCSI Software Target is included in the box, it is not installed by default.  It is a Role that has to be enabled:

    1. From the Server Manager click Manage, and select Add Roles and Features.  This will launch the Add Roles and Features Wizard.
    2. On the Before you begin page read the instructions and click Next>
    3. On the Select installation type screen ensure that the Role-based or feature-based installation radio is selected and click Next>
    4. On the Select destination server screen ensure that the Select a server from the server pool radio is selected, and under Server Pool select the server onto which you want to install the role, then click Next>
    5. On the Select server roles screen under Roles expand File and iSCSI Services, select File Server and iSCSI Target Software, then click Next>
    6. On the Select features screen click Next>
    7. On the Confirm installation selections page review the options and click Install.  Optionally, you could also select the Restart the destination server automatically if required box, but if you are only installing these roles then a reboot should not be necessary.

    Now that the role is installed, you should now see the iSCSI option under the File and Storage Services tab.

    Creating the iSCSI LUN

    Before you actually create the iSCSI Target you first have to create the iSCSI virtual disk, and from within the New iSCSI Virtual Disk Wizard you will create the target.

    NOTE: If you will be using this target for a Failover Cluster you may want to create a second virtual disk that is 1GB and add it to the same iSCSI Target.  This disk will be used as the disk witness (or Quorum Disk).

    • From the Server Manager console navigate to the File and Storage Services tab.
    • In File and Storage Services click on iSCSI in the navigation pane.
    • In the details pane under iSCSI VIRTUAL DISKS click To create an iSCSI virtual disk, start the New iSCSI Virtual Disk Wizard.
    • In the New iSCSI Virtual Disk Wizard ensure that your server is selected under Server, and the disk where you want to store the Target disk is selected under Select by volume.  Click Next>
    • imageIn the Specify iSCSI virtual disk name screen type a name for the disk and click Next>
    • In the Specify iSCSI virtual disk size screen enter the size for the target disk and click Next>
    • In the Assign iSCSI target screen ensure the New iSCSI target radio is selected and click Next>
    • In the Specify target name screen type a name for your target.  Remember that this target name will be integrated into the IQN which is replete with dashes… I strongly recommend avoiding them here!
    • In the Specify access servers screen click Add... to open the Add initiator ID window.
      • Ensure the Enter a value for the selected type radio is selected.
      • In the Type: dropdown select IP Address
      • In the Value box type the IP Address of the first host that you want to connect, then click OK.

      NOTE: You will have to run this process separately for each server that you plan to add.

    • In the Specify access servers screen click Add... to open the Add initiator ID window.
      • Ensure the Enter a value for the selected type radio is selected.
      • In the Type: dropdown select IP Address
      • In the Value box type the IP Address of the first host that you want to connect, then click OK.
    • Before going forward make sure that all of the hosts that you want to access this target are listed in the Specify access servers list, then click Next>image
    • In the Enable Authentication screen click Next>.  While CHAP and reverse CHAP are options, I will not go into them here.  Because iSCSI is an open protocol, CHAP (Control Handshake Authentication Protocol) is the only authentication method available for iSCSI SANs, and it has not changed or advanced in over a dozen years.  As such it is not considered very secure.
    • In the Confirm selections screen ensure that your selections are correct, and click Create.Once the wizard is complete you should see a results screen like this.  You can close it… your target is done!

      image

      Accessing the Target:

      The iSCSI loop consists of two distinct parts – the Target, which is the device being accessed, and the Initiator, which is the server (or client) accessing it.  Every Microsoft OS that you might use in a business has the iSCSI Initiator software included… it is simply a matter of enabling it, and once it is enabled it will start automatically every time your system reboots.

      NOTE: The following steps must be performed on each server that will be connecting to the iSCSI Target.

      To enable the iSCSI Initiator, simply search for iSCSI Initiator and run it.  You will get a dialog box that says:

      The Microsoft iSCSI service is not running. The service is required to be started for iSCSI to function correctly. To start the service now and have the service start automatically each time the computer restarts, click the Yes button.

      Click the Yes button.  The iSCSI Initiator Properties box will come up.  To connect to your target:

    • In the Target box (in the Targets tab) enter the IP address of your Target Server, and click Quick Connect…image

      If your initiator connects successfully to the target it should take only a second or two for the Quick Connect window to appear with the successful acknowledgement (see screen capture).  If it takes longer than more likely than not something went wrong.  Make sure that the IP address of the Target is right, and if it is then go back into the Target and confirm that you correctly entered the IP address of the Initiators.

    • Click Done
    • In the iSCSI Initiator Properties box navigate to the Volumes and Devices tab and click Auto Configure.  You should get entries for your LUNs that look like this:image

      There will be one entry for each disk that you connected to the iSCSI Target.

    • Click OK.NOTE: The following steps must be performed on only one server that will be connecting to the iSCSI Target.
      • Open the Disk Management console (right-click in the bottom left corner of the screen and click Disk Management).
      • There should be disks that are offline and unallocated – if you created two then there will be two, and so forth.  Right-click on the disks and bring them both on-line.
      • Right-click on one of the disks and select Initialize Disk.  All of the uninitialized disks should appear.  Ensure they are all selected and click OK.
      • Right-click on each disk and create a simple volume, and format them.

      If you were to return to the iSCSI Initiator Properties now, select the Volumes and Devices tab and click Auto Configure again, you would get entries that look like this:

      image

      However this step is unnecessary.

      You’re Done!

      Okay, you aren’t quite done, but you have created your iSCSI Target, and connected your hosts to it.  In my next article I will show you how to enable and configure Failover Clustering, how to make your existing virtual machines highly available, and how to create new Highly Available Virtual Machines.

    Microsoft’s 2012 Products: Why can’t they all just work together?

    I have heard a lot of comments, groans, and snide remarks about all of the 2012 products not working together – specifically Windows Server 2012, System Center 2012, and SQL Server 2012.  While I share your pain, it is important to know a few things.

    Each of these products is developed by different product teams, each working on very strict NDAs and very strict deadlines… none of which are the same.  SQL Server released first, followed by System Center 2012, and finally Windows Server 2012.  These were not in quick succession you understand… they were over a course of seven or eight months.

    Imagine telling the product team for System Center: ‘The new product that you are releasing in March… make sure that it is fully compatible with a product that will be released in September, which the product team cannot properly share with you until July, for which features and security have not been completely decided.’

    That scenario does not seem realistic to me.  However let’s try something else:

    ‘Hey guys, the product that you are releasing in March… we would like for it to be fully compatible with another product that another team will be releasing in September… Once that product is released, we are giving you 90 days to release a service pack that will make the two products fully compatible.’

    I think the second scenario was a lot more reasonable, and while there were a few snags along the way (the RTM of the service pack came within 105 days, not 90 days of the RTM of Windows Server 2012) I think they did a great job.

    As for SQL Server, some of its components do require a feature (NetFx3) that the Windows Server team did not include in the final install…(See article: Installing NetFx3 on Windows Server 2012) it is a simple workaround, and one that is documented quite well in SQL circles (in which I do not travel much).  However as far as stumbling blocks go, this is a fairly minor one, with a very easy solution.

    Would it be too much to expect that all teams at Microsoft were on the same page?  Actually knowing (or at least suspecting) how many people are involved, I think it would be.  Each one of these teams is larger than many companies.  So if you think of each of these teams as a separate company, if you were to purchase each from the individual companies you would be thrilled that these were the most serious stumbling blocks out there.  The reason we complain about them is because Microsoft is actually one company.

    Do I wish things were easier for us as IT Pros? Not at all.  I remember what things were like five and fifteen years ago, and I expect that we are aeons ahead of where we were.  In fact, if things got a whole lot easier, some of us would be out of a job Smile

    Of course I do not speak for Microsoft on this, but I do appreciate the reasons behind the issues.  Hopefully now that 2012 is behind us, all of the products labeled 2012 will work together (they do!) and we can spend the next few years working with these tools in harmony!

    Installing NetFx3 on Windows Server 2012

    image

    Okay… I am installing SQL Server 2012 on a Windows Server 2012 box, there shouldn’t be any problems.  Everything is proceeding normally until I get this message:

    Error while enabling Windows feature : NetFx3, Error Code : –2146498298 , Please try enabling Windows Feature : NetFx3 from Windows management tools and then run setup again.

    No problem… I know how to install Windows Features; I start the Add roles and Features Wizard and go looking for NetFx3… it’s not there.

    Problem.

    It turns out that Windows Server 2012 does not include NetFx3 when it is installing.  It doesn’t mean that it is gone, but it does have to be installed separately.  Here’s what you do:

    1) Insert your Windows Server 2012 media.  As I was installing SQL Server in a Hyper-V VM I ejected the SQL media and attached my Windows Server 2012 ISO.  I then checked to see what drive letter it was (D:).

    2) I opened a Command Prompt with administrative credentials.  From the Start Screen I typed CMD but instead of clicking on it or pressing ENTER I right-clicked, and at the bottom clicked on Run As Administrator.

    3) From the Command Prompt I typed the following command:

    dism /online /enable-feature /featurename:netfx3 /all /source:d:\sources\sxs

    image

    The Deployment Image Servicing and Management tool is one of the easiest ways to install features in Windows when the GUI fails you. 

    Note: Unfortunately, if you encounter this error you will have to restart your installation of SQL Server.  That doesn’t mean you should cancel it out at this point… what I did was I left the error message on the screen while I resolved the NetFx3 issue, and then let it resume.  The SQL Server installation succeeded, with several failures.  I then went back and re-installed SQL on top of the old, with the features that I needed.  It worked just fine for me, and it should for you.

    A Quick Tip for Hyper-V Users: Product Keys

    I keep telling people that the best way to activate your servers and desktops is to have a Key Management Server (KMS) in your environment.  However not everyone has volume license keys, and when an IT Pro (or Dev) builds a lot of lab environments using their TechNet, MSDN, or MAPS licenses that is not an option.

    If you hate typing and retyping product keys, here’s a trick that will make your life a little easier:

    1) Navigate to the Subscriber Downloads page on your TechNet Plus, MSDN, or other site and find the operating system that you are looking for, then click Product Keys next to the desired product.

    image

    2) Once you have the key available (you may have to click Get a Key first) click on the clipboard icon next to that key. (you may have to allow Internet Explorer to access your clipboard).

    3) Now bring up the Hyper-V Virtual Machine Connection for your virtual machine and begin installing the OS.  When you get to the screen where you would have to type in the product key, select the Clipboard option in the menu and click Type clipboard text.

    image

    You should see the product key being typed into the appropriate location.

    image

    I use this technique whenever I have lab environments to build, but it would work just as well for copying any text  from your desktop (or server) into your Hyper-V virtual machine.  It is simple and effective… just like Hyper-V!

    Getting Started With Hyper-V in Server 2012 and Windows 8

    You all know by now that I am a huge Hyper-V fan… I have been using it since 2008, but with the latest release I am unabashedly loving Microsoft’s Layer 1 hypervisor.  The fact that it has been included in Windows 8  – as in, no different from the virtualization platform I use in my servers – is just the icing on the cake.

    It is true that almost any IT Pro would be able to install and use Hyper-V on either the server or client platform without much guidance.  However when you do start out – either with Hyper-V in general, or on a new system – there are a few things that you should know before you go.  Here are some of my tips, in no particular order of importance.

    1) Change the default file locations!

    The default file locations for virtual hard disks and virtual machines are a bit obscure.  I like to change them right out of the gate.  Depending on which drive I want to store them on (in Windows 8 it is usually the C drive, while on proper servers it will usually not be) I will store them both right off the root… x:\VHDs and x:\VMs.  That way I do not have to navigate to the defaults whenever I want to copy a file.  I find x:\VHDs much easier than c:\Users\Public\Documents\Hyper-V\Virtual Hard Disks and c:\ProgramData\Microsoft\Windows\Hyper-V.

    If I am going to use Failover Clustering with Cluster Shared Volumes the defaults will be different, but for standalone servers these defaults suit me fine.

    STEPS:

    1. In Hyper-V Manager click on Hyper-V Settings… in the Actions Pane.
    2. Under the Server context, click on Virtual Hard Disks and change the default location.  You will have to create the directory before going ahead.
    3. Still under the Server context, click on Virtual Machines and change the default location.  Again, you will have to create the directory first.

    It’s as easy as that.  Of course, VMs that are already there will not be moved, but going forward all VMs will be placed in the proper directory.

    2) Create your Virtual Switch!

    When you start creating virtual machines there will be nowhere for them to go and nobody for them to talk to… that is, unless you create a virtual switch (previously called virtual network) to connect them to.  Depending on your server and your environment this might be simple or complex, and may require more planning.  However the long and the short of it is you have to make three decisions when creating a virtual switch:

    • Is the network going to be External (can communicate beyond the physical host), Internal (can only communicate with other VMs on the same host, plus with the host), or Private (can only communicate with other VMs on the same host)?
    • If External, what physical NIC (uplink) will it be bound to?
    • Can the Management OS (on the host) use the same NIC?

    STEPS:

    1. In the Action Pane of Hyper-V Manager click Virtual Switch Manager…
    2. In the navigation pane click New virtual switch
    3. In the right screen select External, Internal, or Private and click Create Virtual Switch
    4. In the Virtual Switch Properties window delete New Virtual Switch and name the switch something that you will understand (i.e.: CorpNet).
    5. Click OK to close the Virtual Switch Manager.

    Again, this is all there is to it.  Plain and easy, no fuss, no muss.

    3) Configure Dynamic Memory

    When you create a virtual machine there are a few defaults that Hyper-V thinks is a good idea… which I don’t.  The main one that comes to mind is the Dynamic Memory option (per VM).  When you configure Dynamic Memory the defaults are going to be:

    Startup RAM: 512 MB

    Minimum RAM: 512 MB

    Maximum RAM: 1048576 MB

    Ok, for a lot of our virtual machines 512MB may be a fine minimum… but unless you are driving a BAWL (Big @$$ Work Load) server on the VM you will nearly never need a terabyte of RAM.  Granted it is nice that we have that ability, it is not going to be the norm.  On the other hand, not setting a realistic maximum would mean that if your VM were to place a huge memory demand – say, because of an unchecked memory leak or a compromised server, or even something as simple as an Exchange Server grabbing as much physical (ahem… virtual) RAM as it can – then this would necessarily be at the expense of contention resources, which would no longer be available to other virtual machines on the same host.

    My recommended best practice is to pick minimums and maximums that are reasonable to you for each server (and those will be different from VM to VM, depending on the load expectations).  You will be able to tweak these up or down as needed, but the point is you will have reasonable limits.  For many of my servers I set limits such as these:

    Startup RAM: 512 MB

    Minimum RAM: 512 MB

    Maximum RAM: 4096 MB

    These settings allow the VM to consume up to 4 GB of RAM when needed and available, but no more than that.  If I discover the VM workload needs more then I will tweak it up incrementally.  I am not letting resources go to waste, and I am making sure that my VMs work within their means – i.e.: as efficiently as they can.

    STEPS:

    1. imageWithin Hyper-V Manager click on the VM in question and then in the Action Pane (VM Name) click Settings…
    2. In the Navigation Pane click Memory
    3. In the Memory window change the Minimum and Maximum RAM as needed.
    4. Click OK.

    4) …and Hard Disks!

    By default the virtual hard disks that are created for us in the New Virtual Machine Wizard will be 127 GB.  But do they really need to be that big?  Actually, in a lot of cases they do.  In many cases they should be bigger.  Sometimes they should be smaller.  If you are creating your disks this way then you should right-size them in the wizard.

    With that being said, the one question that the wizard does not ask you is ‘what type of disk would you like to create?’  In Server 2012 there are actually three questions that you should be asked that are only asked when creating your disks using the New Virtual Hard Disk Wizard:

    a) Would you like to create a VHD file (with backward-compatibility, and limited to 2 TB in size) or a VHDX file (which adds resilience to consistency issues that might occur from power failures, and are limited to 64 TB in size but offer no backward compatibility)

    b) Would you like the disk to be Fixed size (pre-provisioned storage), Dynamically expanding (storage on demand), or Differencing disk (associated with a parent-child relationship with another disk)?

    c) Would you like to create the new VHD(X) file based on the contents of an attached physical drive?

    The solution is to pre-create your VHD(X) files to spec, and then point to them from the New Virtual Machine Wizard.  While dynamically expanding disks are fine for labs and offer greater portability, I never recommend them in a production environment.  Also if you think you might need to port your VMs back to Server 2008 (or Windows 7) then VHD will be required.

    STEPS:

      1. From the Hyper-V Manager console in the Actions Pane click New > Hard Disk…
      2. Go through the wizard and select the options you choose.
      3. From the New Virtual Machine Wizard click the radio button Use an existing virtual hard disk and point to the right file.
      4. Click Finish.

    image

    Alternately, you could select the radio Attach a virtual hard disk later and create your VMs, then create your VHD(X) files, and then attach them.  It seems like more work to me though…

    5) …and CPUs!

    There are a few new settings in the Processor tab of Hyper-V VMs than there used to be.  Not only can you set the number of virtual processors (to the lesser of either a maximum of 64, or the number of physical cores in your computer), but you can also set the VM reserve, the percent of total system resources, the VM limit, and the relative weight.  These are all set in the main screen of the Processor Settings page.

    imageWhat a lot of people do not realize is that there are two subsections to the Processor tab: Compatibility and NUMA.  In order to access these you need to expand the + next to Processor in the navigation pane.

    NUMA stands for Non-Uniform Memory Architecture, and essentially means that a single VM can use memory that is assigned to different physical CPUs.

    Compatibility in this context refers to CPU families, and is a very handy option indeed.  In virtualization there is no way to live-migrate a VM from a host running on AMD CPUs to a host running on Intel CPUs.  This is not a limitation of Hyper-V, rather of the architecture of CPUs, and is identical in VMware.  However CPU family is not the only limiting factor to allow live migrations; CPU properties are a factor too, and because of advancements in the technology it would generally not be possible to live migrate a VM from a host with an older CPU to a host with a newer CPU.

    A few years ago VMware saw this as an issue, and along with Intel developed a technology called EVC, or Enhanced vMotion Compatibility.  What EVC does is it masks the newer chipset features (generally multimedia signatures and things like that) from the VM, so that all of a sudden you can migrate between older and newer hosts (say, an Intel i7 to an Intel Core Duo).  In VMware this is assigned at the Cluster level.

    Of course the technology is simple enough, but the intellectual property is not.  EVC has the word vMotion (a trademark) in the title.  Microsoft cannot use the term vMotion.  As such their compatibility mechanism (which works the same way) is called Migrate to a physical computer with a different processor version (MTPCWDPV).  The name is not nearly as sexy as EVC, but they compensated by assigning it to the VM instead of the cluster.  It is a simple checkbox that you check (or uncheck) under the Compatibility Configuration screen.

    If you are going to be using Live Migration between hosts with potentially incompatible CPU then follow these steps:

    STEPS:

        1. imageWithin Hyper-V Manager click on the VM in question and then in the Action Pane (VM Name) click Settings…
        2. In the Navigation Pane click Processor, then click the + next to Processor to expand the tree.
        3. Click on Compatibility
        4. Click the checkbox Migrate to a physical computer with a different processor version.
        5. Click OK.

    Following these simple best practices will not make you an expert in Hyper-V by any means, but it is a good start… what they will allow you to do is get started comfortably and play with the technology without hitting some of the more common stumbling blocks that beginners seem to run into.  As your needs grow you will be comfortable enough with the technology to try new things, explore new possibilities.  Before long you will be as virtualization expert, ready to tackle concepts such as Shared Nothing Live Migration, Failover Clustering, Cluster Shared Volumes, and much much more.

    In the meantime dip your toes into the virtualization waters… it’s warm and inviting, the hazards are not too dangerous, and the rewards are incredible.  In no time you will be ready to get certified… but even if that is not your goal you have already taken the first steps to becoming a virtual wiz!

    Getting Certified: Things have really changed!

    This article was originally published to The Canadian IT Pro Connection.Boy has it been an exciting year… Microsoft’s busiest release year ever!  On the IT Pro side we have System Center 2012 (a single product now, but truly seven distinct products for managing your environment!), Windows Server 2012, Windows 8… we have Windows Azure (which for the first time is really beginning to show true relevance to the IT Pro and not just the devs), and of course the new Office (both on-prem with Office 2013, and in the cloud with Office 365).  There is of course Windows Phone 8, Windows Intune, and the list goes on.

    With all of these new versions out many IT Pros will be looking to update their certifications to remain current, while many more will be looking for their first certs.  For the first time in six years Microsoft Learning has completely changed the way you will be looking at certifications going forward.  If you are like me (and so many others) and do want to get certified in the latest and greatest, then you will need to know what is out there, and how certifications have changed with the newest product cycles.

    Solutions-based Certifications

    In the last few years Microsoft Learning focused on what they referred to as task-based certifications (MCTS) and job-based certifications (MCITP).  However IT Pros started to see more and more components in learning and exams that were not actually in the product – so for example an exam on Windows Server might have included a question on the Security Compliance Manager (SCM) and System Center.  Although it made sense to the SMEs writing the questions, the unprepared found themselves facing questions that they couldn’t answer, and a resounding chorus of ‘we didn’t realize we would be tested on that!’ was to be heard across the blogosphere.

    This year the new certifications have been revamped to be solutions-based.  That means you are not focusing on a role or a product, but rather on the solution as a whole, which will very often include technologies not included in the product, but that are complimentary to it.  Microsoft’s Solution Accelerators are a good example of this.  The Solution Accelerators are a series of free tools available from Microsoft and include the Security Compliance Manager, Microsoft Deployment Toolkit, the Microsoft Virtual Machine Conversion toolkit, and others that are free downloads and may not be required knowledge to everyone, but every IT Pro should know about them because they really do come in handy.

    Additionally you are going to see a strong interdependence between Windows Server 2012, System Center 2012, and Windows 8.  After all very few companies have only one of these, and in fact in any organization of a certain size or larger it would be rare to not find all three.

    Of course it is also likely you are going to see questions that ask about previous versions of all of these technologies. ‘Your company has 25 servers running Windows Server 2003 R2 Enterprise Edition and 5000 desktops running Windows Vista Business Edition…’ sorts of questions will not be uncommon.  This will make some of us scour our archived memory banks for the differences between editions, and may seem unfair to IT Pros who are new to the industry.  Remember that every certification exam and course lists recommended prerequisites for candidates, and 2-3 years of experience is not an uncommon one.  To that I remind you that you do not need a perfect score to pass the exams… do your best!

    What was old is new again

    In 2005 Microsoft announced the retirement of the MCSE and MCSA certifications, to be replaced by the MCTS/MCITP certs.  During a recent keynote delivered by a guest speaker from Redmond I heard him say that this was actually Canada’s fault, and unfortunately he is partly right.  The Quebec Order of Engineers won their lawsuit regarding the usage of the word engineer in the cert.  While it may have made their lives better, it complicated the certification landscape for a lot of IT Pros and hiring managers who never quite got used to the new model.

    SolAssoc_WinServ2012_Blk SolExp_PvtCloud_Blk

    In April, 2012 Microsoft Learning announced that things were changing again… we would again be able to earn our MCSA and MCSE certs, but they would now stand for Microsoft Certified Solutions Associate and Microsoft Certified Solutions Expert.  In fact they thought it was a good enough idea that although they were intended as next-generation certs, they would be ported backward one generation… if you were/are an MCITP: Server Administrator or MCITP: Enterprise Administrator on Windows Server 2008 you immediately became an MCSA: Windows Server 2008.  You were also immediately only two exams away from earning your MCSE: Private Cloud certification.

    associate-blueMicrosoft Learning bills the MCSA certification as ‘the foundation for your professional career.’  I agree with this because it is the basic cert on the operating system, and from there you can jump into the next stage (there are several MCSE programs available, all of which require the base MCSA to achieve).

    Of course now that Windows Server 2012 has been released, so too has the new certifications.  If you want to earn your MCSA: Windows Server 2012 credentials then you are only three exams away:

    Exam # Title Aligned course
    70-410 Installing and Configuring Windows Server 2012 20410
    70-411 Administering Windows Server 2012 20411
    70-412 Configuring Advanced Windows Server 2012 Services 20412

    Instead of taking all three of these exams, you could choose to upgrade any of the following certifications with a single upgrade exam:

    MCSA: Windows Server 2008

    MCITP: Virtualization Administrator on Windows Server 2008 R2

    MCITP: Enterprise Messaging Administrator 2010

    MCITP: Lync Server Administrator 2010

    MCITP: SharePoint Administrator 2010

    MCITP: Enterprise Desktop Administrator on Windows 7

    The upgrade exam is called Upgrading Your Skills to MCSA Windows Server 2012, and is exam number 70-417.

    expert-blueMicrosoft Learning calls the MCSE certification ‘the globally recognized standard for IT professionals.’  It demonstrates that you know more than just the basics, but that you are an expert in the technologies required to provide a complete solution for your environment.

    The first IT Pro MCSE cert announced focused on virtualization and the System Center 2012 product.  Microsoft Certified Solutions Expert: Private Cloud launched first because System Center 2012 was released earlier in the year, and the Private Cloud cert could use either Server 2012 or Server 2008 certs as its baseline.  If you already have a qualifying MCSA certification (such as the one outlined above, or the MCSA: Windows Server 2008) then you would only require two more exams to complete your MCSE:

    Exam # Title Aligned course
    70-246 Monitoring and Operating a Private Cloud with System Center 2012 10750
    70-247 Configuring and Deploying a Private Cloud with System Center 2012 10751
    70-6591 TS Windows Server 2008: Server Virtualization 10215A

    1This exam can be taken instead of exam 70-247 until January 31, 2013 to count towards the Private Cloud certification.

    The next new-generation MCSE cert for the IT Pro is theMCSE: Server Infrastructure.  Like the first one the basis for this cert is the MCSA.  Unlike the Private Cloud cert, the MCSA must be in Windows Server 2012.  The required additional exams are:

    Exam # Title Aligned course
    70-413 Designing and Implementing a Server Infrastructure 20413
    70-414 Implementing an Advanced Server Infrastructure 20414

    Are you starting to worry that your current Server 2008 certs aren’t helping you toward your goal?  Never fear… the following certifications are upgradeable by taking three exams:

    MCITP: Virtualization Administrator on Windows Server 2008 R2

    MCITP: Enterprise Messaging Administrator 2010

    MCITP: Lync Server Administrator 2010

    MCITP: SharePoint Administrator 2010

    MCITP: Enterprise Desktop Administrator on Windows 7

    Which exams?  I’m glad you asked.  The upgrading IT Pro needs to take:

    Exam # Title Aligned course
    70-413 Designing and Implementing a Server Infrastructure 20413
    70-414 Implementing an Advanced Server Infrastructure 20414
    70-417 Upgrading Your Skills to MCSA Windows Server 2012 20417

    In other words, you will be upgrading your pre-existing cert to MCSA: Windows Server 2012, and then taking the remaining exams required for the MCSE.

    The third MCSE that will be of interest to IT Pros is the MCSE: Desktop Infrastructurecert.  As with the others it requires the candidate to earn the MCSA: Windows Server 2012, and then take the following exams:

    Exam # Title Aligned course
    70-415 Implementing a Desktop Infrastructure 20415
    70-416 Implementing Desktop Application Environments 20416

    If you previously held the MCITP: Enterprise Desktop Administrator 7 then you can upgrade by taking the following exams:

    Exam # Title Aligned course
    70-415 Implementing a Desktop Infrastructure 20415
    70-416 Implementing Desktop Application Environments 20416
    70-417 Upgrading Your Skills to MCSA Windows Server 2012 20417

    There are actually five other MCSE paths, which are:

    MCSE: Messaging

    MCSE: Data Platform

    MCSE: Business Intelligence

    MCSE: Communication

    MCSE: SharePoint

    That I do not discuss these is not a judgment, simply they are outside of my wheelhouse as it were… If you would like more information about any of these, visit Microsoft Learning’s MCSE landing page.

    The Unfinished Pyramid

    You will notice that the MCSA and MCSE pyramids that we use are progressive… the MCSA has one level finished, the MCSE has two levels finished.  That is because there is another level of certifications above these, which is now called the Microsoft Certified Solutions Master.  This is the highest certification that Microsoft Learning offers, and only a few individuals will qualify.  It is a real commitment but if you think you are ready for it, I would love to point you in the right direction.  Personally I am happy with my MCSE: PC and don’t expect I will ever be a Master.

    At present there are four MCSM tracks:

    MCSM: SharePoint

    MCSM: Data Platform

    MCSM: Communication

    MCSM: Messaging

    It should be noted that of these only the MCSM: Data Platform is currently available; the others will be made available in 2013.

    Also at the very top of the pyramid there is one more level – the Microsoft Certified Architect (MCA).  There are currently four MCA certifications:

    MCA: Microsoft Exchange Server

    MCA: Microsoft SharePoint Server

    MCA: Microsoft SQL Server

    MCA: Windows Server: Directory

    Achieving the MCA requires a lot more than just exams.  It is a long and grueling process which in the end will likely leave you drained, but with the highest certification that Microsoft offers.

    I should tell you that these last two senior certs are not for most people.  They are only for the very top professionals with in-depth experience designing and delivering IT solutions for enterprise customers, and even then only for those who possess the technical and leadership skills that truly differentiate them from their peers.

    Keep it up!

    Several years ago Microsoft Learning tried to retire older MCSEs – Windows NT and such.  They were unsuccessful because had they done so they would have breached the terms of the original certification.  In other words, because they never told candidates in advance that they would retire them, they couldn’t retire them.  It is not uncommon for me to hear from someone who is an MCSE, but they haven’t taken an exam since the 1990s.  In fact the logo for MCSE on Windows NT is the same logo as for MCSE on Windows Server 2003, and those MCSEs will be allowed to use that logo forever.

    In 2006 they made it a little easier to differentiate.  Not only would certifications be by technology (MCITP: Enterprise Administrator on Windows Server 2008) but they would, in theory, be retired with support for that technology.  So an MCITP on Windows Vista would not be able to use the cert past a certain date.  Unfortunately I found that people did not refer to their entire cert, they would simply say that ‘I am an MCITP!’  In other words, without some clarifying it was pretty difficult to determine what technology they really knew.  Additionally it is not uncommon for some pros to have several MCITP certs, making it quite difficult to list on a business card or e-mail signature.

    Now Microsoft Learning has really made an improvement to this issue.  The new MCSE certifications will require that you show continued understanding of the latest versions of the technology area by taking a recertification exam every three years.  While there was some talk of this with the MCITP program it did not come to fruition.  Today however this recertification requirement is clearly outlined on the MCSE pages.

    While recertifying may seem like a bother for some, as we discussed earlier it is something we choose to do every three years to remain current anyways.  For those of us who do want to always remain current it is nice to know that we don’t have to start from scratch with every new product cycle.  For those for whom remaining current is not as important they will always be able to say ‘I was an MCSE, but I let my certs lapse.’  It shows that they do know the technology, just not necessarily the most current version,  This should be sufficient for a lot of people who often tell me ‘my clients don’t need the latest, and are not going to upgrade every three years!’

    What About Small Biz?

    I spent several years specializing in SMBs.  The first time I took a certification exam I remember coming out of it upset about questions that started ‘You are the administrator for a company with 500 server…’  No I am not!  At the time I couldn’t even fathom what that would be like.  So when Microsoft Learning started writing exams for SBS I was glad not because I wanted to limit myself (I didn’t, and am glad of that today) but because I knew that there are lots of IT Pros out there who do work exclusively on smaller networks.

    I do not know what will become of SMB-focused certifications now that Windows Small Business Server 2011 is to be the last SBS release.  I do not have any insight into whether there will be exams around Windows Server Essentials, but could envision a cert around the tying of that product with Windows 8 and Office 365.  I have not been asked, but it would make sense.  However I have heard from a lot of SMB IT Pros that certifications are not as important to them and their clients as we feel they are in the enterprise, and I accept that; the needs of the larger do not necessarily align with the needs of the smaller.  However only time will tell if Microsoft Learning will address this market.

    So in the end, should I get certified?

    I have long been of the opinion that certifications are key for any IT Professional who is serious about his or her profession.  It shows that they have the respect for their profession to be willing to prove not that they know how to do it, but to do IT right.  Certifications are not for IT hobbyists, or people who dabble.  They are for the professionals who earn their living in IT, and who wish to differentiate themselves from other candidates for jobs, contracts, or promotions.

    Whether you have been working in IT for years, or are fresh out of school and looking to embark on a career in IT, there are likely scores if not hundreds of candidates who will be competing with you for every job.  Why not take this opportunity to distinguish yourself?  No matter how much some people will denigrate their relevance, I have spoken to many hiring managers who have confirmed for me time and again that they are a key indicator of a candidate’s suitability to technical positions.

    Storage Pools… Dive right in!

    This article was originally posted to the Canadian IT Pro Connection.

    Storage Pools are a new feature in Windows Server 2012 that at first glance (at the terminology) may look like  software RAID arrays that have been around for years, but are really a new concept, or at least several generations of advancement on the old concept.  They give us the ability to use disks of different sizes and bus types and create a single ‘pooled disk.’

    While Storage Pools are easy to create and use, the technology under the hood is quite complex, and certainly years ahead of anything we had seen before.  Storage Pools leverage the power of virtual hard disks and ‘thin provisioning in order to deliver ‘on demand’ storage. 

    Let’s create a scenario in which we see the true value of Storage Pools:

    Someone in your organization is working on a virtual server that will start small but will necessarily grow over time.  They request 185GB of storage for their VM.  Because of the importance of the project they request the fastest solid-state drives (SSDs) available.  You have one 64GB drive available immediately, but the part is on backorder and will take several weeks to get in.

    Rather than simply installing the disk into a server and provisioning the VM onto that disk, you connect it, create a Storage Pool, and add the disk.  You then create a virtual disk on the Storage Pool, and then create a volume on that pool.  You should now have a volume of about 63GB (formatted capacity) ready to allocate to the VM.  The project proceeds.

    A few weeks later you receive your new SSDs, and not a minute too soon because the VM is growing.  You install the new disks into the server, and from the Storage Pools screen in Server Manager you add the new drives to the pool, expand the virtual disk, and then extend the volume.  Within minutes you have the 200GB volume (on SSDs) that was requested.

    Let’s extend beyond the single server though.  You may need an iSCSI SAN, but do not have the budget for it.  Rather than make do without, you take a NAS (Network-Attached Storage) or JBOD (Just a Bunch Of Disks) appliance which are both much less expensive, and create your Storage Pool using those disks.  Then from within Windows Server 2012 you use the iSCSI Software Target to start creating LUNs on the appliance, thus creating the SAN device you couldn’t afford.

    The hardware

    I will preface this by saying that for servers I always strongly recommend server-grade hardware.  However sometimes we do not have the budget for the best hardware, and we have to use what is available.  Storage Spaces are supported on any type of drive you can connect to your computer, be it SATA or IDE, SCSI or SAS, iSCSI, or USB.  With that being said, if you are going to use your Storage Space for failover, only SAS and iSCSI are supported by Microsoft.  However it is even possible to create a Storage Pool of USB keys, as long as they are connected to your computer.

    Creating your Storage Pool

    image

    1. From within Server Manager click on the File and Storage Services workspace.
    2. In the navigation pane select the Storage Pools context.
    3. To the top-right of the Storage Pools workspace click on the TASKS drop-down and click New Storage Pool… image
    4. In the Specify a storage pool name and subsystem window name your pool, and select the group of available disks that you will use and click Next. image
      5. Select the physical (or in this case virtual) disks that you would like to add to your pool and click Next.

    image

    6. On the Confirm selections page click Create.

    image

    It will not take very long, and you will get a message that you have successfully created a Storage Pool.  Before you close the dialogue box, notice that near the bottom there is a checkbox asking if you want to create a virtual disk when the wizard closes.  Select this checkbox and then click Close.  The New Virtual Disk Wizard will come up automatically.

    7. In the New Virtual Disk Wizard select your newly created Storage Pool onto which to create the virtual disk, and then name the disk as you would. 

    8. In the Select the storage layout screen you are asked to select between Simple, Mirror, or Parity.

    Simple: data is striped across the disks, maximizing the capacity and increasing throughput, but without offering any redundancy thus decreasing reliability.  You are not protected from disk failures.

    Mirror: data is duplicated on two (or three) disks which increases reliability, but reduces capacity.  A mirror requires at least two disks to protect from a single failure, and five disks to protect from two simultaneous disk failures.

    Parity: data and parity information are striped across the disks, increasing reliability but reducing capacity.  It requires at least three disks, and cannot be used in a failover cluster.

    9. In the Specify provisioning type screen you can choose either thin-provisioned (your virtual disk starts small and grows as needed) or fixed-provisioned (your virtual disk is created as the fully provisioned file).

    image

    10. In the Specify the size of the virtual disk page enter the size of disk, and from the drop-down list select the unit of measurement – megabytes, gigabytes, or terabytes.  Click Next.

    On the Confirm selections screen verify that your settings are right and click Create.  This process should not take very long.

    image

    Once again, at the bottom of the View results page we have a checkbox, this time asking if we want to create a volume.  Leaving this checked will bring up the New Volume Wizard.

    The wizard will look a little different than it did in Server 2008, owing to the fact that you can now provision storage both locally and remotely.  On the first screen you select the server and the disk; on the second screen you select the volume size (which cannot exceed the size of the disk); you then assign a drive letter or, if you prefer, a directory to mount it to (or don’t assign a letter at all); finally you select the file system, unit size, and volume label.  On the last screen you confirm your selections and click Create

    image

    The volume will not take long to create, and you are now done.  You can navigate to Computer in Windows Explorer and your newly provisioned drive is ready to use!

    Growing your Storage Pool

    Creating it is one thing, but let’s now see how easy it is to extend the volume by adding drives.

    image

    When we navigate back to our Storage Pools workspace in Server Manager we see that our newly created pool is there; we also see (under Physical Disks) that we have two 64 GB disks that are unused (thus primordial).

    image

    1. Right-click on your storage pool and click Add Physical Disk…
    2. Your available disks will be listed.  Select the ones you wish to add and click Next. image
    3. In the VIRTUAL DISKS context on the Storage Pools workspace right-click on your virtual disk and click Extend Virtual Disk… image
    4. In the Extend Virtual Disk window enter the desired new size and click OK. image
    5. Now you are going to change the context to the Volumes workspace.  Right-click on the volume that you created and click Extend Volume.  Notice when you click on the volume the Disk is listed as belonging to a Microsoft Storage Space Device.  It lists the capacity, both allocated and unallocated, as well as the status and virtual disk name. image
    6. The Extend Volume window looks identical to the Extend Virtual Disk window.  Enter the new size and click OK. image
    7. Extending the volume only takes a few seconds, and when you are done you will see that the capacity has been extended.  image

    If you want to double-check, go to Windows Explorer and navigate to Computer in Windows Explorer and (once you hit refresh) your newly extended drive is ready to use!

    Conclusion

    Storage Spaces are going to revolutionize the way we (as administrators) think about storage.  We can now hot-add drives to volumes and extend them in seconds and not hours, and because there is no downtime involved we will not have to do any of this after hours.

    Going forward we are going to stop thinking about the disk as the main storage unit of storage in our environment, but rather it will be one piece of the equation.  Our volume sizes will not be limited to the size of a disk, but what we need, whether that be measured in gigabytes or terabytes.

    Add to the fact that we are not tied to any specific architecture, and you will see very quickly that our storage costs and complexity will drop – even as we add features like mirroring, failover disks, and parity.

    %d bloggers like this: