Topologies and mapping files for setting up a test staging environment

This topic shows sample topology diagrams and mapping files for using server rename to set up a test staging environment with actual production data. A staging environment is a test sandbox that includes a snapshot of production data isolated from the production environment.

When planning a test staging environment, you need to be especially careful not to contaminate production data or vice-versa. You accomplish this by masking out production servers in the mapping file. Be sure to consider any additional IBM® Engineering Lifecycle Management (ELM) servers, or any integrated servers, that might be connected to the production server.

Starting Point 1 - Single-server ELM production deployment

The following topology diagram shows a single-server ELM deployment prior to a rename. In this example, the Jazz™ Team Server and the ELM applications all reside on the same host system.

Single-server ELM production deployment

Copying the production environment

To copy the production deployment to a staging environment, where you can perform a server rename and evaluate the results, follow the instructions at Setting up a test staging environment with production data. The following diagram shows what the topology would look like after a rename, where the ELM applications are all located on the same staging server - staging.example.org.

Copying the production environment

This scenario meets the requirements for a simplified mapping file. The prepared mapping file only needs to contain one mapping. No dummy mappings are needed since the simplified mapping covers all of the URLs in this topology. See Using a simplified mapping file for further details.

# Simplified mapping
source=https://production.example.org:9443
target=https://staging.example.org:9443

It is recommended that you edit your hosts file to redirect the production URL to a false IP address, as follows:

# 10.10.10.10 refers to an IP address that does not host a clm application.
10.10.10.10   production.example.org

Starting Point 2 - Production environment with two linked ELM deployments

The following topology diagram shows two linked ELM (JTS, CCM, QM, RM, JRS) deployments. Each ELM deployment is distributed, with the Jazz Team Server and each application running on a separate host. Both deployments integrate with a Jazz Reporting Service, and one deployment integrates with Rational® ClearQuest® and Rational ClearCase®.

Production environment with two linked ELM deployments

Copying a single, distributed deployment to a staging environment

To copy the production deployment to a staging environment where you can perform a server rename and evaluate the results, follow the instructions at Setting up a test staging environment with production data. In this scenario, we are only going to bring one deployment into the staging area. The following diagram shows what the topology looks like following a rename in the staging environment. Note that Rational ClearQuest and Rational ClearCase are not supported in the staging environment, and the second deployment is grayed out.

Two linked ELM deployments after one is renamed

After the mapping file is generated and edited, it should look like this. To avoid contamination between the staging and production environments, dummy mappings have been added to the mapping file for the URLs of production servers that are not being staged.

#/jts
source=https://jts1.production.example.org:9443/jts
target=https://jts1.staging.example.org:9443/jts
#Additional Urls included in rename by /jts
#(CLM Help URL)
source=https://jts1.production.example.org:9443/clmhelp
target=https://jts1.staging.example.org:9443/clmhelp
#(The URL to the JAZZ Reporting Service)
#This URL was also contributed by "/ccm"
#This URL was also contributed by "/qm"
source=https://jrs.production.example.org:9082/rs
target=https://jrs.staging.example.org:9082/rs

#/ccm
source=https://ccm1.production.example.org:9443/ccm
target=https://ccm1.staging.example.org:9443/ccm

#/qm
source=https://qm1.production.example.org:9443/qm
target=https://qm1.staging.example.org:9443/qm

#/rm
source=https://rm1.production.example.org:9443/rm
target=https://rm1.staging.example.org:9443/rm
#Additional Urls included in rename by /rm
#(The address of the application used to generate images for graphical artifacts.)
source=https://rm1.production.example.org:9443/converter/htmlgen
target=https://rm1.staging.example.org:9443/converter/htmlgen

#The following list of URLs represent external servers that integrate with this Jazz Team Server or with applications registered to it.

#Do not uncomment these lines as they are for reference purposes only.
# source=https://cqwebhost.production.example.org:9443/cqweb/oslc
# target=https://cqwebhost.production.example.org:9443/cqweb/oslc
# source=https://cqsynchhost.production.example.org:8444/cqconnector/gateway
# target=https://cqsynchhost.production.example.org:8444/cqconnector/gateway

# Dummy mappings for affected URLs
source=https://cqwebhost.production.example.org:9443
target=https://dummyhost1.example.org:9443
source=https://cqsynchhost.production.example.org:8444
target=https://dummyhost2.example.org:8444

# Dummy mappings for the second CLM deployment
#/jts
source=https://jts2.production.example.org:9443/jts
target=https://jts2.dummyhost.example.org:9443/jts
#Additional Urls included in rename by /jts
#(CLM Help URL)
source=https://jts2.production.example.org:9443/clmhelp
target=https://jts2.dummyhost.example.org:9443/clmhelp

#/ccm
source=https://ccm2.production.example.org:9443/ccm
target=https://ccm2.dummyhost.example.org:9443/ccm

#/qm
source=https://qm2.production.example.org:9443/qm
target=https://qm2.dummyhost.example.org:9443/qm

#/rm
source=https://rm2.production.example.org:9443/rm
target=https://rm2.dummyhost.example.org:9443/rm
#(The address of the application used to generate images for graphical artifacts.)
source=https://rm2.production.example.org:9443/converter/htmlgen
target=https://rm2.dummyhost.example.org:9443/converter/htmlgen

