SharePoint 2010 Small Farm Server Recommendations

image

Copyright 2010. John Stover

Microsoft has some pretty good information posted about the hardware and software requirements necessary for SharePoint 2010.  I still get asked for real world, or ‘best practices’, recommendations all the time.  Like everyone else, I want to get the best performance for the best price.  It’s difficult to strike the balance between ‘good enough’ and ‘optimized’.

A large majority of the SharePoint projects that I work on end up being small-ish SharePoint farms (between 2 and 8 servers).  Due to the licensing required for Windows, SQL Servers, and SharePoint servers, most organizations do try to get by with as few servers as possible, yet still want the best possible performance.  The most common configuration that I see in the SharePoint world involves a single dedicated SharePoint server and a single dedicated SQL Server.  From there, organizations usually first add another SharePoint server, then a 3rd SharePoint server, then a second SQL Server, and then the sky is literally the limit.

SharePoint 2010 Recommendations for installing on a Single Server

I get asked for SharePoint server recommendations nearly every day.  Like nearly all ‘best practices’, there is no single answer for perfect server recommendations.  The answer always seems to be, “It depends.”  What is your budget?  How many users?  What type of users?  What type of activity are the users doing?  What type(s) of SharePoint sites are you running?  Web Content Management sites?  Team Sites?  BI tools?   If you look online for SharePoint 2010 farm configurations, you will see incredible descriptions of server clusters, farms, SAN configurations, hundreds of GBs of memory, incredible RAID configurations, clusters of servers for every imaginable service and other configuration scenarios that most nonprofits could never afford.  If you want some great fun with environment configuration recommendations, download the HP Sizer for Microsoft SharePoint 2010.  I recently ran a scenario through the HP Sizer and got a recommendation for a 32 server environment with full details. 

Most of the nonprofits I work with don’t have the resources available for 32 new servers to run SharePoint.  Is there anything you can do on a shoestring budget to maximize performance with your SharePoint environment?  Absolutely!  You can run SharePoint on a single server.  It doesn’t matter which version of SharePoint, either.  You can run SharePoint 2010 Standard, SharePoint 2010 Enterprise, SharePoint Foundation, Windows SharePoint Services, and MOSS 2007 all on a single server.  Will it be the absolute best performing SharePoint environment ever?  Probably not.  But you can run an effective and efficient solution on a single server.

If you are running SharePoint on a single server, there are some things that you should take into account.

  1. Dedicate your server to running SharePoint.  I’ve seen a variety of configurations where a single server was used to run custom apps, ColdFusion, PHP, Media Streaming Services, Exchange, and a host of other things.   Sure you can do this, but should you?
  2. Stop unused services.  Do you really need the audio services running on Server? Stop and disable any of the services that you are not using.
  3. Add RAM.  RAM is cheap.  Whether virtual or physical – allocate memory to your server.  I run 6GB dedicated to the VM on my laptop – and I’m the only user. 
  4. Plan you drives and partitions.  There are heated debates over partitions, RAID systems and drive configurations on the web.  Like RAM – more is better.  If you are purchasing a single machine to run SharePoint – hardware is cheaper than software at this level.  Purchasing a flexible server with multiple SAS drive controllers and fast drives gives you flexibility to run different RAID configurations (RAID 10 is faster than RAID 5).  Running 3 partitions on the same physical drive is slower than running 3 separate drives.  Want to know something interested – partitioning segments of a drive and leaving the drive largely empty often gives the best performance.  If you have a 1TB drive and put a 250GB partition on it and ONLY use the 250GB – you will get better performance than if you use the whole drive.   Sure you are ‘wasting’ 750GB worth of space, but this recommendation is about getting optimal performance from a single server – not conserving drive space.
  5. Plan SQL.  If you are using SQL Server Express (which is the default version used during a stand-alone install), then there is very little configuration control you have using the install wizard.   If you are using a Standard version of SQL Server 2008, then you have a ton of control over configuration options.  You can split data, logs, temp db, OS, and page files all to different drive arrays.  If you dedicate controllers/drive arrays to each of these operations then you will gain significant performance gains from SQL.

