Planning Farm Topology in SharePoint 2013 - PART II

Streamlined topologies

In this article we can learn various types of topology available in SharePoint 2013. SharePoint 2013 has been out for some time now, and most of the new SharePoint projects are happening on SharePoint 2013. However, when it comes to topology planning and which services should be run on which servers, there isn't enough information available. I wrote this article to resolve all this confusion and to provide an idea of the various types of topology that we can use.

SharePoint 2013 topologies

There are two types of approaches available for the topology as in the following:

Streamlined topologies: the distribution of services and other components in a farm is intended to maximize system resources of server hardware. Streamlined architectures include front-end servers, batch-processing servers, and database servers
Traditional topologies: Topologies are based on traditional approaches to building architectures with Web servers, application servers, and database servers.

My previous article already explained the traditional topology so here we discuss streamlined topology.

Streamlined topologies

A new approach to farm design and as an alternative to the traditional farm design, Microsoft SharePoint® 2013 topologies can be designed to optimize system resources and to maximize performance for users.

Optimizing each tier

Front-end servers: Service applications, services, and components that serve user requests directly are placed on front-end servers. These servers are optimized for fast performance.

farm-topology-in-SharePoint-1.jpg
 
Front-end servers: optimized for low latency, the following services can be run on the web front-end servers:

  • Access Services
  • Business Data Connectivity
  • Managed Metadata
  • User Profile

Batch-processing servers: Service applications, services, and components that process background tasks are placed on a middle-tier of servers referred to as batch processing servers. These servers are optimized to maximize system resources. These servers can tolerate greater loads because these tasks do not affect the performance observed by users.

Batch-processing servers: optimized for load, the following services can be run on the web front-end servers

  • User Profile Synchronization
  • Workflow
  • Machine Translation
  • Work Management

farm-topology-in-SharePoint-2.jpg

Database-servers
: optimized for throughput

Scaling out

The front-end, batch processing, and database tiers are standardized. When another server is needed at one of these layers, an identically configured server is added.

Specialized workloads

Some service applications can cause spikes in performance, such as Excel Calculation Services or PerformancePoint. If an organization uses these service applications heavily then the recommendation is to place these on dedicated servers. If these service applications are used regularly then they can be placed on front-end servers.

Search

The search workload uses many resources. When scaling beyond two batch-processing servers, place this role on dedicated servers. For more information about configuring search components, see the following model: Enterprise Search Architectures for SharePoint Server 2013.

Distributed Cache and Request Management

For small and medium-size architectures, a Distributed Cache can remain on the front-end servers. Beyond 10,000 users this service is expected to work better on dedicated servers. At this scale, Request Management can be added and shared on the same servers with the Distributed Cache. The Request Manager is CPU-intensive. The Distributed Cache is memory-intensive.

Service applications and Services on Server for streamlined topologies
 
If we are using the streamlined approach then the following is the service applications that should run on each server. This table is taken from MSDN so if you have any clarifications then please check the link.

