Automatically Assigning Relays at Client Installation Time: How To?

Hi all.

First off, let me just say that I’m new at BigFix but getting to know it with the deployment of the IBM License Metric Tool.

I know that if there are no relays in a BigFix infrastructure, that clients will point to the BigFix server itself when installed.

So I set up a couple of Relays and then selected my existing clients in the BES Console and used Computer Properties / Settings tab / Relay Selection Method, Automatically locate best relay property to have my existing clients automatically choose the best relay.

So far so good.

In the BigFix Information Center, there is a link on how to automatically assign relays at client installation time. When I install new clients, I want them to automatically find the best relay and not default to the BigFix server itself. This document looked like just what I needed. However, when I try to follow the instructions listed, they don’t match what the BigFix console shows. There’s no button “All computers with the property” for example.

The link in the Info Center is here:
http://www-01.ibm.com/support/knowledgecenter/SS63NW_9.2.0/com.ibm.tivoli.tem.doc_9.2/Platform/Adm/c_defaulting_to_automatic_relay_.html%23c_defaulting_to_automatic_relay_

How do I enable all future clients to automatically select the best relay when I push the client software out to my servers? (My servers are mostly Linux though there are some Windows servers as well).

Thanks.

–Mark

The text in the console is now, “Dynamically target by property”

You should try to avoid doing these things manually – i’d recommend making a fixlet that changes these client settings.

Specifically:
https://bigfix.me/fixlet/details/544

1 Like

You can use a clientsettings.cfg file to tell clients to use automatic relay selection at install time. You can also use the same file to point them at a specific relay in the case of manual selection. You can even define a failover relay that will be tried if the other settings for automatic or manual relay selection fail. The client will always try the root server as a last resort regardless of any other settings.

I’m not sure if it is clientsettings.cfg is the correct option for linux or not.

Here is part of the settings I use in my clientsettings.cfg file as an example:

Also, see this: https://github.com/jgstew/tools/blob/master/bash/install_bigfix.sh

Hi jgstew … Thanks for your reply!

Where does this file go? Is it something I place on the client somewhere before I run the client for the first time?

–mark

You place this file along with the EXE installer on Windows or the PKG installer on OS X along with the masthead, all in the same folder. The installers look for this file to get their initial settings as well as the masthead.


Related:

This is exactly what you are looking for:

http://www-01.ibm.com/support/docview.wss?uid=swg21505838

Thanks very much!

–Mark

Hi again … I wanted to experiment with the use of the clientsettings.cfg file in my test lab. Where do I get the “setup.exe” version of the Windows BigFix client? The one available here http://support.bigfix.com/bes/release/9.2/patch5/ appears to use setup.msi under the covers and you can’t use the clientsettings.cfg file with the setup.msi version. Thanks.

–Mark

It does use an MSI under the covers but the EXE installer linked on that page is what you should use for the clientsettings.cfg

The direct link is: http://software.bigfix.com/download/bes/92/BigFix-BES-Client-9.2.5.130.exe

Excellent, thanks … I wasn’t completely sure if that was what I should be using; thanks for the confirmation.

–Mark

1 Like

You can use a clientsettings.cfg file to tell clients to use automatic relay selection at install time.

Wanted to point out that this is not possible (in the scenario in which the BigFix client cannot initially connect to and register with the root BigFix server, i.e. BigFix clients out in the Internet). The BigFix agent first needs to register with a relay in the deployment and gather the main actionsite of the deployment before it is able to begin operating using an automatic relay selection method. The reason for this is because the BigFix client only knows of the relays within the deployment from the relays.dat file that is within the main actionsite. So if the client does not have the relays.dat file because it has not gathered the main actionsite because it has not registered with a relay, then it cannot perform automatic relay selection.

The user will want to make the first method of selection the client performs to be manual selection and follow the instructions in this article: http://www-01.ibm.com/support/docview.wss?uid=swg21505838, with the following settings.

__RelaySelect_Automatic=0
__RelayServer1=http://relay.domain.com:52311/bfmirror/downloads/
__RelayServer2=http://relay2.domain.com:52311/bfmirror/downloads/

Note: I also had a question recently that asked what is the expected behavior of the BigFix client if the settings appear as:

__RelaySelect_Automatic=1
__RelayServer1=http://relay.domain.com:52311/bfmirror/downloads/
__RelayServer2=http://relay2.domain.com:52311/bfmirror/downloads/

The answer is that if __RelaySelect_Automatic is set to a value of 1, then the BigFix client will not consider or use the __RelayServer1 and __RelayServer2 settings in any of its relay selection determinations, they become dead settings.

1 Like

Hi,

In my environment i have installed BIGFIX agent on two Linux machines with BESClient.config file, in that config file i mentioned like below option
__RelaySelect_Automatic=0
__RelayServer1=http://relay.domain.com:52311/bfmirror/downloads/
__RelayServer2=http://relay2.domain.com:52311/bfmirror/downloads/

after installed the agent i can see in client log, the client is register with BIGFIX main server and “Winsock error” appear for the both RELAY (Primary & Secondary) IPs,
I had checked telnet from the client machine to both RELAY IP, but telnet not happen,

Then I have to login the BIGFIX console and select the machine then right click “Edit computer setting”

In that i can see the RELAY (Primary & Secondary) IP in Relay column,

My question here there is no connection from client to RELAY,but connection established from client to server only,
in console how the agent appear RELAY IP?

Thank,
Nagaraj.

@Nagaraj have you tried modifying the settings file with the IP instead of FQDN?

I had checked telnet from the client machine to both RELAY IP, but telnet not happen

If you can’t telnet to the relay on port 53211 using the IP address of the relay, then the client isn’t going to connect to the relay either. Is port 52311 open between client and relay?

–Mark

@techadmin no, we have using only IP for all configuration.

@mtrain There is no connection from client to RELAY port 52311, but i can see in Edit computer setting “Relay IP”.

The client needs to be able to ping and send tcp/52311 to the relay. If the relay doesn’t respond to ping, the client won’t use it, and will fallback to contacting the root server or relay specified in
_BESClient_RelaySelect_FailoverRelay
or
_BESClient_RelaySelect_FailoverRelayList

https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Tivoli%20Endpoint%20Manager/page/Configuration%20Settings

In general, the client expects the client settings that start with two underscores like __RelayServer1 and __RelayServer2 to be volatile; the client may overwrite those with new values as conditions change (like not contacting the relay you specified, and then failing over to another)

1 Like