Load Balance Runtime Server

Topics: Usage Scenarios
Jul 7, 2008 at 5:41 PM
Trying to setup a load balanced MSE infrastructure:

I have one server (SRV1) runs all MSE components, including Runtime service, Catalog service and database. The second server (SRV2) runs only Runtime service. Here are a few problems:

1. On SRV2, when "Select a Different Service Catalog Connection" for MSE Management Console, I can only use IP address of SRV1, like http://10.10.10.1:9000/ServiceCatalog/WS. Using http://SRV1:9000/ServiceCatalog/WS gives me Service Catalog Not Found error. This problem is not a big deal, I have no problem with IP address.

2. On SRV2, under Runtime Servers, I configure Catalog URI as http://10.10.10.1:9000/ServiceCatalog/WS, and WsHttp (Soap12) as Catalog Binding. I am getting "Error trying to connect to catalog at address: http://10.10.10.1:9000/ServiceCatalog/WS error description: The provided URI scheme 'http' is invalid; expected 'net.pipe'." So, I can't start MSE Runtime Server successfully.

3. For the same MSE Runtime Server, hosted on two separated physical servers. How do I configure Host Name with two different physical server names?

Appreciated, if anyone can help. Thanks

KWu
Developer
Jul 9, 2008 at 3:21 PM
#1:  I'm not aware of any issues with specifying a machine name vs. IP address for connecting to the catalog.  I assume you don't have other name resolution problems when trying to connect across machines?

#2: You'll need to update the binding in the runtime server's config file so it knows where to go to find the catalog service.  In Microsoft.MSE.Runtime.ServiceHost.exe.config locate the CatalogBindnig element and change the binding from netNamedPipeBinding to the binding you want.  You will also need to locate the CatalogUri element and change the uri accordingly.  This is a bit of a catch22 since specifying this information in the management tool for the runtime doesn't take effect unless the runtime can initially connect to the catalog service to get this information.
 
#3: There is a one-to-one relationship between physical servers and runtime servers when you are planning on having multiple runtimes in your MSE environment.  Therefore, you need to add a definition of a runtime in the management tool for each physical server that will be hosting the runtime.   Then you will specify which endpoints each runtime will host.  In your case since you are planning on load balancing the runtimes, each runtime will likely be configured to host the same endpoints.



KWu wrote:
Trying to setup a load balanced MSE infrastructure:

I have one server (SRV1) runs all MSE components, including Runtime service, Catalog service and database. The second server (SRV2) runs only Runtime service. Here are a few problems:

1. On SRV2, when "Select a Different Service Catalog Connection" for MSE Management Console, I can only use IP address of SRV1, like http://10.10.10.1:9000/ServiceCatalog/WS. Using http://SRV1:9000/ServiceCatalog/WS gives me Service Catalog Not Found error. This problem is not a big deal, I have no problem with IP address.

2. On SRV2, under Runtime Servers, I configure Catalog URI as http://10.10.10.1:9000/ServiceCatalog/WS, and WsHttp (Soap12) as Catalog Binding. I am getting "Error trying to connect to catalog at address: http://10.10.10.1:9000/ServiceCatalog/WS error description: The provided URI scheme 'http' is invalid; expected 'net.pipe'." So, I can't start MSE Runtime Server successfully.

3. For the same MSE Runtime Server, hosted on two separated physical servers. How do I configure Host Name with two different physical server names?

Appreciated, if anyone can help. Thanks

KWu


Jul 11, 2008 at 3:35 PM
#1: Both IP and name work, if catalog service is on the same machine. But only IP address works, if catalog service runs on a different machine. I am able to load up wsdl (http://SRV1:9000/ServiceCatalog?wsdl) using browser, I think name resolution should be OK.

#2 and #3 are working.

Thank you very much