Service application Services on server Server recommendation Additional information
Access Services Access Services Front-end server Enables users of the Access 2013 client to create new Access service applications. View, edit, and interact with Access Services databases in a browser.
Access Services 2010 Access Database Service 2010 Front-end server Allows continued maintenance of SharePoint 2010 Access service applications by using Access 2010 clients and Access 2013 clients. Does not allow users to create new applications.
App Management Service App Management Service Front-end server  
Business Data Connectivity Excel Calculation Services Front-end server  
Excel Services Excel Calculation Services Front-end server or specialized server  
Machine Translation Service Machine Translation Service Batch-processing server The Machine Translation Service uses SharePoint OAuth for file management. The Machine Translation Service Application's app pool account needs permissions from the User Profile Application to function correctly. The Machine Translation Service connects to the Microsoft Translator online service. The Microsoft Translator may collect some data to improve the quality of translations.
Managed Metadata Service Managed Metadata Web Service Front-end server  
Microsoft SharePoint Foundation Subscription Settings Service Microsoft SharePoint Foundation Subscription Settings Service Front-end server You must use Windows PowerShell to deploy this service. Start this service if you have deployed service applications in a multi-tenant mode or if the farm includes sites that use site subscriptions. This service stores settings and configuration data for tenants in a multi-tenant environment. After you start this service, web applications consume the service automatically.
PerformancePoint PerformancePoint Service Batch-processing server or specialized server  
PowerPoint Conversion PowerPoint Conversion Service Batch-processing server This service converts PowerPoint presentations to other formats. It typically runs on one or more application servers. It starts one or more worker processes to perform conversions. When actively converting, a worker process may use up a complete processor core. Memory usage depends on the size and content of files being converted. You can use Windows PowerShell cmdlets to control the number of worker processes that are used. Several other configuration options are also available through Windows PowerShell cmdlets.
Search Lotus Notes Connector Batch-processing server or specialized servers for search Refer to TechNet documentation to learn how to configure Lotus Notes Connector that crawls data on a Lotus Domino server.
Search  Search Host Controller Service Servers that run search components This service manages the search topology components. The service is automatically started on all servers that run search topology components.
Search  Search Query and Site Settings Service Servers that run the query processing component This service load balances queries within the search topology. It also detects farm-level changes to the search service and puts these in the Search Admin database. The service is automatically started on all servers that run the query processing component.
Search  SharePoint Server Search Servers that run search components This service crawls content for the search index. This service is automatically started on all servers that run search topology components. The service cannot be stopped or started from the Services on Server page.
Secure Store Service Secure Store Service Front-end server  
Usage and Health Data Collection     This service application has no associated service on the server.
User Profile User Profile Service Front-end server  
User Profile User Profile Synchronization Service Batch-processing server  
Visio Graphics Service Visio Graphics Service Front-end server  
Word Automation Service Word Automation Services Batch-processing server Performs automated bulk document conversions. When actively converting, this service will fully use one CPU for each worker process (configured in Central Administration). If the service is started on multiple servers, a job will be shared across all the servers.
Work Management Work Management Service Batch-processing server  
  Central Administration Front-end server This service runs the Central Administration site. It can be put on a batch-processing server if security policies of an organization mandate this.
  Claims to Windows Token Service Servers that run Excel Calculation Services and PerformancePoint as well as any other service applications that rely on this service to delegate a SharePoint user identity to an external data source  
  Distributed Cache Front-end server or Distributed Cache and Request Management tier (not both) By default this service is started on all web servers and application servers in a farm.
  Document Conversions Launcher Service Batch-processing servers Schedules and starts the document conversions on a server.
  Document Conversions Load Balancer Service Batch-processing servers Balances document conversion requests from across the server farm. Each web application can have only one load balancer registered with it at a time.
  Microsoft SharePoint Foundation Incoming E-Mail Front-end servers Typically, this service runs on a web server. If you need to isolate this service then you can start it on an application server.
  Microsoft SharePoint Foundation Sandboxed Code Service Front-end servers Start this service on computers that run sandboxed code in the farm. This can include front-end servers and batch-processing servers. This service runs code that is deployed as part of a sandboxed solution in a remote, rights-restricted process and measures the server resources that are used during execution against a site collection-scoped, daily quota.
  Microsoft SharePoint Foundation Web Application Front-end servers This service provides web server functionality. It is started by default on web servers. Custom features scoped to web applications may not display in Central Administration as intended if this service is not started on the server running Central Administration and if the feature cannot be deployed globally.
  Microsoft SharePoint Foundation Workflow Timer Service Batch-processing server This service is automatically configured to run on all web servers in a farm.
  Request Management Distributed Cache and Request Management tier In integrated mode, Request Management runs on all web servers in a farm. In dedicated mode servers in a separate Request Management farm are between the hardware load balancer and one or more SharePoint farms.