It is recommended that you edit your hosts file to redirect all production URLs to a false IP address.

# 10.10.10.10 refers to an IP address that does not host a clm application.
10.10.10.10   cqwebhost.production.example.org
10.10.10.10   cqsynchhost.production.example.org
10.10.10.10   jts2.production.example.org
10.10.10.10   ccm2.production.example.org
10.10.10.10   qm2.production.example.org
10.10.10.10   rm2.production.example.org

Copying both distributed deployments to a staging environment

To copy the production deployment to a staging environment where you can perform a server rename and evaluate the results, follow the instructions at Setting up a test staging environment with production data. Because the deployments are linked, URLs for both deployments reside in each database. In this example, a separate map file is prepared for each of the two ELM deployments. The importURLMappings command must be run twice on each Jazz Team Server - once for the Jazz Team Server's mapping file and once with the other Jazz Team Server's generated mapping file. The following diagram shows what the topology looks like following a rename in the staging environment. Note that Rational ClearQuest and Rational ClearCase are not supported in the staging environment.

Two linked ELM deployments after both are renamed

After the mapping file for the first deployment is generated and edited, it should look like this. Dummy mappings have been added to the mapping file to avoid contamination between the staging and production environments.

#/jts
source=https://jts1.production.example.org:9443/jts
target=https://jts1.staging.example.org:9443/jts
#Additional Urls included in rename by /jts
#(CLM Help URL)
source=https://jts1.production.example.org:9443/clmhelp
target=https://jts1.staging.example.org:9443/clmhelp
#The URL to the Jazz Reporting Service
#This URL was also contributed by "/ccm"
#This URL was also contributed by "/qm"
source=https://jrs.production.example.org:9082/rs
target=https://jrs.staging.example.org:9082/rs

#/ccm
source=https://ccm1.production.example.org:9443/ccm
target=https://ccm1.staging.example.org:9443/ccm

#/qm
source=https://qm1.production.example.org:9443/qm
target=https://qm1.staging.example.org:9443/qm

#/rm
source=https://rm1.production.example.org:9443/rm
target=https://rm1.staging.example.org:9443/rm
#Additional Urls included in rename by /rm
#(The address of the application used to generate images for graphical artifacts.)
source=https://rm1.production.example.org:9443/converter/htmlgen
target=https://rm1.staging.example.org:9443/converter/htmlgen

#The following list of URLs represent external servers that integrate with this Jazz Team Server or with applications registered to it.
#source=https://cqwebhost.production.example.org:9443/cqweb/oslc
#target=https://cqwebhost.production.example.org:9443/cqweb/oslc
#source=https://cqsynchhost.production.example.org:8444/cqconnector/gateway
#target=https://cqsynchhost.production.example.org:8444/cqconnector/gateway

# Dummy mappings
source=https://cqwebhost.example.org:9443
target=https://dummyhost1.example.org:9443
source=https://cqsynchhost.production.example.org:8444
target=https://dummyhost2.example.org:9443

After the mapping file for the second deployment is generated and edited, it should look like this. Dummy mappings have been added to the mapping file to avoid contamination between the staging and production environments. Note that the same JRS mapping is included in the first and second mapping files. The importURLMappings command will detect that this is the same and it will be a no-op the second time around.

#/jts
source=https://jts2.production.example.org:9443/jts
target=https://jts2.staging.example.org:9443/jts
#Additional Urls included in rename by /jts
#(CLM Help URL)
source=https://jts2.production.example.org:9443/clmhelp
target=https://jts2.staging.example.org:9443/clmhelp
#The URL to the Jazz Reporting Service
#This URL was also contributed by "/ccm"
#This URL was also contributed by "/qm"
source=https://jrs.production.example.org:9082/rs
target=https://jrs.staging.example.org:9082/rs

#/ccm
source=https://ccm2.production.example.org:9443/ccm
target=https://ccm2.staging.example.org:9443/ccm

#/qm
source=https://qm2.production.example.org:9443/qm
target=https://qm2.staging.example.org:9443/qm

#/rm
source=https://rm2.production.example.org:9443/rm
target=https://rm2.staging.example.org:9443/rm
#Additional Urls included in rename by /rm
#(The address of the application used to generate images for graphical artifacts.)
source=https://rm2.production.example.org:9443/converter/htmlgen
target=https://rm2.staging.example.org:9443/converter/htmlgen

# Dummy mappings
source=https://cqwebhost.production.example.org:9443
target=https://dummyhost1.example.org:9443
source=https://cqsynchhost.production.example.org:8444
target=https://dummyhost2.example.org:9443

It is recommended that you edit your hosts file to redirect the production URL to a false IP address.

# 10.10.10.10 refers to an IP address that does not host a clm application.
10.10.10.10   cqwebhost.production.example.org
10.10.10.10   cqsynchhost.production.example.org
10.10.10.10   jts2.production.example.org
10.10.10.10   ccm2.production.example.org
10.10.10.10   qm2.production.example.org
10.10.10.10   rm2.production.example.org

video icon Video

Jazz.net channel
Software Education channel

learn icon Courses

IoT Academy
Skills Gateway

ask icon Community

Jazz.net
Jazz.net forums
Jazz.net library

support icon Support

IBM Support Community
Deployment wiki