Randomize Client Initial Registration Server

Hi

We have a number of Public facing relays in our environment.

As part of our setup using Autopilot we install the BigFix Client and get it to register securely using a .cfg .

I know there is a setting called _BESClient_RelaySelect_FailoverRelayList which can be used to specify a list of servers used during the client setup.

However every client will use the first relay specified in the lists as far as I know.

Is there a way to get the client to randomly select one of the relays in the list to securely register. This would help spread the load.

Regards

Matt Gilder

You could consider having an “Entrypoint” relay (or more than one) that all new clients get pointed to. So you’d have entry-1 and entry-2 as the relays in the .cfg installer. Or perhaps a client setting that indicates the relay order should be randomized.

You could then have an action which detects this “newborn” state and redefines the list in a random order:

tuple string items (random integer mod 4) of ("relay 1, relay 2, relay 3, relay 4")

or, if you prefer:

tuple string items (random integer mod 4) of concatenations ", " of ("relay 1";"relay 2"; "relay 3"; "relay 4")

Run in QnA

Q: tuple string items (random integer mod 4) of concatenations ", " of ("relay 1";"relay 2"; "relay 3"; "relay 4")
A: relay 2
T: 0.368 ms

Q: tuple string items (random integer mod 4) of concatenations ", " of ("relay 1";"relay 2"; "relay 3"; "relay 4")
A: relay 1
T: 0.300 ms

Q: tuple string items (random integer mod 4) of concatenations ", " of ("relay 1";"relay 2"; "relay 3"; "relay 4")
A: relay 2
T: 0.232 ms

Q: tuple string items (random integer mod 4) of concatenations ", " of ("relay 1";"relay 2"; "relay 3"; "relay 4")
A: relay 1
T: 0.136 ms

Q: tuple string items (random integer mod 4) of concatenations ", " of ("relay 1";"relay 2"; "relay 3"; "relay 4")
A: relay 3
T: 0.068 ms

you’d swap mod # with the actual number of relays to choose from. There’s probably some much more complex version of this that auto calculates the max:

tuple string items (random integer mod (number of substrings separated by "," of it)) of concatenations ", " of ("relay 1";"relay 2"; "relay 3"; "relay 4")

4 Likes

Hello Matt, We have created a similar solution to provision devices with AutoPilot and deploy the agent with InTune using a .cfg. In your solution, are you hybrid joining the devices or only AzureAD joining? We are only performing an AzureAD join which is causing a few challenges. We would like to avoid hybrid joining devices after reading several posts of problems and reliability to hybrid joining. Microsoft has also recommended against it. However, we can’t figure out a way to manage groups in BigFix unless we hybrid join and we prefer to stick with InTune instead of MCM.

Thanks!

Rony