Last week, I covered this topic as part of an Office 365 Saturday SP2016 for IT Pro session in Melbourne, Australia. Minrole generated the most questions/discussions in the room hence why I am putting this post together…
I would recommend taking a look at this post from Bill Baer. It’s a comprehensive overview of MinRole. There is no point rehashing the info as I couldn’t say it better myself.
Instead, I thought I would document some of the questions/discussion topics I have encountered thus far… I hope it helps…
Question 1: What is MinRole?
The short answer: A pre-configured (code based) mapping between SharePoint services and server Roles.
The long answer: A few years ago, SharePoint 2013 was released with Topology Design guidance. Although this was a great step in the right direction, it still allowed a lot of Administrators to make their own mistakes… for some it was a case of “choose your own adventure”.
Minrole is about baking this guidance into the code itself to provide these advantages:
- Simplify the on-premises farm deployment.
- Simplify capacity planning and provide predictable performance characteristics (e.g. Low latency for Web front end servers, high throughput for Application servers).
- Simplify farm manageability for Admins by not having to pick and choose which services should run where. SharePoint will monitor and ensure it is configured properly and in compliance.
- Predefined template that affects the SharePoint services running/stopped in a given role.
- Make troubleshooting easier by having the right services running on the right servers.
- Quickly provision a new server within a given role to replace a malfunctioning one during an outage.
Note: It does not impact Database naming conventions for Service Applications.
Question 2: How many Roles are there?
MinRole is made up of 5 (+SingleServerFarm) predefined configurations:
Role name | Description |
Distributed cache | Serving distributed cache for the farm. Optionally, the server assigned to this role can load balance end user requests among the web front ends. |
Web front end | Serving the requests from end user. The servers assigned to this role should be optimized for low latency. |
Application | Serving the backend jobs or the requests triggered by backend jobs. The servers assigned to this role should be optimized for high throughput. |
Search | Reserved for Search. |
Special Load | Reserved for services that needed to be isolated from other services. |
Single Server Farm | All services are provisioned on the server assigned to this role. Designed for development and eval. |
Question 3: When do I get to choose my server’s role?
[From GUI]During the configuration wizard, the Specify Server Role screen will appear between Passphrase and Configure SP Central Admin pages.
(It isn’t a choice you have to make during the installation itself)
[From Command-line] A new parameter localserverrole is also available from psconfig or New-SPConfigurationDatabase for scripted installs.
Question 4: Can we mix roles? E.g. Application and Search?
Technically you can. For instance, you can start the Search services on an Application server (via powershell) however new Health Analyser Health Rules will generate a warning indicating the server is out of compliance. Also an option to programmatically resolve the issue and bring the server back within compliance with its configured role definition will be available.
Personally rather than “breaking the rules” I would leverage the “Special Load” role to avoid the warnings (for instance if I didn’t have enough servers – explained in detail in the next question).
Question 5: How many servers do I need to build a compliant farm?
Without High Availability (HA)
Role name | No. of servers |
distributed cache | 1 |
Web front end | 1 |
Application | 1 |
SEARCH | 1 |
SPECIAL LOAD | 1 (optional) |
Total: 5-6 (inc 1 for SQL) |
With min High Availability (HA)
Role name | No. of servers |
distributed cache | 2 |
Web front end | 2 |
Application | 2 |
SEARCH | 2 |
SPECIAL LOAD | 2 (optional) |
Total: 10-12 (inc 2 for SQL) |
Question 6: Can a server switch role if I change my mind or am I locked in?
Absolutely. Role Conversion is available from Central Administration (CA).
URL: http://server:port/_admin/RoleConversion.aspx
Question 7: Do I have to use MinRole? I know what I’m doing and don’t want to me “boxed in”.
Refer to the next question and leverage the “Special Load” role.
Question 8: Is MinRole the only topology available in SharePoint 2016?
This is the OOB topology but not the only topology. SharePoint Admins can still tweak services to suit their specific requirements (Refer to Question 4).
Question 9: Which role should I deploy first?
Personally I would deploy the Application role first to default Central Administration (CA) on that box. In saying that refer to Spence’s blog post here and here for CA best practices.
Question 10: I see there is a new role called “Special Load”. What’s so special about it?
Special Load role is un-usual for the following reasons:
- SharePoint will not provision any services.
- SharePoint Admins have full control of services.
- Health Rules will not scan this role.
- Vendors can integrate with other MinRoles if they choose to however if they don’t this is a great spot for 3rd party tools and other workloads such as Project Server 2016 (Service Application).
Question 11: How can I check if my roles are in compliance?
New Health rules (Role Enforcement and Monitoring) have been created to check on a daily basis (timing can be changed).
The rules are on by default but can be disabled in the event that it doesn’t suit your business requirements.
Question 12: I heard App Fabric was deprecated. Will the Distributed Cache Role still support App Fabric?
Yes, App Fabric is deprecated but supported in SharePoint 2013 and 2016.
Question 13: Can I add servers to an existing “Single Server role” farm?
No, once a farm is created using the “Single Server role”, you will not be able to add additional servers to that farm. This role is specifically designed for Dev environments or evaluation purposes.
Question 14: Will Search role host Web Applications to support crawling?
Yes.
Question 15: Can a server have two roles?
No, a server can only have one role however additional services can be started via Powershell. Of course by doing so, your server may not be compliant.
Question 16: is there a Central Administration (CA) role?
No there isn’t. Also, the Central Administration site will run on all roles.
Question 17: Will there be any UI changes in CA to support MinRole?
Yes.
New options under System Settings
New column added called Roles (under Services)
Services in farm
Question 18: Does MinRole impact licensing?
Although it’s too early to tell, MinRole is unlikely to impact licensing. At this point, MinRole will be available in STD/ENT.
On a side note, SharePoint Foundation is no longer available in SharePoint 2016.
Question 19: Does MinRole impact the database tier?
No, MinRole only impacts SharePoint servers/services.
Question 20: Will MinRole impact the ability to Publish/Consume Service Applications to/from other farms?
No it doesn’t. SharePoint 2016 will still support shared services infrastructure.
Question 21: Which role do we use for Project server 2016?
The Special Load role (Refer to Question 10).
Question 22: Is Office Web Apps (WAC) impacted by MinRole?
No it isn’t. Office Web Apps continues to live in its own farm external to the SharePoint farm.