Perficient Digital Transformation Blog


Bob Graham

Posts by this author: RSS

SharePoint Farm Topologies for 2013 and 2010

As part of the release of the SharePoint 2013 Preview, Microsoft has provided a series of diagrams covering a variety of infrastructure areas.  One of the more interesting can be regarded a synopsis of farm topology best practices.  Even though this diagram can be rendered on a single page (click here to review an interactive version), it is filled with a variety of useful examples and best practices.

Some of the noteworthy highlights specific to SharePoint 2013 are as follows:

  • Virtualization – diagrams illustrating both host and virtual machines are provided as are specific heuristics for the use of Windows Server 2008 R2 and Windows Server 2012 hosts.
  • “Stretched” Farms – distribution of servers across more than one datacenter is no longer supported
  • Request Management – the ability to control the routing of specific requests to specific servers (new to SharePoint 2013) via a variety of criteria is illustrated.
  • Query Management – a query processing “component” replaces the query “role”.  The query processing role is more resource intensive and cannot, in most cases, be instantiated on a web front end.
  • Office Web Application – even though Office Web Applications are no longer provided as “service applications”, examples of their configuration are shown.

What makes this diagram even more interesting is its relevancy for SharePoint 2010.  Some of the generally useful content includes:

  • minimum fault tolerance configurations
  • service application scale out examples
  • search scale out examples
  • small, medium, and large farm deployments
  • physical and virtual topologies
  • database placement heuristics

Since the diagram is also provided in  Visio format , it can serve as a starting point for documenting any farm topology.


Automating SharePoint 2010 Installs

Configuring a SharePoint 2010 Farm is a non-trivial undertaking. Each of the servers in the farm must have the correct software installed. In addition, a myriad of accounts, databases, applications, and services must be correctly installed, created, and configured on each server. Typically, a project team requires three or four different farms (development, integration, validation/test, production). In the case of issues, one or more of these farms must be re-created to match the initial configuration. And, of course, each environment in which a Farm is created is unique – Active Directory, account rules, network configuration, server configuration all tend to vary from vanilla.

Getting all of this right, however, is critically important to the success of a deployment. Mistakes in the configuration and setup of SharePoint 2010 can lead to subtle, hard to detect issues long after an installation is complete.

Most useful for production deployment is SharePoint 2010 full support for Windows PowerShell. PowerShell can be used as the basis for fully automated and repeatable installations. The companion tool to PowerShell is virtualization (cloud or otherwise).

In recent projects, I’ve had great results proceeding as follows:

  • Work with the client to clearly define the architecture for development, integration, validation/testing and production SharePoint 2010 farms
  • Translate these architectures into XML files including servers, applications, accounts, databases, etc.
  • Provision a cloud-based server to emulate the client’s Active Directory and Database environment
  • Provision the required cloud-based servers into the test Active Directory domain
  • Execute Power Shell scripts on each of the servers (to read the XML files and build the SharePoint farm using the collection of cloud-based virtual servers)
  • Test the configuration via both automated and manual means
  • Adjust the specification and configuration until desired results are achieved
  • Build the servers/farm within the clients environment via the XML configuration/scripts
  • Delete and/or archive the cloud based servers

Key enablers to the above:

  • Virtual Servers – easy-to-configure and snapshot virtual servers are necessary to allow the repeated execution of the scripts required to ensure that the configuration is correct. There are a number of vendors providing this service in the cloud including Amazon and Rackspace.
  • PowerShell scripts – I’ve found SPAutoInstall on CodePlex  to be an excellent tool supporting both the XML specification and PowerShell scripts required for a successful install.
  • Verification Tool – in addition to manual verification, use of an automated tool such as SP Doc Gen  to report the farm configuration is quite valuable

I’ve found this approach allows for rapid and high-quality SharePoint 2010 farm deployment. The virtual servers enable iterative testing and verification of the configuration. The scripting makes execution of the installation both rapid and repeatable. The use of a verification tool provides a formal means for insuring the end result is what is expected.

SharePoint 2010 SP1 and Data Management

Along with the Office Team, the SharePoint product team has announced the availability of Service Pack 1 in June.  In addtion to the usual bundling of updates and hotfixes,  the following data management enhancements will be included:
  • Site Recycle Bin – administrators will be able to recover site collections and sites accidentally deleted by their owners in a process similar to that of the Recycle Bin which exists for Lists, Libraries, and Documents.
  • Remote Blob Management – the Move-SPSite cmdlet will provide an option to supress the migration of referenced BLOB files during a site collection move. 
These are two exciting improvements.  It will be well worth installing this service pack for the site recycle bin alone. 
Those who have yet to deploy SharePoint 2010 should consider how these features could simplify various data recovery scenarios.
Keep on the lookout for this release, as there are likely to be other valuable tools included.

SharePoint 2010 and Virtualization

In spite of the ever increasing interest in “the cloud”, the majority of enterprise SharePoint 2010 deployments still involve architecting a set of server-based resources (e.g. CPU, Memory, and Storage) as a target for the deployment of one or more SharePoint 2010 Farms.  These resources are, however, no longer limited to physical servers, but are generally a combination of physical and virtual resources.

Within its just published paper SharePoint 2010 Virtualization Guidance and Recommendations,  Microsoft has provided updated heuristics for SharePoint 2010 virtualization along with specific test results (using Hyper-V)  illustrating various virtualization scenarios.

Any plan for virtualization must begin with a logical architecting of SharePoint services, web applications, and roles.  Only when the general requirements for the required Farm(s) are understood is an analysis of virtualization possible.   The paper frames its examples within the context of several canonical architectures: small-to-medium Farms, Medium-to-large Farms, and High-Availability Architecture. 