As you can see, there are tons of things you can do to optimize performance for a single server environment.  All of these steps should be considered with multi-server environments as well.

To paraphrase (and completely rewrite an old saying), your environment is only as fast as the most restrictive bottleneck.

Microsoft Search Server 2010 Express Part 1: Installation 101

I am a huge fan of free software.  I think that there are tons of great free software packages available: WordPress, Ubuntu, Microsoft SharePoint Foundation, Microsoft SQL Server 2008 R2 ExpressPicasa, TeraCopy and many more.  When most people hear FREE software, they hear Open Source.  However, not all free software is open source.  One of the absolute greatest free software packages available for you to use today is Microsoft Search Server 2010 Express.  Any association, nonprofit, charity, school or company can use this software to significantly improve their search capabilities.  Internally searching the S:\ drive or externally on you existing public facing website – Microsoft Search Server 2010 brings a lot of great capabilities to the table – for free.

This is just a series of screen caps of the vanilla install environment.  Keep in mind the requirements for Search Server 2010 Express are similar to those of Search Server 2010 and SharePoint 2010: 64-bit edition of Windows Server 2008 Standard, Enterprise, Data Center, or Web Server with Service Pack 2 (SP2) or 64-bit Windows Server 2008 R2 (various flavors).

I’ve installed this on 64-bit Windows Server 2008 R2.

After downloading and launching the executable, you should see:
Search Server 2010 Express Splash Screen 

There are various links in the splash screen, but basically under Install, you can let the wizard install all of the prerequisites needed (including IIS).  If you want, you can manually download and install all prereqs to ensure they are installed exactly how you want, see http://technet.microsoft.com/en-us/library/bb905370.aspx.

Search Server 2010 Express Prerequisites

Even if you install the prereqs manually, it’s still a pretty good idea to run the wizard to validate your environment.  The wizard will check that everything is right as rain before installing.

Search Server 2010 Express Install

After accepting the Ts & Cs, the prereq wizard will run through…

Search Server 2010 Express Install

Search Server 2010 Express Install Complete 

Complete!  The prerequisites are now installed (or validated) and you can run the actual Search Server 2010 Express install.

Search Server 2010 Express Install Product

There are two modes for installing Search Server 2010 Express:

  • Complete – allows you to specify a SQL Server installation
  • Stand-alone – automatically installs and configures an instance of Microsoft SQL Server 2008 Express (which is also free!)

Search Server 2010 Express Server Type

I’ve selected Stand-alone which should go through and configure absolutely everything I need to have Search Server 2010 Express running.

Search Server 2010 Express Installation Progress

The actual install goes fairly quickly.  The installation provides an opportunity to run the Configuration Wizard immediately or not. 

Search Server 2010 Express Run Config Wizard

With Search Server 2010 Express in Stand-alone mode, the configuration wizard is pretty straightforward. 

Search Server 2010 Express Welcome

Simple dialog making sure you know that some services may be restarted.

Search Server 2010 Express Stop Service Dialog

After clicking Yes, sit back and relax for a bit.  I have a pretty fast virtual environment and the configuration screens take about ten minutes.

Search Server 2010 Express Progress Bar

And…

Search Server 2010 Express Install Successful

After the configuration wizard finishes, you should automatically be taken to the Central Administration screen with a few steps listing how to begin configuration of your specific search implementation.

Search Server 2010 Express Configuration Wizard

You should also notice that you now have some new Administrative shortcuts installed, namely a folder with shortcuts to the SharePoint 2010 Central Administration, SharePoint 2010 Products Configuration Wizard, and the SharePoint 2010 Management Shell and a second folder called Microsoft SQL Server 2008.  What?  SharePoint 2010?  SQL Server 2008?  But I thought I installed Search Server 2010 Express.  Several Microsoft products utilize SharePoint as the interface for the applications.  SharePoint uses SQL Server.  SharePoint Foundation is free and provides a great user interface experience, security components, an application development framework, a deployment framework, and so much more.  SQL Server 2008 Express is free and is, well, SQL Server – arguably one of the strongest database management platforms on the market. Once any developer learns to leverage the SharePoint framework, the time and effort required to write a web based application can be significantly shortened.  After all, that’s what frameworks and APIs provide – the ability to leverage existing ‘stuff’ and not having to write everything from scratch every time.

