Prepare SharePoint Farm – Part 4 Install and Configure SharePoint farm (3 -tier)


In previous posts , we have configured windows cluster, SQL cluster, and NLB for the WFE servers.

Part 1 - Prepare Windows Cluster

Part 2 - Install and configure SQL Cluster

Part 3 - Install and Configure NLB on WFE

In this post we will perform a farm installation and configuration to meet 3-tier farm topology described as shown in above figure

1- Make sure all servers have internet connectivity

2- Turn off firewall on all Application and web front end servers

3- Install windows updates on all servers.

4- Add the following Roles on each server

  • IIS Role
  • Application Server


5- Run SharePoint installation setup on all servers (except the db servers), start with App Server and configure Central administration there , then continue with WFEs as below.

6- run the default.hta –> prerequisites installer


7- The setup will run the following:


8- After pre requisites installation complete , run SharePoint setup:

9- enter SharePoint key

10- Make sure to select Server Farm as we are installing SharePoint on multiple servers for scalability, click next


11- Make sure to select complete, as standalone installation will install SharePoint under SQL Express


12- Determine the installation path, and Data index files path (these index files will save index information regarding search, application server will push the index files regularly to the below location. Index files helps the WFE to find search queries and post search index result to the Search crawler to get the result faster.


13- After installation , we need to run the configuration wizard , this wizard should be executed first on the Application server, where SharePoint Central Administration going to be hosted

14- On application Server, run the configuration wizard, and select New Farm option, since this App server is the first farm in the farm.


15- Select the Cluster SQL instance name (created in Part2 of this series), the SharePoint admin account (SPSadmin) should be admin on database server.


Note: the SQL instance name above is abstracted from the windows cluster as below: (Refer to Post Part 1 &2)


16- Enter a Passphrase, make sure to save this password in some reachable place, this password is needed when ever a new server is going to be joined to the farm: 


17- Select some port to host the Central Administration web application


18- Review summary page, the click Next

19- The Central Administration URL is: http://[AppServerName]:100/

20- Open Central Administration run the Configuration wizard to configure SharePoint service applications:


Note: in more advanced scenarios you can create service applications one by one manually as per the farm requirements., in this post we will walk through creating the service applications as per the default settings

21- Check the services you need for this Farm, to create the required Service Applications:


22- Skip the Web application creation step ,as you want to create the web application on WFE NLB servers not on application server


Note : we will perform some additional configurations for the service applications in more details once we finish the installation for the rest of servers.

23- Now go to WFE Servers , Run Configuration wizard on both WFE servers selecting now the Join Farm option (not create new farm)., make sure to select Connect to existing farm


24- Enter the SQL Instance Cluster name, then press on Retrieve Database names


25- Make sure to supply the passphrase you entered previously while creating the farm on the application server


26- In the summary page , you can click on the advanced option to make sure that the WFE servers are not used to host the Central Administration Web Application (as its hosted on Application server only), then Click next:





Configure SharePoint Farm Server Roles

now we have installed and configured  SharePoint on all servers , we need to configure one of them as App server, and two of them as WFE servers, actually there is no dedicated configuration page to identify the server Roles explicitly ,alternatively the process of identifying the server roles is much dynamic and yet advanced, the trick here is that you identify the server role through the Manage Services page by identifying the appropriate services on each server, as below:

1. Open Central Administration

2. Click on Manage Service on the farm and make sure to perform the following


  • WFE Servers should have the following services started on it to serve users requests only and to act optionally as query indexers for the search,  this is why we stated the search services but in a later step we will eliminate the search role here to act as query indexer only.


Note: the most important service to be started on WFE servers to identify them as WFE is Microsoft SharePoint Foundation web application

when starting the Search service for the first time , you might be prompted to configure the search service as below:




  • Application server should have all the required services started on it, as below (some services are intentionally stopped as they are not needed in this farm


Note:  Microsoft SharePoint Foundation web application Service is stopped here



Search Service Topology configuration

in this section we will identify the search service role on each server, its true that the application server should be responsible for Search , but some components need to be there on WFE servers to handle search queries by client.

As a best practice, its better to install search components on the Web and application tiers in order to optimize performance by distributing the load placed on the servers in the farm. To distribute search components across the farm tiers, you must follow these steps:

  • Move the query components to the Web tier
  • Move the Crawl components to the App tier
  • Keep the Database components to run on SQL Server.

Search is complicated enough that it has its own topology configuration settings. The services that need to be tuned are:

  • Search Query and site settings
  • SharePoint Server Search

You can use a special configuration page to place the query functionality on the WFE and to place the crawling\indexing functionality on the Application Server.

1. Defining the Search Topology, Go to Manage Service Application to configure the Search Topology , click on Search Service Application.


Click modify and make sure to have the following :

  • App Server : change its role to be Crawler , click on the default Crawl component and change it to be assigned to application server.
  • WFE Server: change its role to be Indexer, click the default Query component –> add mirror.

after you finish press on Apply topology

2. Click on content sources on the left menu –> click on the Scope you want to schedule:


3. Scroll down to Crawl Schedule –> create schedule


4. For low search latency and instant search crawling , The configuration is set is the below , which can be changed later on for by the admin as needed

  • Full Crawl setting:


  • Incremental crawl settings:


Note: the above configuration is set to run a full crawl once every night , and to run an incremental crawl every 5 minutes for 24 hours, the interval may vary incase no dedicated application server is there for search.


Create your First Intranet Web Application in the Farm

in this step we will be creating our intranet web application on the NLB URL

1. Go to Central Administration , click manage web applications

2. Create new web application (with NLB considerations) as the following:


Make sure to supply the NLB cluster name in the host header (created in post 3 of this series) , and proper Content database name, this content database will contain the intranet content (documents, lists, etc…


3. After Web application is created, create a site collection as the following:


note how the URL is appearing using the NLB cluster name instead of server name, this is because of the host record we supplied in the previous step.

note: make sure that your NLB cluster name and IP are added as host record to the Active Directory. 


Configure Alternate Access Mapping

In some situations users might need to request to have an easy name for the portal so when ever they want to access the portal, it will be easy to memorize it and type in the URL (e.g. myPortal)

1. Go to Central Administration –> Application management –> Configure Alternate Access Mapping

2. Press on edit public URLs


3. Add a new alternate access mapping


make sure to supply the name that you want users to use when accessing the portal (e.g. myPortal), this URL is then resolved to the NLB cluster URL automatically because of this configuration of this configuration we are doing now.

4. Add binding to the web application at the IIS


5. make sure to add “myPortal” as a host record to the AD 



Comments (17)

  1. Issa Ayyash says:

    since this is sql cluster, each sql instance has a unique cluster name, refer to the previous post to get the idea

  2. Recep YUKSEL says:

    Thank you very much. Very good architecture.

  3. Chris says:


    Step 15- Select the Cluster SQL instance name (created in Part2 of this series), the SharePoint admin account (SPSadmin) should be admin on database server. Note: the SQL instance name above is abstracted from the windows cluster as below: (Refer to Post Part 1 &2)

    What is the syntax for a cluster  sqlserverinstance ???


  4. Arun Asokan says:

    This is the only comprehensive explanation on the whole internet about adding a WFE to a farm, the rest just beat around the bush copying and pasting info from Microsoft documentation. Cheers to you!

  5. HasanK says:

    Intranet and Default URL should be same or diffrent.

  6. Intranet and Default URL should be same or diffrent.

  7. Issa Ayyash says:

    well,the idea from Alternate access mapping is to allow different users to access the same portal using different URL's and/or different authentication providers , i.e. you can use in the default zone htttp://myportal, and use in the in the intranet zone http://contoso

  8. sruj says:


    I am having 2 databse servers (SQL01 and SQL 02), one application server APP01,  2 web front end servers (WEB01 and WEB02).  SQL01, SQL02 and APP01 are sitting on same domain (DOMAIN1.corp) and the other two web front servers on different domain( I have installed SP2013 server on APP01 with a service account called "spadmin@DOMAIN1.corp" and SQL 2012 on SQL01 and SQL 02  with a service accounet called "sqladmin@DOMAIN1.corp".

    Now how do I need to install Sharepoint 2013 on the two web front end servers? what account do i need to use?

  9. Issa Ayyash says:

    Use SPadmin account to setup the web front end servers

  10. Manoj says:

    Hi Issa Ayyash,
    Great Post. Thanks.
    I have installed the Sharepoint 2013 same way. My queries:
    1. step 5 (5. make sure to add “myPortal” as a host record to the AD )which ip have to use?
    2. For me the web app displayed on the app and db servers. In Web servers it keeps on prompting for user id and password

    Kinldly help.

  11. Pavan Kumar Medasani says:

    Hi Issa Ayyash ,

    Thanks for your post.I am searching the whole internet from last few weeks but no one gave the exact information as you give..
    I have one doubt
    Here we are modifying the service to make a server as WFE server, will those changes reflected in registry editor ?
    I mean for WFE server, server role is "WFE" in registry as suggested by microsoft. How to achieve this?
    SharePoint 2010: HKEY_LOCAL_MACHINESOFTWAREMicrosoftShared ToolsWeb Server Extensions14.0WSSServerRole
    SharePoint 2013: HKEY_LOCAL_MACHINESOFTWAREMicrosoftShared ToolsWeb Server Extensions15.0WSSServerRole
    The possible values are as follows:

    SINGLESERVER – means this is a standalone / single server installation
    APPLICATION – means this is an application server on a full farm installation (could also include the web front end role as well if multiple roles are used)
    WFE – means this is a web front-end server on a full farm installation

  12. Amey Mulay says:

    Awesome article thank you for the screenshots.

  13. Tauseef Nabi says:

    I have installed SharePoint as 3 tier architecture, in shich there are 2 App server, 2 WFE server and 2 DB server with load balancing. installation is finished hardware load balancer is used on WFE servers, I can create my test site and acess on server
    but I am unable to login on test site from client machine its unable to authenticate on the site through my windows credentials. Kindly suggest.

  14. TungPT says:

    Can you guide me add one more App server to this farm? I want if one web front end or one App server fail ( hardware), sharepoint farm still work fine.

  15. SharePoint 2013 Developer training Online says:

    I absolutely love your blog and find nearly all of your post’s to be precisely what I’m looking for.">SharePoint 2013 Developer training Online

  16. Amar singh says:

    I am planning to deploy SharePoint 2013 on our infra so same steps will apply on sp 2013 as well ?

  17. Issa Ayyash says:

    yes it should be exactly the same except for search service configuration..btw i have another blog for how to configure SP2013 search look for it 🙂

Skip to main content