Some of the more important points in the paper:

  • Web Front End  is generally the ideal candidate for virtualization, subject to a few qualifications including a preference for hardware over software load balancing
  • Query Component is generally a good candidate for virtualization.  In smaller farms, it can be combined with the Web Front End (but should always be separated from the Index server)
  • Index Servers, when virtualized, should receive most amount of memory and use physical LUN on a SAN
  • In order to improve availability, distribute multiple guest server instances across multiple host servers
  • Components with anticipated high and uniform resource requirement should not be virtualized.  In some cases, this includes SQL server while in other cases it could apply to an Index/Crawl server.  In these cases, virtualization could have negative effects on the overall performance of the guest services.

This paper can serve as a good primer to those new to virtualization but contains information useful to those more experienced in virtualization of SharePoint.

SharePoint FAST 2010

Search is one of the most compelling features of a true enterprise SharePoint deployment.  In the last 6 months, our clients have expressed more and more interest in looking across the entire spectrum of search options available with SharePoint.  The question normally asked: SharePoint or FAST?  In some cases, the choice is clear.  Large document volume or particular functional requirements mandates use of FAST.

Our experience with FAST has been positive.  Its important, however, to be aware of the learning curve associated with a FAST deployment (“with great power comes great responsibility”).  Its ironic that those with SharePoint experience can, in some cases, find the first implementation of FAST more challenging than a SharePoint novice.  Things that appear to work the same do, in some cases, work differently.

In subsequent postings,  I will explore these similarities and differences.  For now,  I’ll summarize these along with some hints for getting started.


Document Previews and Thumbnails using SharePoint FAST 2010

More organizations are investing greater portions of their Intranet deployment budget on improved search functionalities.  Within the SharePoint 2010 product stack, the FAST for SharePoint option provides a whole host of enterprise search capabilities.  FAST for SharePoint not only supports more robust search results but more visual results including visual “previews”.   In the case of MS Word documents, a thumbnail representation of a document’s first page can be included in search results.  In the case of a MS PowerPoint presentation, a clickable preview is supported.

Recently, one of our clients requested that this preview functionality be included in their FAST for SharePoint deployment.  I wanted to share what we learned in the process of honoring this request (as there were a few surprises along the way).

Dependency on Office Web Applications (OWA)

It turns out that these visuals are dependent on the installation of OWA within the SharePoint 2010 Farm.  OWA must be installed on each and every web front end within your SharePoint 2010 Farm.  In our case, the decision to include OWA was made AFTER completion of the Farm configuration, so a very specific sequence of steps needed to be followed to get OWA configured and working.  Fortunately, the steps are well documented here but must be followed exactly.  Unfortunately, the configuration has a surprising side effect of disabling the SSL connection between the SharePoint web front end and FAST.  The Windows PowerShell script used to install the certificate (provided as part of the FAST setup) needs to be re-run to resolve this issue.

OWA Post Install/Configuration

After installation, the OWA feature needs to be activated (or not) for each existing site collection.  If OWA is activated for a site collection, a choice of default document rendering – client or browser – must be made.  In our case, we wanted to minimize the changes to the end user experience, so we choose  to continue to display the documents using the MS Office client.  Regardless of client default choice, a “view in browser” link will appear in both search results and document library views.      (more…)

Portal Adoption and SharePoint 2010

SharePoint 2010 sales are at record levels.  But, its important to keep in mind that Sales <> Usage.

Many times, portal deployments result in less than expected usage.  The shiny new intranet portal or collaboration site is launched with great fanfare, usage is high the first few days/weeks and then suffers a precipitous decline.  I’ve seen this on all too many projects.  In many of these cases, the organization re-implemented based on an old paradigm without any thought to how things might have changed in the 10+ years since they deployed their original Intranet.

Many writers have provided suggestions for how to increase usage of an Intranet/Portal.  This is not, fundamentally, a technology problem, but a question of working backward from the goal of adoption.   That being said, many SharePoint functions can be leveraged to increase adoption.  In some cases, the functions are not well known.  Sometimes, a relatively low cost 3rd party add-on can make all the difference.  In other cases, lack of time in the project schedule leads to these functions being left for “phase 2”.

 Here’s some examples: (more…)

In Place or Not – How To Move To SharePoint 2010

Enough time has passed since the release of SharePoint 2010 that a growing number of organizations with WSS 3 and MOSS 2007 deployments are taking a hard look at when and how to move to the new platform.  I’m getting more and more questions on this subject.

Upgrading from earlier versions of the platform TO WSS 3 and MOSS 2007 was, to put it politely, a challenge.  The good news is that Microsoft has invested a great deal of time and energy providing more viable options.  While there exists a number of variations, the two major approaches are 1) In Place and 2) Database Attach.

In Place

In this scenario, the WSS 3 or MOSS 2007  environment is taken out of service and the new version of SharePoint is installed on the same servers — effectively overwriting the previous version.  During this process, content databases are upgraded.  All of this happens automatically in a quasi black-box.  In order for this approach to be feasible, the current system and servers must meet a number of pre-requisites, most important of which is 64bit hardware and operating system.

Database Attach

In this scenario, a shiny new SharePoint 2010 environment is constructed.  Once the base is built, any and all customizations needed are installed and tested in SharePoint 2010.  Then, content is migrated via attaching individual content database backups to the new environment.


In about half the cases I’ve seen, little analysis is called for – in place migration is just not possible.  Typically, this is a result of limitations of the current hardware and software.  Upgrading the current environment would be more trouble than simply starting anew.  What about the other cases?

An Analogy

Let’s suppose you’ve been offered a wonderful job in a far off city — too good to pass up.  How do you get your family, pets, clothes, and your treasured baseball card collection to your new home?  Well, you’d take an inventory,  get rid of what you don’t need (why pay to move junk),  and then carefully wrap, pack, and label.  (more…)