Developer forum

Forum » CMS - Standard features » Error message with load balancer running on 9.3.8

Error message with load balancer running on 9.3.8

Imar Spaanjaars Dynamicweb Employee
Imar Spaanjaars
Reply

Hi there,

We set up a new load balanced solution. However, it doesn’t seem to work and we’re getting this error:

2018-02-26 12:49:28.1294|ERROR|LoadBalancing_10.21.20.92|Update of cluster node at 'sitename.com' was unsuccessful. Node will be skipped for 300 seconds.
2018-02-26 12:49:37.8796|ERROR|LoadBalancing_10.21.20.92|Failed to send commands: Url=http://10.21.20.93/admin/api/loadbalancing/receive/b17018b2-cca6-47d3-918a-433ce9ffebd8/, Value=[{"FailedCount":2,"Name":"MemoryCache","CommandValue":"Dynamicweb:UserManagement.AllGroups.Dictionary"};{"FailedCount":1,"Name":"MemoryCache","CommandValue":"Ecommerce:EcomGroups"};{"FailedCount":1,"Name":"GroupNavigation","CommandValue":""}], StatusCode=NotFound, ReasonPhrase=Not Found
2018-02-26 12:49:37.8796|ERROR|LoadBalancing_10.21.20.92|The cluster node 'sitename.com' was disabled because it exceeded 3 failed communication attempts during the last 00:15:00 (hh:mm:ss).
2018-02-26 12:49:37.8796|ERROR|LoadBalancing_10.21.20.92|The following command failed 3 times, and was discarded: Name='MemoryCache', Value='Dynamicweb:UserManagement.AllGroups.Dictionary'.

 

These seem to be different from the errors we’ve seen previously (that dealt with connectivity) and seem to be caused by missing end points (StatusCode=NotFound)?

Do you have any suggestions on how to troubleshoot this further? Note: we're running DFS so the Admin and Files folder should be 100% in sync, except for those files and folders we're excluding (such as the Logs folder)

Thanks!

Imar


Replies

 
Martin Vang
Martin Vang
Reply
This post has been marked as an answer

Hi Imar,

The code that gives you the exception is the following:

using (var client = new HttpClient())
using (var response = client.PostAsJsonAsync(targetUrl, content).Result)
{
if (!response.IsSuccessStatusCode)
{
var errorMessage = $"Failed to send commands: Url={client.BaseAddress}{targetUrl}, Value=[{string.Join(";", content)}], StatusCode={response.StatusCode}, ReasonPhrase={response.ReasonPhrase}";
logger.Error(errorMessage);
return new ApplicationResponse<HttpResponseMessage>(false, response);
}
};
}
 
I dont know why your current setup gives a "Not Found" exception. Maybe create a small test-program with the above code and see if that works? The thing that fails is the .NET part of our application - I would expect that all programs that used HttpClient to connect to our webapi would fail aswell (meaning you need to locate why the server is set up such that this does not work OR find the missing files in Admin).
 
BR
Martin
Votes for this answer: 1
 
Imar Spaanjaars Dynamicweb Employee
Imar Spaanjaars
Reply

Thanks Martin! It turns out that in our case, the web site in IIS was not configured to listen to an IP address only, but only to specific domain names. We added the IP binding and things started to work. Your code example helped find the issue.

Thanks!

 
Martin Vang
Martin Vang
Reply

Glad to hear it. :)

If we need more logging, please let me know. It's really easy to add any amount of information from the response to the log for failed communication attempts, and I might have missed some crucial information - time will tell.

BR

Martin

 
Imar Spaanjaars Dynamicweb Employee
Imar Spaanjaars
Reply

Good to know, thanks!

 

You must be logged in to post in the forum