Search Server 2010 Express Programs Added

Get more info directly from Microsoft.
Marketing site: http://www.microsoft.com/enterprisesearch/searchserverexpress/en/us/default.aspx
Download site: http://www.microsoft.com/enterprisesearch/searchserverexpress/en/us/download.aspx
TechNet site: http://technet.microsoft.com/en-us/enterprisesearch/ee263912.aspx#tab=1

Installing SharePoint Foundation 2010 Stand-alone

SharePoint Foundation 2010 is an incredible product.  Not only does it provide robust collaboration capabilities, web site management tools, security management tools, and data integration tools, but SharePoint Foundation 2010 is free.  Foundation 2010 is available to download from Microsoft today and can be used for any type of site, internal or external.  I’ll be covering quite a bit about SharePoint Foundation 2010, so it makes sense to start with some simple install notes and screens that will guide absolutely anyone through a basic install.

When you first launch the SharePoint Foundation 2010 installer, you are presented with a dialog to help you with a little guidance and links to the install guide, upgrade guide, and the hardware and software requirements.  Assuming that everything is ready to go, you can install the software prerequisites.

image

image

Once the prerequisites are installed, then you can click Install SharePoint Foundation.

image

It is important to note the type of installation that you are performing.

Stand-alone will install all components on this single computer.  Stand-alone will also automatically install and configure an instance of SQL Server Express 2008.  This is a very simple installation process, but has some limitations.

A Stand-alone installation configures a single computer with all the necessary files and settings to create a fully functioning SharePoint implementation, including Web server, application server, and database.   SQL Server Express 2008 is installed and configured to provide data storage capability.   SQL Server Express is based on the Microsoft SQL Server architecture, but it has the following limitations:

  • Lack of enterprise features support.
  • Limited to one CPU.
  • One gigabyte (GB) memory limit for the buffer pool.
  • Databases have a 4 GB maximum size.
  • SQL Server Express will not support a server farm configuration or a multi-processor computer.

In addition to the SQL Server Express limitations, the inherit SharePoint Foundation Stand-alone configuration limitation is that you cannot add servers to create a SharePoint farm.  If you need to add another WFE later – you won’t be able to.  If you anticipate the need to scale up to a larger or more robust installation, choose the Complete option.

image

You can perform a stand-alone installation either by selecting Stand-alone on this screen or by clicking Standalone on the previous screen. The difference is that by clicking Stand-alone on this screen, you can choose the installation path. After this screen, both options follow the same steps and result in the same outcome.

image

If you choose the Complete install, SharePoint Foundation 2010 will install all components. You can add additional servers to form a SharePoint farm, including load balanced WFE servers.  The Complete option installs a Web server and configures the computer to provide application server functionality.   The SharePoint Foundation 2010 Complete install option does not provide database functionality.   You must provide connectivity and credentials settings to connect to an existing SQL Server instance.   It is important to note that you can download and use SQL Server Express 2008 for free.  You can even install it on the same computer.  Although SQL Server can be installed on this same computer, it is recommended that you install SQL Server on a separate computer.

There are other install options.  You can also install SharePoint Foundation 2010 for a front-end Web server rather than Complete, but you must use the command line to do so.

If you receive an error message or encounter a problem, visit The Microsoft Office 2010 Setup Resource Center for troubleshooting information and how to contact Microsoft Product Support.

image

If you do not change the default installation directory, the default installation directory is located at:  C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\Data

I typically recommend leaving the installation directory in the default location.  While some IT shops have standard operating procedures that all installations must be on non-OS drives (D Drive), I’ve found it easier to troubleshoot new environments if I don’t have to hunt around for files.  The next SharePoint consultant that you bring in will immediately first look in the Hive (typically the default install directory) for SharePoint related info.

After you select the path, the installation wizard will begin a progress bar as it installs the environment.

image

