Deploying the included Rational Team Concert server application on Tomcat

IBM® Rational® Asset Manager requires IBM Rational Team Concert™, which controls the lifecycle functions that you can use to manage the development of assets. If you do not already have Rational Team Concert, a limited version of that product is included, which you can deploy to a Tomcat server.

Before you begin

If you already deployed and configured a Rational Team Concert server application, you can use your existing application instead of installing a new application. To configure Rational Team Concert to work with Rational Asset Manager, see Configuring a Rational Team Concert server to work with Rational Asset Manager.

You must have administrative and file access to a Tomcat server that is installed and running.

Before you do this task, complete the following tasks:
  1. Retrieving the application files
  2. Creating the database for lifecycles

You must have a security certificate for your Tomcat server. The included version of Rational Team Concert requires a secure connection.

About this task

You can improve the performance and stability of Rational Asset Manager by installing its web applications and the application files for the included IBM Rational Team Concert on separate Tomcat servers. Throughout this document, the installation directory for the Tomcat server for Rational Asset Manager is referred to as tomcat_install_directory. The installation directory for the Tomcat server for Rational Team Concert is tomcat_for_rtc_install_directory. If you are installing all the web applications on the same Tomcat server, the directories are the same.

Procedure

  1. Verify that all of the repository servers are set to the same current date, time, and time zone.
  2. Retrieve the application files on the appropriate archive for Tomcat and for your operating system. The application files are in the archive_extract_location/apps/was/ folder.
  3. For Windows: For Linux:For AIX: Extract the library files for Rational Licensing Key Server V8.1.2 to the tomcat_for_rtc_install_directory\shared\lib folder:
    Important: Do not complete this step on Linux for zSeries
    1. Find and extract the archive_extract_location\sharedLibs\rlsclients_rlsibmratl_812.zip file.
    2. From the extracted .zip file, find the file rlsibmratl812.zip for your operating system and architecture. For example, the file for 32-bit Windows is in the win32 directory.
    3. Extract the contents of the appropriate rlsibmratl812.zip file.
    4. Copy the extracted contents of the rlsibmratl812.zip file to the tomcat_for_rtc_install_directory\shared\lib directory.
    If you are installing Rational Asset Manager and Rational Team Concert on the same application server, you already completed this step.
  4. On the installation media, find the archive_extract_location/apps/tomcat folder.
  5. Extract RTC-Server_<<latest bundled version>>.zip to a location on your hard disk drive, which is referred to in these instructions as rtc_install_dir.
  6. Find the rtc_install_dir/jazz/server/ folder and extract ramccm_war.ear and ramjts_war.ear files. To extract .ear files, you can use a free utility, such as 7-Zip. From the extracted ramccm_war.ear and ramjts_war.ear packages, copy the ramccm.war and ramjts.war files to the tomcat_for_rtc_install_directory/webapps/ directory.
  7. Configure a secure port on your Tomcat server for Rational Team Concert:
    1. Create a security certificate that identifies your Tomcat server for Rational Team Concert for SSL connections. You can use the Java™ JDK keytool command to create a self-signed certificate. Alternatively, you can request a certificate that is signed by a trusted certificate authority.
      For more information about creating self-signed certificates with the keytool command, see the Oracle Java documentation. You can create a self-signed certificate with the following example keytool command:
      keytool -genkey -alias tomcat -keystore tomcat_for_rtc_install_directory/.keystore

      When you run that command, you will be prompted for a password for the keystore file. The default password is changeit, but you should specify a different one. You will have to remember that password to input it into the server.xml file later.

      If you are using an IBM JRE, many versions include the IBM tool ikeyman in the IBM_Java_JRE_install_location/jre/bin/ directory. You can use this tool to create and manage security certificates on the server. For more information about using the iKeyman tool, see iKeyman User's Guide.

      We also include a simple certificate in the rtc_install_dir/jazz/server/ folder; the certificate file is ibm-team-ssl.keystore

    2. In the tomcat_for_rtc_install_directory\conf\server.xml file, find the <Connector> tag with the attribute scheme="https". The default file includes an example <Connector> tag for port 8443 that is commented out.
    3. Copy and paste the following text:
      <Connector port="8443"
           maxHttpHeaderSize="8192" 
           maxThreads="150"
           minSpareThreads="25" 
           maxSpareThreads="75"
           enableLookups="false"
           disableUploadTimeout="true"
           connectionTimeout="20000"
           acceptCount="100"
           scheme="https"
           secure="true" 
           clientAuth="false"
           keystoreFile="keystore_file"
           keystorePass="keystore_password"
           sslProtocol="keystore_protocol"
           algorithm="keystore_algorithm"
           URIEncoding="UTF-8"
      />
      Where:
      • keystore_file is the file name of your keystore file. It can be an absolute path, or relative from the root directory of your Tomcat server (tomcat_for_rtc_install_directory). If you used the simple command above, this will be .keystore. If you use the included certificate, this will be rtc_install_dir/jazz/server/ibm-team-ssl.keystore .
      • keystore_password is the password for the keystore file. If you use the included keystore file, this is ibm-team .
      • keystore_protocol is the protocol for the keystore. Most likely it is TLS or SSL_TLS. If you use the included keystore file, this is SSL_TLS .
      • keystore_algorithm is the X509 algorithm for the keystore. Most likely it is SunX509 or IbmX509, depending on the source of the certificate. If you use the included keystore file, this is IbmX509 .
    4. You can change the port value to use a port besides 8443 for the non-SSL connector (by default, port 8080). If you change the port value, change the value of the redirectPort attribute to match your port number for the SSL connector.

    For more information about configuring SSL for Tomcat, see Apache Tomcat 7 SSL Configuration HOW-TO and Apache Tomcat Configuration reference.

  8. For Oracle:For Microsoft SQL Server: Copy the appropriate .jar file from your database provider:
    • For Oracle: Copy the ojdbc6.jar file to the rtc_install_dir/jazz/server/oracle folder (you might need to create the oracle folder).

      You can download the file from Oracle.

    • For Microsoft SQL Server: Copy the following file to the rtc_install_dir/jazz/server/sqlserver folder (you might need to create the sqlserver folder):
  9. Configure the Tomcat startup property settings:
    1. Find the Tomcat startup file and open it in a text editor. On Windows, this file is tomcat_for_rtc_install_directory\bin\startup.bat. On Linux, AIX®, or Linux for zSeries, the file is tomcat_for_rtc_install_directory/bin/startup.sh.
    2. In the startup file, type the following text:
      • For Windows: Replace each space character in the rtc_install_dir with %20:
        set ORACLE_JDBC=oracle_jar_dir
        set SQLSERVER_JDBC=sqlServer_jar_dir
        set JAZZ_INSTALL_DIR=rtc_install_dir
        set JAVA_OPTS=-Djava.awt.headless=true -Djava.library.path="tomcat_for_rtc_install_directory\shared\lib" -DSQLSERVER_JDBC="%SQLSERVER_JDBC%" -DORACLE_JDBC="%ORACLE_JDBC%" -DDB2I_JDBC="%DB2I_JDBC%" -DDB2Z_JDBC="%DB2Z_JDBC%" -Dorg.eclipse.emf.ecore.plugin.EcorePlugin.doNotLoadResourcesPlugin=true -DJAZZ_HOME=file:///%JAZZ_INSTALL_DIR%\jazz\server\conf -Dcom.ibm.team.repository.tempDir=%TEMP% -Xmx700M
      • For Linux:For AIX:For Linux for zSeries:
        ORACLE_JDBC=oracle_jar_dir
        SQLSERVER_JDBC=sqlServer_jar_dir
        JAZZ_INSTALL_DIR=rtc_install_dir
        export JAVA_OPTS="-Djava.awt.headless=true -Djava.library.path=tomcat_for_rtc_install_directory/shared/lib -DSQLSERVER_JDBC=$SQLSERVER_JDBC -DORACLE_JDBC=$ORACLE_JDBC -DDB2I_JDBC=$DB2I_JDBC -DDB2Z_JDBC=$DB2Z_JDBC -Dorg.eclipse.emf.ecore.plugin.EcorePlugin.doNotLoadResourcesPlugin=true -DJAZZ_HOME=file://"$JAZZ_INSTALL_DIR"/jazz/server/conf -Dcom.ibm.team.repository.tempDir=$TEMP_DIR -Xmx700M"
      Where:
      • rtc_install_dir is the extracted directory of the RTC-server.zip file. On Windows, replace each space character in rtc_install_dir with %20
      • For Oracle: oracle_jar_dir is the directory for the ojdbc6.jar file (rtc_install_dir/jazz/server/oracle)
      • For Microsoft SQL Server: sqlServer_jar_dir is the directory of the sqljdbc4.jar file (rtc_install_dir/jazz/server/sqlserver)
      • tomcat_for_rtc_install_directory is the installation directory for the Tomcat server
      • For Windows: For Linux:For AIX: If you are installing Rational Asset Manager and Rational Team Concert on the same application server, use this JAVA_OPTS system variable to replace the one that you created when you configured the startup script for the Tomcat server for Rational Asset Manager; this declaration still includes the -Djava.library.path option.
  10. Find and rename the appropriate the Jazz™ server properties file:
    1. In the rtc_install_dir/jazz/server/conf/ramjts/ directory, find the teamserver.properties file and take a backup.
    2. In the rtc_install_dir/jazz/server/conf/ramccm/ directory, find the teamserver.properties file and take a backup.
    3. Find the appropriate file for your database server:
      • For DB2:For Windows:For DB2 on Windows: teamserver.db2.win32.properties
      • For DB2:For Linux:For AIX:For Linux for zSeries:For DB2 on Linux, AIX, or Linux for zSeries: teamserver.db2.linux.properties
      • For Oracle: teamserver.oracle.properties
      • For SQL Server: teamserver.sqlserver.properties
    4. Rename the file to teamserver.properties.
  11. In a text editor, open the teamserver.properties file of both ramjts and ramccm, and then modify them as follows (for your database provider):
    • For DB2:
      1. Find the following lines:
        com.ibm.team.repository.db.vendor = DB2
        com.ibm.team.repository.db.jdbc.location=//localhost:50000/JAZZ:user=db2admin;password={password};
        com.ibm.team.repository.db.jdbc.password=db2admin
      2. Edit the value of com.ibm.team.repository.db.jdbc.location for your DB2® server location, and the name of the database for lifecycles:
        1. Replace localhost:50000 with the location and port for the DB2 database.
          Tip: In the DB2 command window, type db2 get dbm cfg, and then find the line that contains SVCENAME, which indicates the DB2 port name or number. If this command displays a number, use it as the port number (in place of 50000 in the earlier example). If the command returns a non-numeric name, determine what port number was assigned for this name and use that port number. On Linux, the /etc/services file contains the mapping between port names and numbers; on Windows, the C:\windows\system32\drivers\etc\services file contains the mapping. For more information, ask your database administrator or see the database documentation.
        2. Replace JAZZ with the name of the database for lifecycles.
        3. Replace db2admin with the user name for the DB2 database.
          Note: The DB2 user must have permissions to create tables, table spaces, and to modify the database configuration. DB2 users are created by the operating system.
      3. In the com.ibm.team.repository.db.jdbc.password property, specify the user password.
        Note: Do not change the password={password} text in the com.ibm.team.repository.db.jdbc.location property.
      4. In the teamserver.properties file, add the following properties:
        Where:
        • unsecure_port is the unsecured port for your Tomcat server (by default, 8080)
        • secure_port is the secure port number for your Tomcat server (by default, 8443)
        • team_temp_dir is an absolute path to a directory for storing temporary files
        com.ibm.team.scm.tmpdir=team_temp_dir
        com.ibm.team.repository.server.repourl.port.http=unsecure_port
        com.ibm.team.repository.user.registry.type=UNSUPPORTED
        com.ibm.team.repository.ws.allow.admin.access=false
        com.ibm.team.repository.server.repourl.port.https=secure_port
    • For Oracle:
      1. Find the following lines:
        com.ibm.team.repository.db.vendor = ORACLE
        com.ibm.team.repository.db.jdbc.location=thin:jazzDBuser/{password}@localhost:1521/ORCL
        com.ibm.team.repository.db.jdbc.password=jazzDBpswd
      2. Edit the value of com.ibm.team.repository.db.jdbc.location for your Oracle server location and the name of the database for lifecycles:
        1. Replace jazzDBUser with the user name for the Oracle database (for example, RAMSCHEMA.
        2. Replace @localhost:1521 with the location and port for the Oracle database. If the location is not localhost, you must precede the location with two forward slashes (//); for example, @//oracleserver.example.com:1521.
        3. Replace ORCL with the name of the lifecycle database; for example, rtcdb.
      3. In the com.ibm.team.repository.db.jdbc.password property, replace JazzDBpswd with the password for the Oracle that user you specified earlier.
        Note: Do not change the {password} text in the com.ibm.team.repository.db.jdbc.location property.
      4. In the teamserver.properties file, add the following properties:
        Where:
        • unsecure_port is the unsecured port for your Tomcat server (by default, 8080)
        • secure_port is the secure port number for your Tomcat server (by default, 8443)
        • team_temp_dir is an absolute path to a directory for storing temporary files
        com.ibm.team.scm.tmpdir=team_temp_dir
        com.ibm.team.repository.server.repourl.port.http=unsecure_port
        com.ibm.team.repository.user.registry.type=UNSUPPORTED
        com.ibm.team.repository.ws.allow.admin.access=false
        com.ibm.team.repository.server.repourl.port.https=secure_port
      5. If you are using Oracle 11: In the teamserver.properties file, add the following property:
        com.ibm.team.repository.db.override.versioncheck=true
    • For Microsoft SQL Server:
      1. Find the following lines:
        com.ibm.team.repository.db.vendor = SQLSERVER
        com.ibm.team.repository.db.jdbc.location=//localhost:1433;databaseName=jazz;user=jazzDBuser;password={password}
        com.ibm.team.repository.db.jdbc.password=jazzDBpswd
      2. Edit the value of com.ibm.team.repository.db.jdbc.location for your SQL Server location and the name of the database for lifecycles:
        1. Replace @localhost:1433 with the location and port for the SQL Server database.
        2. Replace jazz with the name of the lifecycle database; for example, RTCDB.
        3. Replace jazzDBUser with the user name for the SQL Server database.
      3. In the com.ibm.team.repository.db.jdbc.password property, replace JazzDBpswd with the password for the SQL server user that you specified earlier.
        Note: Do not change the {password} text in the com.ibm.team.repository.db.jdbc.location property.
      4. In the teamserver.properties file, add the following properties:
        Where:
        • unsecure_port is the unsecured port for your Tomcat server (by default, 8080)
        • secure_port is the secure port number for your Tomcat server (by default, 8443)
        • team_temp_dir is an absolute path to a directory for storing temporary files
        com.ibm.team.scm.tmpdir=team_temp_dir
        com.ibm.team.repository.server.repourl.port.http=unsecure_port
        com.ibm.team.repository.user.registry.type=UNSUPPORTED
        com.ibm.team.repository.ws.allow.admin.access=false
        com.ibm.team.repository.server.repourl.port.https=secure_port
  12. Create the tables for Rational Team Concert:
    1. Open a command-line window and navigate to the rtc_install_dir/jazz/server/ directory.
    2. Enter the following command:
      • For RAMCCMFor Windows:
        repotools.bat -createTables teamserver.properties=conf\ramccm\teamserver.properties
      • For RAMCCMFor Linux:For AIX:For Linux for zSeries:
        ./repotools.sh -createTables teamserver.properties=conf/ramccm/teamserver.properties
      • For RAMJTSFor Windows:
        repotools.bat -createTables teamserver.properties=conf\ramjts\teamserver.properties
      • For RAMJTSFor Linux:For AIX:For Linux for zSeries:
        ./repotools.sh -createTables teamserver.properties=conf/ramjts/teamserver.properties
  13. Configure the Tomcat server for user security. If you intend to use LDAP security, first use file-based security to configure the applications, and after you configure the applications, switch to LDAP authentication. For more information, see Configuring LDAP authentication for Tomcat.
    1. In a text editor, open the tomcat_for_rtc_install_directory\conf\tomcat-users.xml file. Again, if you are installing the applications onto the same Tomcat server, this file is the same file where you modified the user security settings for the Rational Asset Manager applications.
    2. Between the <tomcat-users> tags, paste the following text:
      <role rolename="JazzUsers"/>
      <role rolename="JazzAdmins"/>
      <role rolename="JazzDWAdmins"/>
      <role rolename="JazzGuests"/>
    3. Add a user named admin and assign that user the admin, manager, and JazzAdmins roles. To add this user, you can copy and paste the following text between the <tomcat-users> tags:
      <user username="admin" password="" roles="admin,manager,JazzAdmins" />

      If you are installing the applications on the same Tomcat server, add the JazzAdmins role to the user that you created when you modified the user security settings for the Rational Asset Manager applications.

  14. Start the Tomcat server for Rational Team Concert. To start Tomcat, run the following file:
    • For Windows:tomcat_for_rtc_install_directory\bin\startup.bat
    • For Linux:For AIX:For Linux for zSeries:tomcat_for_rtc_install_directory/bin/startup.sh
  15. Configure Rational Team Concert to work with Rational Asset Manager. You must configure administrative rights and create a project area in Rational Team Concert.

Feedback