Going from standalone to Bro cluster error

I'm in the process of converting my Bro installs from standalone instances to a Bro Cluster.

The previous standalone Bro instance/server I'm using for testing is not able to be updated by the manager when I list it as a worker node.

I have the following 3 machines:

manager - New Bro install. version 2.5-beta-79 (rhel7 python 2.7.5)
worker1 - New Bro install. version 2.5-beta-79 (rhel7 python 2.7.5)
worker2 - Previous standalone Bro instance. version 2.4 <---- Notice the version differs, does worker2 need to run the same version as the manager? (rhel6 python 2.6.6)

Everything works between manager and worker1.

Here is the output from broctl when worker2 is listed in node.cfg.

[BroControl] > check
manager scripts are ok.
proxy-1 scripts are ok.
worker-1 scripts are ok.
worker-2 scripts are ok.

[BroControl] > install
removing old policies in /usr/local/bro/spool/installed-scripts-do-not-touch/site ...
removing old policies in /usr/local/bro/spool/installed-scripts-do-not-touch/auto ...
creating policy directories ...
installing site policies ...
generating cluster-layout.bro ...
generating local-networks.bro ...
generating broctl-config.bro ...
generating broctl-config.sh ...
updating nodes ...
sh: line 1: /bin/python: No such file or directory
sh: line 2: [/bin/echo,: No such file or directory
sh: line 3: syntax error near unexpected token `done'
sh: line 3: `done'
Error: cannot create a directory on node worker-2
Error: Failed to establish ssh connection to host <redacted IP for worker2>

ssh keys are working as intended. Even though the error says, "failed to establish ssh connection on host" I can see manager login on worker2 as the root user via ssh in secure log.

/bin/python is 2.6.6 and is in root's path. Everything in question is owned by root.

Any ideas?


All of the machines in a Bro cluster must be running the same OS
version, because when you run "broctl install" (or "broctl deploy"),
broctl will copy the bro installation (the executables and scripts)
from the manager to all of the other machines in your cluster.
This ensures that all machines in the cluster run the same version
of Bro with the same configuration.

If you had previously built and installed Bro on worker-2, then
it would just get overwritten by broctl.

Makes sense. Thanks Daniel.