After the successful installation, you will be prompted to run the SharePoint Configuration Wizard.  Typically, you can leave the check box selected and immediately run the configuration wizard.  There are instances where you may want to delay running the configuration wizard.  If you are planning to run the Office Web Apps (which will run on SharePoint Foundation 2010), it is easier to install the necessary files at this point (after SharePoint install but prior to running the configuration wizard).  If you first run the SharePoint Configuration Wizard, then you will be configuration the Office Web Applications via PowerShell scripts.

image

image

image

If you opted for a SharePoint Foundation 2010 Stand-alone Server install, then the SharePoint 2010 Products Configuration Wizard will immediately begin the ten step configuration process.

image

If you opted for an option other than a stand-alone server install, then you will be prompted to either Connect to an existing Server Farm or Create a new Server Farm.  You will then be prompted to supply database connection credentials with appropriate permissions on the SQL instance that you will be using.

image

image

That’s it!  After you’ve let the wizard run through, you should automatically be directed to a default SharePoint Foundation 2010 site that looks a lot like the screen below.

image

SharePoint 2010 Licensing Part IV: Scenario Examples

For Part IV in my SharePoint 2010 Licensing mini-series, I have put together several different licensing scenarios and detailed the requisite licensing for each.   SharePoint is very flexible in both licensing and capability.  As with any large company, understanding exactly which licenses you need can be quite perplexing!  Hopefully this will shed some light on different scenarios to help you get your SharePoint 2010 environment licensed correctly.

The previous posts in this mini-series include explanations of the different products involved with SharePoint 2010:

As a SharePoint consultant and architect, I get a lot of questions about “What SharePoint licenses do I need?”.  These example scenarios detail the products that you will need to purchase specific to SharePoint 2010.  For simplicity, these scenarios are limited to Windows, SQL, and SharePoint licenses. These examples do not detail antivirus software, backup software, management software, or any other ITC-type software packages.  Also, this page is specific to SharePoint 2010 only.  A later post in this series will describe example scenarios for other options as well, such as FAST Search for SharePoint, Office Web Applications, Project Server 2010, Microsoft Online, and more.

Scenario A. SharePoint Foundation 2010 Intranet Site on a single Stand Alone Server. Corporate, internal-only use for 20 employees. For this environment, this would be a single server configuration running only SharePoint Foundation 2010 on the included SQL Server 2008 Express (which would automatically be installed during the SharePoint Foundation install).

  1. Windows Server 2008  Standard Edition License
  2. Windows Server 2008 CAL, 20-pack

That’s it!  All you need is Windows Server and CALs for your users.  If you have an existing Windows shop, you likely already have the Windows CALs, so all you would need is another Windows Server.  Furthermore, for a 20 user environment, you could just run SharePoint 2010 on an existing, under-utilized server and thus would need no new licenses to install and run SharePoint.

Scenario B. SharePoint Foundation 2010 based Internet Site (Public Facing or External Facing).  Public facing assumes anonymous access, and external facing assumes that the sites are not for Staff-only.  This means this could be an Extranet, working with clients, vendors, customers, members, volunteers or any other non-staff.  Again, this example will be installed as a Stand Alone Server. For Internet facing sites, you don’t need any CALs at all.

  1. Windows Server 2008 Standard Edition License
  2. Windows Server 2008 External Connector License

Scenario C. SharePoint Server 2010 Intranet Site.   I would consider this a very small site.  Stand Alone Server. Corporate, internal-only use for 20 employees. All employees only using Standard Edition functionality. Single server configuration running only SharePoint Server 2010, Standard, on the included SQL Server 2008 Express.

  1. Windows Server 2008  R2 Standard Edition License
  2. Twenty (20) Windows Server 2008 CALs
  3. Microsoft SharePoint Server 2010, Standard
  4. Twenty (20) SharePoint 2010 CALs, Standard Edition

