In order to have an OutSystems Farm with multiple Front-Ends working on the Amazon Cloud, you need to setup the load balancing so that all HTTP requests are distributed between your several OutSystems servers. The goal of this HOWTO is to explain how the Load Balancing configuration is done in the Amazon Cloud, using the Elastic Cloud Computing (EC2) services (as depicted in the image below).
Throughout this HOWTO I assume you already have the two OutSystems Front-Ends running in your Amazon AWS account. You have information about how to setup the OutSystems servers in the Platform Server 5.0 - .NET Install Checklist document. For more information, you should also check the OutSystems Architecture & Overview document and the forum discussion Best Way to do load balancing front end servers.
Sign into the Amazon Web Services (AWS) Management Console here.
After signing-in, you can see your two running instances by going to the Instances option in your left menu. I am assuming you already have your two OutSystems Front-Ends running. Click on the Load Balancers option to start the Load Balancer configuration.
To start the configuration of a Load Balancer, click [Create Load Balancer]. This will start the Create New Load Balancer wizard.
In the Define Load Balancer step of the wizard, specify the of your load balancer name (OSFarm-LoadBalancer in the example below), add the Microsoft IIS application in the Listener Configuration and press [Continue].
In the Configure Health Check step of the wizard, you must specify that the Ping Path of your service is /ServiceCenter/_ping.aspx. The Advanced Options can be adjusted depending on your specific infrastructure requirements.
In the Add EC2 Instances step of the wizard, you must specify which of your running instances should be considered for the HTTP request distribution of the load balancer. In our example, we select the two instances that are running as OutSystems Front-Ends.
Review the Load Balancer configuration and press [Create].
If you now select the Load Balancers option in the left menu, you can see the details of the Load Balancers that you have configured.
In our example, we can see that we have configured a new load balancer that has the public DNS OSFarm-LoadBalancer-1554538748.us-east-1.elb.amazonaws.com (this DNS was automatically generated by Amazon when you create the Load Balancer).
Any request that you make to the server OSFarm-LoadBalancer-1554538748.us-east-1.elb.amazonaws.com is now distributed between our two front-ends.
11. Now that you have your two OutSystems Front-Ends receiving HTTP requests, if you go to the Screen Monitoring in Service Center you can see how screens are being processed by both servers.