Setup a Sharepoint 2013 Development Environment: Prepare a Hyper-V VM

Installing SharePoint is one of the more complicated installations in the Microsoft family of software. There are a lot of options and steps, and there are many architecture decisions to make. But you can find yourself in a bit of a catch-22: It’s hard to architect a solution until you’ve played with it and see what it can do – but you can’t see what it does until you’ve got it architected.

Cut through some of the clutter by using Hyper-V on your workstation to install a SharePoint 2013 development environment. This article shows you how to prepare to run your own SharePoint pilot on your own workstation by creating a VM that can run SharePoint 2013. I use Hyper-V for this because it’s free on Windows 8 and is installed simply by turning on the feature. The steps are similar in other VM platforms, so if you’re not using Hyper-V you can still use this article as a guide.

SharePoint 2013 Development Environment on Hyper-V: Installation Requirements

I want to keep it really simple. That means that I’m going to use a single VM for doing everything. My VM will be an AD domain controller, a SQL server, and a SharePoint server.

I’m also taking some shortcuts with the environment to reduce the steps that it takes to get you going. For example, typically we use multiple service accounts for handling service applications, the SharePoint setup, and the SP farm administrator account. In this environment we can get up and running faster by using a single account which is a domain administrator. Not in any way acceptable for a production  instance, but just perfect for a quick to access SharePoint 2013 single-server farm.

RAM Requirements: 8GB minimum, 12GB preferred. The minimum requirement of 8GB of RAM shouldn’t be taken lightly. 8GB isn’t really even enough when you consider that you’re going to be using SQL as well as SharePoint. If you’ve got 16GB on your host, go ahead and create your VM with 12GB of RAM.

Note: Even with 16GB of RAM on your system, you may not be able to apply 12GB to your VM. You may already be using too much on your system for Hyper-V to allocate it successfully.

CPU requirements : 4 cores minimum. The minimum specification for the CPU is 4 cores. The hypervisor abstracts that number anyway, and until you’re actually using the instance it’s not likely that CPU is going to be a bottleneck.

Storage requirements: 80 GB minimum. The only reason you would want to add more space is if you plan to drop a lot of documents into the sites and libraries that you spin up in your dev environment. There’s something to be said for that, you could really see what it’s like with 10 GB worth of data in a document library. If that’s your intention, be sure to account for that in the storage you assign your VM. In my example below I create the VM with a 100 GB C: drive.

Software requirements: Hyper-V, or another hypervisor. In this article, I’m using Hyper-V from my Windows 8 workstation. If you want to try this on your VMWare workstation or Virtual Box, you’ll need to modify the steps to create your VMs to account for the differences in the virtualization software.

Software Requirements: ISOs

You’ll need an Operating System for the VM, and SharePoint. Since we’re running only in a dev environment, we’ll use the SQL server that comes on the SharePoint ISO.

If you don’t have this software, simply download the trial software (see the links below) and you’ll be good to go for long enough to enjoy a test drive.

Creating the VM

You need two things for your project: a virtual switch and the VM itself. The virtual switch is so that your VM can get out to the internet for downloading the SharePoint prerequisites.

Creating the virtual switch

In Hyper-V Manager, right-click your host machine and select Virtual Switch.

Sharepoint 2013 Development Environment: Hyper-V Manager -NewSwitch

Here are the settings that you need to create a Virtual Network that will allow your SharePoint 2013 development VM access to the Internet.

Sharepoint 2013 Development Environment: Hyper-V Manager Switch Options

You will need this to be an external switch, so that your machines can access the internet. You also need to put a check in the box to allow the host machine to share the network card.

Note: This will not work if your DHCP server refuses to assign you an IP address. If that’s the case, your VMs will end up being connected but only with an autoconfigured IP address that can’t get out.  You can work around that by creating your VM switch as an Internal network then bridging your network connections.

Create the VM in Hyper-V Manager

In Hyper-V Manager, right-click the host machine and select New, then Virtual Machine.

Sharepoint 2013 Dev Environment: Hyper-V Manager New VM

These steps will get you a VM on which you’ll use to install SharePoint 2013.

Sharepoint 2013 Dev Environment: Hyper-V Manager Wizard

 

Name the VM, then assign a place on your hard drive for the VM. Click Next.

Sharepoint 2013 Development Environment: Hyper-V Manager Wizard

Enter the amount of RAM to give your VM, with a minimum of 8GB (or 12GB if you have enough RAM). Check the box to Use Dynamic Memory. Click Next.

Sharepoint 2013 Development Environment: Hyper-V Manager Configure Networking

Select the virtual network that you created. Click Next.

Sharepoint 2013 Development Environment: Hyper-V Manager Create Disk

Create a new Virtual Hard Disk to assign to your machine. Name the hard disk, assign it a location, and set a maximum size. Remember that 80GB is minimum for this machine.

Sharepoint 2013 Development Environment: Hyper-V Manager Select ISO

Select Install an operating system from CD/DVD, then browse for your Windows Server 2012 ISO. Click Finish.

Configuration: Assign Multiple Processors

Follow these steps to assign more virtual processors to your VM

  • In Hyper-V Manager, right-click your SharePoint VM, then choose Settings.
  • In the VM settings, select Processor, then change the number of virtual processors from 1 to 4.
  • Click Apply.

Note: This cannot be done while the VM is running. If you’ve already started your VM, you’ll need to shut it down so that you can make this change.

Install Server 2012

You’ve already set the Server ISO to be in the virtual DVD-ROM drive, so all you have to do is start the VM and run through a basic server install.

Note: You do need the GUI experience. If you already installed core, you have to turn on the GUI so that you can run SharePoint.

If you’re wondering about whether you should install Standard or Datacenter, choose Standard. Standard and Datacenter are the exact same OS, just with different licensing.  You don’t give up any performance or capability by choosing standard.

Setup Active Directory

The server needs to be on a domain, so add the AD-Directory-Services feature to your server and create a new AD Forest. For the purposes of our SharePoint development/pilot box we will run everything as the Administrator account.

Disable Loopback

There’s a registry setting that has to be set so that the server can look at addresses that resolve to itself. This is a security violation, but it’s overlooked in this environment. These are the steps for “Workaround Method #2” from the TechNet article (see the link below). In a production environment, you would use the more security pragmatic “Workaround Method #1.”

Workaround Method #2 from TechNet article KB 896861

  1. In Registry Editor, locate and then click the following registry key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

  1. Right-click Lsa, point to New, and then click DWORD Value.
  2. Type DisableLoopbackCheck, and then press Enter.
  3. Right-click DisableLoopbackCheck, and then click Modify.

In the Value data box, type 1, and then click OK.

You’re all set with your SharePoint Server, but there are still a lot of configuration steps before you’ll really have a SharePoint Test farm installed. But you’ve gotten your first, most crucial step out of the way and next you’re ready to start a SharePoint 2013 installation!