dual redundant dude server configuration

dear all,

the company i work for having about 30 bts to serve all the customers; both for PtP and PtMP.
we did try to use CCR for dude only but it seems that CCR is not strong enough as we detect every single link among bts’s including the backups, for this problem we will try to migrate it to x86 machine.

the other problem is when the backbone link for this single dude having problem, than dude will report all nodes down. therefore we are thinking about another dude machine (using x86 as well) that will do the same function with additional condition.

  • if one of the bts down, both dude should detect the same problem than do the report. it can be by email, telegram and or text message to cellular phone.
  • if only one dude detect but not the other one, than dude should threat it as false alarm and does not need to report it. this is due to the possibility of link problem at one of the Dudes.

question…

  • is it possible to do the above scenario ?
  • if so, how to do that ?

thank you

Paul

Firstly, maybe you dont have to do it complicated way: There is a “parents” field for each device, so if parent device is inaccessible, TheDude understands that rest of network behind parent might not be down and therefore it should report only the parent device down.

Secondly, as you asked, I would solve it with separate HTTP server which both Dudes will fetch. Then you can create any logic you want in any language.
I can imagine that something like this would work well:

database = {};
function update_status(server,device,status){
	if(typeof database[device] !== "object"){
		database[device] = {};
    }
	database[device][server] = status;
	var count = 0;
	Object.values(database[device]).forEach(function(status){
		if(status == "down"){
			count++;
		}
	});
	if(count >= 2){
		console.log(device + " unavailable from " + count + " Dudes");
	}
}

(thats just really quick sample in JS)