I've built a few machines for SharePoint 2010 development lately so I thought I'd make a note of my key learnings for my future benefit and, hopefully, the benefit of others also.
Note, the following comments are only appropriate to a DEVELOPMENT environment. PRODUCTION environments should follow deployment documentation on Technet.
Firstly, some assumptions:
- You really need at least 4Gb of RAM (preferrably more). Even the official documentation acknowledges this.
- I prefer to keep my development environments as close as possible to production and for that reason I develop on Server 2008 R2.
- I'm building a development machine for full SharePoint Server 2010 not the free SharePoint Foundation 2010.
- I'd prefer a "complete" install rather than "stand-alone" install for a variety of reasons including I want full SQL not SQL Express.
1) Physical or virtual?
Virtual is more flexible if you have enough RAM (ie 6Gb minimum for single VM approach). Personally, due to the limitation of 4Gb of my laptop I've gone with physical using a .VHD native boot approach as disccussed in this post. However, there are reasons why this work-around isn't desirable is discussed in this post.
2) If I choose virtual, 1, 2 or 3 servers?
3 is great if you've got enough RAM as you can keep AD, SQL and SharePoint all on seperate physical tiers just as I know you would in a production deployment. However, you'll need 8Gb RAM to get a 3 server approach running well. Many developers prefer to go with a single VM so they don't have to boot multiple VMs. 2 VMs is a possible comprimise (ie AD & SQL on same box).
3) I heard I can do a complete installation on a single server using non-domain accounts?
My Installation Checklist
1) Install 2008 R2. If you go physical, resolve any driver issues as you normally would..
2) Add "Active Directory Domain Services" role.
- Run dcpromo.exe, new forest, 2008 R2 functional level.
- Install DNS.
3) SQL 2008 R2
- Database Engine Services
- Full-Text Search
- Managent Tools (Basic & Complete)
- Use the same service account, system.
- FILESTREAM - enable for both Transact-SQL & file I/O
4) SharePoint Server 2010
- PrerequisiteInstaller.exe then setup.exe.
- Choose to run the configuration wizard.
- Create a new server farm.
- Create a domain user and use it for the db access account.
- Central admin onto a known port eg 9999.
- Central admin farm config wizard
- Use the existing managed account.
5) Office 2010
- Don't need Access & Publisher
6) SharePoint Designer 2010
7) Visual Studio 2010
- Custom install, uncheck:
- VB. C++. f#
- Graphics library
- SQL Express