Install TeamForge in a Distributed Setup
In this distributed setup, TeamForge services are distributed across six servers, server-01 through server-06 as illustrated in the following table.
You can install TeamForge on both RHEL 8.6 and RHEL/CentOS 7.9. In this distributed setup, all the following services are installed on RHEL 8.6 servers.
server-01 | server-02 | server-03 | server-04 | server-05 | server-06 |
---|---|---|---|---|---|
TeamForge Application Server | TeamForge Database Server | Review Board Server | SCM Server | Code Search Server | Baseline Server |
ctfcore | ctfcore-database | reviewboard1 | subversion | codesearch | baseline2 |
ctfcore-datamart | gerrit | baseline-post-install3 | |||
etl | gerrit-database | baseline-database | |||
search | binary-database | ||||
reviewboard-adapter4 | reviewboard-database | ||||
binary | webr-database | ||||
cliserver | |||||
webr | |||||
service-monitor |
Here's a list of dos, don'ts and points to remember when you install or upgrade TeamForge.
Prepare the Servers for TeamForge Installation (server-01 through server-06)
-
Install RHEL 8.6 and log on as root.
The host must be registered with the Red Hat Network if you are using Red Hat Enterprise Linux.
See the RHEL 8.6 Installation Guide for help. -
Check your networking setup. See Set up Networking for more information.
Install TeamForge Services
-
Install the TeamForge application packages on the TeamForge Application Server (server-01).
yum install teamforge
Install Monit.
importantIf you haven't already installed the latest version of the Monit application, download it here.)
-
Download Monit for
-
RHEL 8.x from the EPEL repository.
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
rpm -ivh epel-release-latest-8.noarch.rpm -
RHEL/CentOS 7.x from the EPEL repository.
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
-
-
Install Monit.
yum install monit
Install the Baseline packages on the TeamForge Application Server (server-01), if you are installing TeamForge Baseline.
yum install teamforge-baseline
-
-
Install the database packages and the Baseline packages on the TeamForge Database Server (server-02) based on the following conditions:
-
On sites without TeamForge Baseline, run this command to install the database packages on the TeamForge Database server (server-02).
yum install teamforge-database
-
On sites with TeamForge Baseline, if you're installing TeamForge Baseline on a separate server (server-07), run this command to install both the Baseline packages and the database packages on the TeamForge Database server (server-02).
yum install teamforge-baseline
-
-
Install Review Board packages on the Review Board Server (server-03).
yum install teamforge
-
Install SCM packages on the SCM Server (server-04).
yum install teamforge-scm teamforge-git
-
Install the Code Search packages on the Code Search Server (server-05).
yum install teamforge-codesearch
-
Install the Baseline packages on the Baseline Server (server-06).
yum install teamforge-baseline
Set up Your Site's Master Configuration File
-
Do this on the TeamForge Database Server (server-02).
vi /opt/collabnet/teamforge/etc/site-options.conf
host:SERVICES Token
server-01:SERVICES=ctfcore service-monitor search mail etl binary reviewboard-adapter cliserver webr
server-02:SERVICES=ctfcore-database ctfcore-datamart gerrit-database binary-database reviewboard-database webr-database
server-03:SERVICES=reviewboard
server-04:SERVICES=subversion gerrit
server-05:SERVICES=codesearch
server-06:SERVICES=baseline baseline-post-install baseline-databasehost:PUBLIC_FQDN Token
server-01:PUBLIC_FQDN=my.app.domain.com
Save the
site-options.conf
file.For further customization of your site configuration (SSL settings, password policy settings, PostgreSQL settings, LDAP settings and so on): .
-
Provision the Database Server (server-02).
teamforge provision
-
Copy the
/opt/collabnet/teamforge/etc/site-options.conf
file from the TeamForge Database Server (server-02) to the/opt/collabnet/teamforge/etc/
directory of all other servers.
Provision Services on All the Servers
-
Provision services.
teamforge provision
TeamForge 22.1 installer expects the system locale to be
LANG=en_US.UTF-8
. TeamForge create runtime (teamforge provision
) fails otherwise.
You must provision services in a particluar sequence. Usually you start with the Database Server, followed by the Application Server and then by other servers such as SCM, Review Board and Code Search servers.
The TeamForge installer derives this sequence from your site-options.conf
file and shows you the order of provisioning servers when you try to provision one of++ the distributed servers. Follow the exact sequence as instructed.
Provisioning Sequence without Baseline
- Provision the Application Server (server-01).
- Provision the SCM server (server-05).
- Provision the Review Board Server (server-03).
- Provision the Code Search Server (server-06).
Provisioning Sequence with Baseline
- Provision the Application Server (server-01).
- Provision the Baseline Server (server-07).
- Copy the
/opt/collabnet/teamforge/etc/site-options.conf
file from the TeamForge Baseline Server (server-07) to the/opt/collabnet/teamforge/etc/
directory of all other servers. - Provision the Database Server (server-02) again.
- Provision the Application Server (server-01) again.
- Provision the SCM server (server-05).
- Provision the Review Board Server (server-03).
- Provision the Code Search Server (server-05).
Reinitialize TeamForge
-
Reinitialize TeamForge on the Review Board Server.
teamforge reinitialize
-
During
teamforge provision
, theRegister SCM integration
process fails on sites that use self-signed certificates. Perform these steps in such cases.- Restart JBoss on the TeamForge Application Server.
teamforge restart -s jboss
- Reinitialize TeamForge on the SCM Server.
teamforge reinitialize
Do you have Git and other SCM tools (SVN) on two separate servers?
Git and other SCM tools (SVN) are typically installed on a server dedicated for SCM. However, if you have Git and SCM (SVN) installed on two separate servers, restart Jboss on the TeamForge Application Server and reinitialize TeamForge on the SCM Server (SVN server) as discussed earlier. In addition, you must also restart TeamForge on the Git Server.Restart TeamForge on the Git Server:
teamforge restart
- Restart JBoss on the TeamForge Application Server.
Verify TeamForge Installation
-
Verify TeamForge installation.
- Reboot the server and make sure all services come up automatically at startup.
- Log on to the TeamForge web application using the default Admin credentials.
- Username:
admin
- Password:
admin
- Username:
- Create a sample project. See Create a TeamForge Project.
- Write a welcome message to your site's users. See Create a Site-wide Broadcast.
Post Install Tasks
- Integrate Jenkins, JIRA, and TestLink using the TeamForge Webhooks-based Event Broker
- Users are not getting email notifications for review requests and reviews. What should I do?
Also See...
FAQs on Install / Upgrade / Administration
Footnotes
-
TeamForge 22.1 supports Review Board 4.0.6 on RHEL 8.6 and Review Board 4.0.6 on RHEL/CentOS 7.9. ↩
-
It's highly recommended that you install the TeamForge Baseline services on a separate server as the baselining process can consume considerable CPU and database resources. ↩
-
Synchronizes the user information between the baseline database and TeamForge database. ↩
-
reviewboard-adapter
must always be installed on the TeamForge Application Server. ↩