How can I force a bamboo remote agent to connect to a specific server with port 54663
Asked by Olaf Heemskerk:

I'm trying to connect a bamboo remote agent to bamboo. In the log file of the remote agent I find the line

\[BambooActiveMQConnectionFactory\] Setting broker URL to 'failover:(tcp://our_bamboo_server.domain_old:54663?wireFormat.maxInactivityDuration=300000)?maxReconnectAttempts=10\&initialReconnectDelay=15000'

The only thing I see is that the bamboo server it's trying to connect to is our_bamboo_server.domain_old (anonymised name). It should however be our_bamboo_server.domain_new.

Long before installing the remote agent we have changed our domain from domain_old to domain_new.  
The bamboo instance is running on a Red-Hat linux server which has been migrated from domain_old to domain_new.

Now my question is two fold:

1. How does the bamboo-remote-agent determine the name of the bamboo server. In it's wrapper.conf file it only states the configuration:  
   wrapper.app.parameter.2=http://our_bamboo_server/bamboo/agentServer/  
   I could not find any other reference to our_bamboo_server.
2. Is it possible to add/change something in the configuration of the remote agent to force the connection to our_bamboo_server.domain_new:54663.

Thanks in advance.


Answers:
author: Adam Myatt
body: The Bamboo server names is indeed specified in the wrapper.conf file as you listed in Q1. Additionally, check your Bamboo server's bamboo.cfg.xml file.

Ensure the correct domain is set for BOTH these properties :

bamboo.jms.broker.client.uri

...and...

bamboo.jms.broker.uri

Then in the Bamboo Admin UI, in the General Section ensure the Base URL is set correctly as well.

comments: author: Adam Myatt
body: Also this might be reflected if you reverse proxy through a server like Apache HTTPD to hide the actual host and/or port Bamboo is running on.

Additionally double check your old and new servers don't resolve to the same DNS entry, might be causing a conflict. If so perhaps on your remote agent machine you may want to flush the dns cache.


author: Olaf Heemskerk
body: I never specify the domain anywhere, since normally I only have to specify the server itself.

I have only set

bamboo.jms.broker.uri=tcp://our_bamboo_server:54663

Must I also set **bamboo.jms.broker.client.uri** in the bamboo-init.properties file on the server?

And if so what should it be set to?


author: Olaf Heemskerk
body: The option

bamboo.jms.broker.client.uri

in the bamboo.cfg.xml was set incorrectly. This pointed to the old domain instead of the new domain. So thanks Adam.


author: Brent Villalobos
body: I don't place a lot of confidence in the NetworkAnalyser. I gave it a jibberish URL and got "Connection established!" messages:

```
% java NetworkAnalyser http://blahblahdlbhalTesting connectivity to Bamboo Server: http://blahblahdlbhalTrying to establish connection with remote server: http://blahblahdlbhalConnection established!Testing connectivity to Bamboo Server: http:?//blahblahdlbhal:54663Trying to establish connection with remote server: http:?//blahblahdlbhal:54663
```


author: Olaf Heemskerk
body: I also ran the NetworkAnalyser which gave the following output:

Testing connectivity to Bamboo Server: [http://our_bamboo_server/bamboo](http://answers.atlassian.com/our_bamboo_server/bamboo)  
Trying to establish connection with remote server: [http://our_bamboo_server/bamboo
Connection](http://our_bamboo_server/bamboo%3Cbr%3EConnection) established!  
Testing connectivity to Bamboo Server: http:?//our_bamboo_server:54663/bamboo  
Trying to establish connection with remote server: http:?//our_bamboo_server:54663/bamboo  
Connection established!

So the network analyser doesn't see a problem.


Tags: remote-agent