A SharePoint farm topology is used to describe the type or function of a particular SharePoint farm. When creating a SharePoint farm, roles are used to determine the functions of servers operating in a farm. There are eight server roles (seven predefined roles and one custom role), which are split across three categories:
- Dedicated roles
- Shared roles
- Special roles
These roles are used when deploying a chosen farm topology, as shown:
We'll look at those role categories and topologies next.
Dedicated roles
Dedicated roles are typically used in large-scale farms, but can also be used with smaller deployments or be added to servers that are configured for shared roles. The dedicated role layouts have been optimized for performance and scalability. The dedicated roles and descriptions are listed in the following table:
Server Role |
Description |
Notes |
Front-end |
This performance-optimized role is designed to host service applications, services, and components that render user requests. |
The Application and Front-end server roles host a similar set of services, though they are optimized for different purposes. The Front-end role is performance-tuned to deliver user traffic. Servers with the Front-end server role can be used to run service instances that would have been hosted on the Application server role in previous versions of SharePoint Server. |
Application |
Servers with this throughput-optimized role are used to host service applications, services, and components that execute backend requests, such as search crawl requests and timer jobs. |
With SharePoint 2016 and later, the term application server has changed from a user-serving role to more of a backend operations role. In SharePoint 2016 and later, the Application server role is used to run background tasks and jobs, such as search crawl requests and timer jobs. |
Distributed Cache |
The Distributed Cache role is used to host service applications, services, and components that are required for a distributed cache. Distributed Cache provides in-memory caching for features such as newsfeeds, authentication, and security trimming. |
While you can have multiple servers with the Distributed Cache role in a farm, they are not redundant from a cached data resiliency perspective. Each server's cache is unique to itself. If a server hosting this role goes down, the data stored in its cache will be unavailable. |
Search |
The Search role is used to host service applications, services, and components that are required for search. |
All servers with the Search role must be configured as part of the search topology before they can be used. |
There may be situations where a farm design doesn't require dedicated roles, such as smaller departmental farms. In that case, you can use some of the pre-defined configurations, where functionalities are combined. We'll look at these shared roles next.
Shared roles
Shared role deployments are organized to allow a smaller number of servers in a farm by combining roles together. Shared role deployments can require more resources per server due to the increased number of components running. The shared roles and descriptions are listed in the following table:
Server Role |
Description |
Front-end with Distributed Cache |
This is a shared role that combines the Front-end and Distributed Cache roles on the same server. |
Application with Search |
This is a shared role that combines the Application and Search roles on the same server. |
Shared roles are common deployments for smaller farms (such as departmental farms or development farms). Next, we'll examine some special situations that require manual configuration.
Special roles
Finally, there is a special roles designation. Environments configured this way are typically used for development, testing, or for custom deployments where MinRole is not used to manage the services. The special roles and descriptions are listed in the following table:
Server Role |
Description |
Notes |
Single-Server Farm |
Servers configured with the Single-Server Farm role are appropriate for development, testing, or small-scale production tasks. The server will host all of the roles. |
In previous versions of SharePoint, this was known as the standalone install mode. The Single-Server Farm role does have some differences than its predecessor—namely, the SharePoint administrator must configure the SQL server manually beforehand and must manually configure service applications afterward. A SharePoint farm using the Single-Server Farm role does not support more than one SharePoint server in the farm. |
Custom |
Servers configured with the Custom role will be managed manually. |
This server role provides a lot of customization and flexibility, allowing the administrator to specifically determine which services will run. Typically, this role is used for applications or services that are not compatible or integrated with MinRole. MinRole cannot manage servers with the Custom role. |
If you decide to later change a server's purpose on a farm, you can change its role using SharePoint Central Administration. The only stipulation is that you can only convert a server into a Single-Server Farm role if it's the only server in a farm.
In the next section, we'll review the services that will be configured with the various MinRole deployment options. The services installed with each role are important so that you can choose the appropriate server roles for your topology to ensure you have the right components, as well as optimal numbers of servers to support the high-availability and performance requirements.
Role services
The MinRole server configuration process installs and configures the appropriate services for each role. The following table lists the installed roles based on the MinRole option chosen. Services listed in italics are hidden as they are not internal to SharePoint and are not intended to be directly controlled:
Server Role |
Installed Services |
---|---|
Front-end |
Access Services Access Services 2010 App Management Service Business Data Connectivity Service Claims to Windows Token Service Information Management Policy Configuration Service Machine Translation Service The Managed Metadata web service Microsoft Project Server Calculation Service Microsoft Project Server Events Service Microsoft Project Server Queuing Service Microsoft SharePoint Foundation Administration Microsoft SharePoint Foundation Sandboxed Code Service Microsoft SharePoint Foundation Subscription Settings Service Microsoft SharePoint Foundation Timer Microsoft SharePoint Foundation Tracing Microsoft SharePoint Foundation Usage The Microsoft SharePoint Foundation web application Microsoft SharePoint Insights PerformancePoint Service The Portal service Project Server Application Service Request Management Secure Store Service Security Token Service SSP Job Control Service User Profile Service Visio Graphics Service |
Application |
App Management Service Application Discovery and Load Balancer Service Business Data Connectivity Service Claims to Windows Token Service Information Management Policy Configuration Service Machine Translation Service The Managed Metadata web service Microsoft Project Server Calculation Service Microsoft Project Server Events Service Microsoft Project Server Queuing Service Microsoft SharePoint Foundation Administration Microsoft SharePoint Foundation Incoming E-Mail Microsoft SharePoint Foundation Subscription Settings Service Microsoft SharePoint Foundation Timer Microsoft SharePoint Foundation Tracing Microsoft SharePoint Foundation Usage The Microsoft SharePoint Foundation web application Microsoft SharePoint Foundation Workflow Timer Service Microsoft SharePoint Insights The Portal service The PowerPoint Conversion service Project Server Application Service Request Management Secure Store Service Security Token Service SSP Job Control Service User Profile Service Word Automation Services |
Distributed Cache |
Claims to Windows Token Service (Prior to SharePoint Server 2016 FP 1) Distributed Cache Microsoft SharePoint Foundation Administration Microsoft SharePoint Foundation Timer Microsoft SharePoint Insights Microsoft SharePoint Foundation Tracing Microsoft SharePoint Foundation Usage The Microsoft SharePoint Foundation web application (Prior to SharePoint Server 2016 FP 1) The Portal service Request Management (Prior to SharePoint Server 2016 FP 1) Security Token Service SSP Job Control Service |
Search |
Application Discovery and Load Balancer Service Claims to Windows Token Service (Prior to SharePoint Server 2016 FP 1) Microsoft SharePoint Foundation Timer Microsoft SharePoint Foundation Tracing Microsoft SharePoint Foundation Usage Microsoft SharePoint Insights The Portal service Search Administration Web Service The Search Host Controller service Search Query and Site Settings Service Security Token Service SharePoint Server Search SSP Job Control Service |
Custom |
Distributed Cache Microsoft SharePoint Foundation Administration Microsoft SharePoint Foundation Timer The Microsoft SharePoint Foundation web application |
Single-Server Farm |
Access Services Access Services 2010 App Management Service Application Discovery and Load Balancer Service Business Data Connectivity Service Claims to Windows Token Service Distributed Cache Information Management Policy Configuration Service Lotus Notes Connector Machine Translation Service The Managed Metadata web service Microsoft Project Server Calculation Service Microsoft Project Server Events Service Microsoft Project Server Queuing Service Microsoft SharePoint Foundation Administration Microsoft SharePoint Foundation Incoming E-Mail Microsoft SharePoint Foundation Sandboxed Code Service Microsoft SharePoint Foundation Subscription Settings Service Microsoft SharePoint Foundation Timer Microsoft SharePoint Foundation Tracing Microsoft SharePoint Foundation Usage The Microsoft SharePoint Foundation web application Microsoft SharePoint Foundation Workflow Timer Service Microsoft SharePoint Insights PerformancePoint Service The Portal service PowerPoint Conversion Service Project Server Application Service Request Management Search Administration Web Service The Search Host Controller service Search Query and Site Settings Service Secure Store Service Security Token Service SharePoint Server Search SSP Job Control Service User Profile Service Visio Graphics Service Word Automation Services |
Front-end with Distributed Cache |
Access Services Access Services 2010 App Management Service Business Data Connectivity Service Claims to Windows Token Service Distributed Cache Information Management Policy Configuration Service Machine Translation Service The Managed Metadata web service Microsoft Project Server Calculation Service Microsoft Project Server Events Service Microsoft Project Server Queuing Service Microsoft SharePoint Foundation Administration Microsoft SharePoint Foundation Sandboxed Code Service Microsoft SharePoint Foundation Subscription Settings Service Microsoft SharePoint Foundation Timer Microsoft SharePoint Foundation Tracing Microsoft SharePoint Foundation Usage The Microsoft SharePoint Foundation web application Microsoft SharePoint Insights PerformancePoint Service The Portal service Project Server Application Service Request Management Secure Store Service Security Token Service SSP Job Control Service User Profile Service Visio Graphics Service |
Application with Search |
App Management Service Application Discovery and Load Balancer Service Business Data Connectivity Service Claims to Windows Token Service Information Management Policy Configuration Service Machine Translation Service The Managed Metadata web service Microsoft Project Server Calculation Service Microsoft Project Server Events Service Microsoft Project Server Queuing Service Microsoft SharePoint Foundation Administration Microsoft SharePoint Foundation Incoming E-Mail Microsoft SharePoint Foundation Subscription Settings Service Microsoft SharePoint Foundation Timer Microsoft SharePoint Foundation Tracing Microsoft SharePoint Foundation Usage The Microsoft SharePoint Foundation web application Microsoft SharePoint Foundation Workflow Timer Service Microsoft SharePoint Insights The PowerPoint Conversion service The Portal service Project Server Application Service Request Management Search Administration Web Service The Search Host Controller service Search Query and Site Settings Service Secure Store Service Security Token Service SharePoint Server Search SSP Job Control Service User Profile Service Word Automation Services |
While the indicated services are normally hidden, they can be viewed through SharePoint Management Shell with the (Get-SPServer <server_name>).ServiceInstances command.
Knowing which services are grouped together will help guide your selection of farm topologies, which we'll look at next.
Farm topologies
A farm topology is used to describe a type of SharePoint farm. There are three core SharePoint farm topologies:
- Content farm: A content farm hosts sites and service applications. It's the most common and broad type of farm. Content farms optionally consume services applications from other farms.
- Services farm: A services farm hosts service applications that are consumed by other farms.
- Search farm: This specialized service farm hosts Search service applications that are used by other farms.
Each farm type requires a different mix of server roles in order to function correctly. The following table describes which roles are required for which type of farm:
Server Role |
Required for Content Farm? |
Required for Services Farm? |
Required for Search Farm? |
Front-end |
X |
No |
No |
Application |
X |
X |
No |
Distributed Cache |
X |
X |
No |
Search |
Only if hosting Search |
Only if hosting Search |
X |
After selecting which type of farm you'll design, you can choose which of the server roles from the preceding table are appropriate for the farm. Then, once you have identified the type of farm you want to design and deploy, you'll need to address the high availability and disaster recovery concerns.