Scenario D. SharePoint Server 2010 Intranet Site. This one is a little larger environment running on a two Server Farm. This site would still be corporate-only use for 20 employees, two (2) server configuration with a web server running SharePoint Server 2010 and a database server running SQL Server 2008 (or 2005).  For this sample configuration, all 20 employees will utilize SharePoint 2010 Standard features, while only 10 of these employees will utilize SharePoint 2010 Enterprise features.

  1. Two(2) Windows Server 2008 Standard Edition Licenses, 1 WFE (web front end) and 1 database server.
  2. Twenty (20) Windows Server 2008 CALs
  3. Microsoft SQL Server 2005 Standard Edition (must have appropriate service packs and patches, of course)
  4. Twenty (20) Microsoft SQL Server 2005 CALs
  5. Microsoft SharePoint Server 2010
  6. Twenty (20) SharePoint 2010 CALs, Standard Edition  (1 for each user, since SharePoint 2010 CALs are additive)
  7. Ten (10) SharePoint 2010 2010 CALs, Enterprise Edition (for only the users that will be using Enterprise features)

Scenario E: SharePoint Server 2010 Intranet and Extranet Site(s). This example assumes a single farm consisting of both public facing Internet site and a Corporate use site for 20 employees.  This would be a two (2) server farm with a web server running SharePoint 2010 and a database server running SQL Server 2008.  For this sample configuration, all 20 employees and the anonymous users (or authenticated non-staff users) will utilize Enterprise features.  NOTE: In addition to the SharePoint Server 2010 for Internet Sites, this environment requires a SharePoint Server 2010 license and appropriate CALs because there are STAFF-ONLY sites running in addition to the other sites.

  1. Two(2) Windows Server 2008 Standard Edition Licenses, 1 WFE and 1 database server.
  2. Twenty (20) Windows Server 2008 CALs
  3. Two(2) Windows Server 2008 External Connector Licenses
  4. Microsoft SQL Server 2008 Standard Edition – Processor License (no CALs required)
  5. Microsoft SharePoint Server 2010 for Internet Sites
  6. Microsoft SharePoint Server 2010
  7. Twenty (20) SharePoint 2010 CALs, Standard Edition
  8. Twenty (20) SharePoint 2010 CALs, Enterprise Edition

Scenario F: SharePoint 2010 Standard, Internet-Only Site, two (2) server configuration with web server running SharePoint Server 2010, Standard, and database server running SQL 2008.

  1. Two(2) Windows Server 2008 Standard Edition Licenses, 1 web and 1 database server.
  2. Two(2) Windows Server 2008 External Connector License
  3. Microsoft SQL Server 2008 Standard Edition – Processor License (no CALs required)
  4. Microsoft SharePoint Server 2010 for Internet Sites, Standard

Scenario G: SharePoint 2010 for an Internet-Only Site running on a five (5) server farm configuration running SharePoint 2010, Enterprise, and SQL 2010.  For this sample configuration, there are 2 SQL, 2 SharePoint 2010 WFE, and 1 SharePoint 2010 backend (Index).

  1. Five(5) Windows Server 2008 Standard Edition Licenses, 2 WFE, 1 SharePoint App/Search, and 2 database server.
  2. Two (2) Microsoft SQL Server 2008 Standard Edition – Processor Licenses (no CALs required)
  3. Three (3) Microsoft SharePoint Server 2010 for Internet Sites,  Enterprise
  4. Five (5) Windows Server 2008 External Connector Licenses – that’s right!  All 5 servers require an external connector.

Scenario H: SharePoint 2010 Enterprise Internet, Intranet, and Extranet Sites, on a five (5) server farm configuration running SharePoint 2010 Enterprise and SQL 2008.  For this sample configuration, all 20 employees will utilize Enterprise features on this farm consisting of 2 SQL, 2 SharePoint 2010 WFE, and 1 SharePoint 2010 backend (Index).   Again, this environment assumes that there are STAFF only sites running, therefore all Staff require CALs.

  1. Five(5) Windows Server 2008  Standard Edition Licenses, 2 WFE, 1 Search/App, and 2 database server.
  2. Two (2) Microsoft SQL Server 2008 Standard Edition – Processor Licenses (no CALs required)
  3. Five (5) Windows Server 2008 External Connector Licenses
  4. Three (3) Microsoft SharePoint Server 2010 for Internet Sites, Enterprise
  5. Three (3) Microsoft SharePoint Server 2010
  6. Twenty (20) SharePoint 2010 CALs, Standard Edition (required for Enterprise staff access because SharePoint CALs are additive)
  7. Twenty (20) SharePoint 2010 CALs, Enterprise Edition