Scaling SharePoint 2016 On-Premise for Office 365 like performance

I’d like to preface this post with that fact that I will not be focusing on high-availability, disaster recovery, Site Collection and Database allocation, disk subsystems, physical verses virtual server environments, bandwidth, and backups.

Perhaps it is a combination of Microsoft’s release cycle and the changing of the seasons but lately I have been seeing an influx of SharePoint 2016 On-Premise deployments.  Most of these SharePoint 2016 On-Premise deployments are upgrades to SharePoint 2010 and SharePoint 2013 On-Premise environments for customers whose organization is not Cloud ready yet for one reason or another. This recent end of the year demand has led me to come up with a way of comparing Office 365 SharePoint and SharePoint 2016 performance and readiness experience.

The Client’s whose deployments I would like to ‘blog’ about are ranging from 150-500 users with approximately 2 terabytes of SharePoint content.

If we follow Microsoft’s performance scaling for my SharePoint 2016 environment, Microsoft would recommend the following approximate configuration.

Server Specifications – Sample 1

Server Item Quantity
SharePoint 2016 Application / Web Front End CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 300GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SQL Server CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 2000GB
    E Drive: 2000GB
    L Drive: 2000GB
    T Drive: 500GB
  Operating System Windows Server 2016
  Application SQL Server Standard 2016

While the above configuration will run SharePoint 2016 the first performance concern we will notice will be related to Search Indexing.

When we attempt to index and crawl content in the above configuration, the page serving performance of our SharePoint environment will be dramatically degraded.  To solve that challenge we need to add at least one dedicated Indexing / Crawling Server.

Server Specifications – Sample 2

Server Item Quantity
SharePoint 2016 Application / Web Front End CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 300GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SharePoint 2016 Search Index CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 400GB
    D Drive: 500GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SQL Server CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 2000GB
    E Drive: 2000GB
    L Drive: 2000GB
    T Drive: 500GB
  Operating System Windows Server 2016
  Application SQL Server Standard 2016

Of course, now we will have adequate page loading times without performance being degraded by Search Indexing, however our Search Query performance may slow.  To address this performance degradation, we will need to add a dedicated Search Query server.

Server Specifications – Sample 3

Server Item Quantity
SharePoint 2016 Application / Web Front End CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 300GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SharePoint 2016 Search Index CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 400GB
    D Drive: 500GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SharePoint 2016 Search Query CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 100GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SQL Server CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 2000GB
    E Drive: 2000GB
    L Drive: 2000GB
    T Drive: 500GB
  Operating System Windows Server 2016

Now we will have adequate Search and page loading performance, but what if we start to utilize a lot of background services and workflows, our page load times will decrease as our Application server is also our Web Front End, so again, we must increase our server footprint.

Server Specifications – Sample 4

Server Item Quantity
SharePoint 2016 Application CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 300GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SharePoint 2016 Web Front End CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 100GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SharePoint 2016 Search Index CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 400GB
    D Drive: 500GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SharePoint 2016 Search Query CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 100GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SQL Server CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 2000GB
    E Drive: 2000GB
    L Drive: 2000GB
    T Drive: 500GB
  Operating System Windows Server 2016
  Application SQL Server Standard 2016

And last but not least, our user base really would like the features of Office Online Server with the ability to Co-Author and work on Microsoft Office documents within the web browser, so once again, we must expand our configuration to the following.

Server Specifications – Sample 5

Server Item Quantity
SharePoint 2016 Application CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 300GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SharePoint 2016 Web Front End CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 100GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
Office Online Server CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 100GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SharePoint 2016 Search Index CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 400GB
    D Drive: 500GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SharePoint 2016 Search Query CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 100GB
  Operating System Windows Server 2016
  Application SharePoint Server 2016
     
SQL Server CPU 4 Cores – 64bit
  RAM 24GB
  Approximate Hard Drive Configuration C Drive: 100GB
    D Drive: 2000GB
    E Drive: 2000GB
    L Drive: 2000GB
    T Drive: 500GB
  Operating System Windows Server 2016
  Application SQL Server Standard 2016

As you can see, without mentioning backups, high-availability, and disaster recovery; the footprint for a SharePoint 2016 On-Premise environment with comparable performance to SharePoint within Office 365 will be rather large and costly.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s