Creating a web farm on the controller server
To create a web farm on the controller server, follow these steps.
1. Allocate a separate machine for the controller. Install on this machine:
- IIS
- Microsoft Application Request Routing Version 3 for IIS (3 additional components will be installed automatically with it).
If all the components are successfully installed, a respective notification will be displayed.
2. Open IIS Manager. Find Default Web Site in the tree.
3. In the application pool, select DefaultAppPool, open its Advanced Settings and set up the following:
- In the Idle Time-out (minutes) field set 0.
- In the Regular Time Interval (minutes) field set 0.
This is necessary to avoid delays or errors, that occur in case of a timeout or unexpected restart since all the HTTP requests and responses go through the application request routing system.
4. After installing all the features from step 1, the IIS Manager tree will contain the Server Farms element.
5. Right-click on this element to open the context menu and select Create Server Farm… .
6. The Create Server Farm window will open. In the Server farm name field, enter the name of the new farm – ELMA3 and click Next.
7. The Add Server window will open. In the Server address field, enter the first server IP address or name (in this example, VM 2) and click Add.
8. In a similar way, add the IP addresses or names of all the required web servers. To save the changes, click Finish.
9. If all the features from step 1 were installed successfully, a notification will be displayed at this step, stating that a URL Rewrite rule can be created automatically, to route all the incoming requests. Click Yes.
10. In the IIS manager, the Server Farm element will have a nested element with the name of the new farm - ELMA3. Next, you need to define certain parameters of the new farm.
11. Configure load balancing using application request routing. This procedure sets the application request routing using an algorithm, which evenly distributes incoming requests among web servers.
Select the new ELMA3 farm and on the Server Farm pane, double-click on Load Balance.
12. On the opened Load Balance page, in the Load Balance algorithm field select Weighted round robin and click Apply on the right panel.
13. Select the new ELMA3 farm and on the Server Farm pane double-click Routing Rules.
14. On the opened page check the boxes Use URL Rewrite to inspect incoming requests and Enable SSL offloading. To save the changes, Apply on the right panel.
15. Select the new ELMA3 farm and on the Server Farm pane double-click Health Test.
16. On the opened page, in the:
- URL field, specify a string like:
http://VM1/StartInfoHandler.ashx?type=Availability
where VM1 is the controller server name; - Interval (seconds) field, set 5;
- Time-out (seconds) field, set 30;
- Acceptable status codes field, set 200.
To save the changes, click Apply on the right panel.
17. Select the new ELMA3 farm and on the Server Farm pane double-click Server Affinity.
18. On the opened page, check the Client Affinity box. If this box is selected, all the requests will be directed to the server, which received the first request from this web browser, otherwise, to the first free server.
To save the changes, click Apply on the right panel.