Clarity

 View Only

 Issue with Multicasting on version 16.0

Feras Khatib's profile image
Feras Khatib posted Aug 18, 2022 01:52 PM

We are in the process of moving our application to brand new application servers. We have moved all of our non-production servers with no issue. For our pre-production servers, we are having a multicast issue. There are 10 servers in our cluster configured as such. 

27 - app
28 - app
29 - app
30 - app
31 - app
32 - app
33 - app
34 - xog server
35 - bg
36 - bg and csa

All of the multicast and port settings are configured the same (and we've tried different combinations of ports and addresses). Only servers 35 and 36 will show up in the csa or through the tower commands. We have run traceroute commands and made sure all of the servers are in the same subnet but nothing has fixed the issue. 

Any idea what to try? or are there any specific commands or things I can ask our network teams to verify any potential issues with the servers? 

Suman Pramanik's profile image
Broadcom Employee Suman Pramanik
Hi Feras

There are multicast test documented here

Also you can switch to JDBC Ping as documented here 
Paul Schofield's profile image
Paul Schofield
Hi there,

You could check the settings of the distributed and auto-discovery attributes in the properties.xml file. 

If those are both set to true then it looks like the multicast UDP traffic is being blocked somehow. Some routers (eg Cisco) disable it by default. I've migrated a couple of customers to the Amazon Cloud (AWS) where multicast isn't allowed at all. Instead we use JDBCPing to do much the same thing using the database to discover which nodes are present, and it uses the Beacon/Client port.

JDBC Ping relies on having ephemeral ports open. The following commands in a powershell window opened as administrator will enable things. They should be executed on all servers in the cluster.

New-NetFirewallRule -DisplayName 'Clarity (TCP Ephemeral)' -Enabled True -Direction Inbound -Action Allow -LocalPort 49152-65535 -Protocol TCP

New-NetFirewallRule -DisplayName 'Clarity (UDP Ephemeral)' -Enabled True -Direction Inbound -Action Allow -LocalPort 49152-65535 -Protocol UDP

New-NetFirewallRule -DisplayName 'Clarity (TCP)' -Enabled True -Direction Inbound -Action Allow -LocalPort 9090-9091 -Protocol TCP

New-NetFirewallRule -DisplayName 'Clarity (WEB)' -Enabled True -Direction Inbound -Action Allow -LocalPort 80,8080,8090,8093,443 -Protocol TCP

After this it’s just a matter of ensuring that the distributed attribute is set to true, adding in the useJDBCPing=”true” field into the properties file in the <nsa> section, and setting autoDiscovery=”true”.

Good luck.

Paul