- at the moment build messages processor node handles all of the data produced by running builds (build logs, artifacts, statistic values), pre-processes it and stores in database
- in two-node installation, both main TeamCity server and build messages processor require access to the same data directory (which should be shared somehow if nodes are installed on separate machines) and to the same database
- URL where build messages processor operates should be accessible by the agents and main TeamCity server (occasionally main TeamCity server also communicates with build messages processor by HTTP)
- main TeamCity server handles all other tasks: user interface, VCS related activity, management of agents, etc
First of all ensure that both machines where TeamCity software will be installed share the same TeamCity data directory. For large installations we recommend using NAS. It is possible to share directory using NFS, or windows share, although performance of such installation can be worse.
Once you have two machines, proceed with installing TeamCity software as usual: download distribution package, unpack it or follow installation wizard.
Configure TEAMCITY_DATA_PATH environment variable on both machines, make sure it points to shared data directory.
To start main TeamCity server, follow our usual instructions.
Before starting server in build messages processor node, add additional arguments to TEAMCITY_SERVER_OPTS environment variable, for example:
export TEAMCITY_SERVER_OPTS=-Dteamcity.server.mode=build-messages-processor -Dteamcity.server.rootURL=<processor url> <your regular options if you have them>
Where <processor url> is the URL where build messages processor will operate. This URL should be accessible by both agents and main server. If you do not have HTTP proxy installed in front of TeamCity servlet container and you did not change port in servlet container during the installation then by default this URL will be: http://<your host name>:8111/
To start build messages processor use our regular scripts: teamcity-server.bat or teamcity-server.sh
Build messages processor uses the same logging facilities as the main server. You can check how startup going in teamcity-server.log file.
At the moment build messages processor node does not support plugins.