Installing the server software on Red Hat OpenShift
You can install Rational® Test Automation Server on the Red Hat OpenShift server that has the Kubernetes Engine environment to run functional, integration, and performance tests. Rational® Test Automation Server combines test data, test environments, and test runs and reports into a single web-based browser for testers and non-testers.
Before you begin
You must have performed the following tasks:
-
Completed tasks provided in the Prerequisites section. See Prerequisites for installing the server software on Red Hat OpenShift.
-
Ensured that you have installed the following software:
-
OpenShift CLI
-
Helm
-
-
Copied the Entitlement key from the Container software library.
About this task
As part of the installation process, you might optionally migrate user data from a previous version (V10.0.2, Fix Pack 1 or earlier) the product, or restore a backup of user data from the current version (V10.1.0 or later) of the product. You must perform different steps, depending on which version of the user data backup file you are applying during the installation process. For more details, see the following table:
Procedure
- Open and log in to the terminal.
-
Create a namespace to install the server software by running the following
command:
oc new-project test-system
-
Add the repository to Helm to access the server install charts by running the
following command:
helm repo add ibm-helm https://raw.githubusercontent.com/IBM/charts/master/repo/ibm-helm
-
Run the following command to get the latest updates from the repository:
helm repo update
-
Create a Secret to pull images that are used by Rational® Test Automation Server by running the following commands:
Notes:
-
You must substitute
{your_entitlement_key}
with the key that you copied from Container software library. -
You can replace
example@abc.com
with the administrator email address, if required.
oc create secret docker-registry cp.icr.io \ -n test-system \ --docker-server=cp.icr.io \ --docker-username=cp \ --docker-password={your_entitlement_key} \ --docker-email=example@abc.com
-
- Optional:
Perform the following steps to migrate user data from the previous version
(V10.0.2, Fix Pack 1 or earlier):
- Optional:
Perform the following actions described in the following table to enable the
additional features on Rational® Test Automation Server:
Features Descriptions Action to be perform Service virtualization
To enable the running of stubs that virtualize services in the RedHat OpenShift Service Mesh
Perform the following steps: -
Add the following parameter to the
helm install
command:--set execution.istio.enabled=true
-
Run the following command to create the role bindings required for Istio:
oc create rolebinding istio-virtualization-enabled -n {namespace} \ --clusterrole={my-rtas}-execution-istio-test-system --serviceaccount=test-system:{my-rtas}-execution
Note: When you uninstall the chart, the manually created role bindings are not deleted from the namespace.
To enable the running of stubs that virtualize services in namespaces
Add the following parameter to thehelm install
command:--set execution.istio.namespaces='{namespaceA,namespaceB}' \
Alternatively, you can add the parameter to thehelm install
command by using an array index notation as follows:--set execution.istio.namespaces[0]=namespaceA \ --set execution.istio.namespaces[1]=namespaceB
Jaeger
To use Jaeger for performance and Web UI tests logs
Add the following parameter to thehelm install
command:Note: You must substitute{my-jaeger-dashboard-url}
with the URL of the Jaeger server.--set-string execution.annotations.sidecar\\.jaegertracing\\.io/inject=true --set global.jaegerAgent.enabled=true --set global.jaegerAgent.internalHostName=localhost --set global.jaegerDashboard.enabled=true --set global.jaegerDashboard.externalURL={my-jaeger-dashboard-url}
-
-
Run the following commands to install the server software:
You must substitute the value of the following variables with the actual value in the command:
-
{my-rtas}
with the release name of your choice.Note: If you migrated user data from a previous release (V10.0.2, Fix Pack 1), then you must use the same{my-rtas}
name that you used in step 7a. -
{openshift-cluster-dns-name}
with the ingress DNS name that you selected for the server.Note: You can run the following command to obtain the default value ofopenshift-cluster-dns-name
:oc get --namespace=openshift-ingress-operator ingresscontroller/default -ojsonpath='{.status.domain}'
Remember: You must provide the value that consists of lowercase alphanumeric characters,-
(hyphen) or.
(period). Also, the value must start and end with an alphanumeric character. -
Optional:
{rlks-ip-address}
with the IP address of Rational License Key Server.Alternatively, you can configure the Rational License Key Server value from the Configure License window when the installation of the server is complete.
-
{my-super-secret}
with a value of your choice.Important: This password seed is used to create several default passwords for the server. You must store the password seed securely. When you install the server software by using the backup of the user data, you can reuse the password seed. You can use this seed to restore backup files either on the current or later versions of the server software.
Note: The default storage class must support both the ReadWriteOnce (RWO) and ReadWriteMany (RWX) access modes. If the default storage class does not support ReadWriteMany (RWX), you must add the following parameter to the helm install command:--set global.persistence.rwxStorageClass=ibmc-file-gold
#Make sure the repository is current and retrieve the charts required to install the server #You can skip the following two commands if you have migrated from the previous version (V10.0.2, Fix Pack 1 or earlier) helm repo update helm pull --untar ibm-helm/ibm-rtas-prod --version 3.1012.0 #Update the runAsUser and fsGroup to match scc policy sed -i -e "s/runAsUser: 1001/runAsUser: $(oc get project test-system -oyaml \ | sed -r -n 's# *openshift.io/sa.scc.uid-range: *([0-9]*)/.*#\1#p')/g; s/fsGroup: 1001/fsGroup: $(oc get project test-system -oyaml \ | sed -r -n 's# *openshift.io/sa.scc.supplemental-groups: *([0-9]*)/.*#\1#p')/g" ibm-rtas-prod/values-openshift.yaml #Install the server helm install {my-rtas} ./ibm-rtas-prod -n test-system \ --set license=true \ -f ibm-rtas-prod/values-openshift.yaml \ --set global.ibmRtasIngressDomain=rtas.{openshift-cluster-dns-name} \ --set global.rationalLicenseKeyServer=@{rlks-ip-address} \ --set global.ibmRtasPasswordAutoGenSeed={my-super-secret} \ --set global.ibmRtasRegistryPullSecret=cp.icr.io
Tip: After you installed the server software, anytime if you want to enable or disable any specific features on Rational® Test Automation Server you can do so by using thehelm upgrade
command.For example, if you want to enable service virtualization feature to run stubs that virtualize services in namespaces, you can run the following commands:helm upgrade {my-rtas} -n test-system ./ibm-rtas-prod \ --reuse-values \ --set execution.istio.namespaces='{namespaceA,namespaceB}'
-
- Optional:
Run the following command to restore the backed up user data from the current
version:
velero restore create --from-backup=<backup-file-name> --restore-volumes
Note: You must replace<backup-file-name>
with the name of the back up file that you saved. -
Run the following command to verify and test the installed server
software:
$ helm test {my-rtas} -n {namespace}
where:{my-rtas}
is the release name that you provide during the installation of the server software.{namespace}
is the name of the namespace that you created during the server installation process.
Results
On successful installation of Rational® Test Automation Server, the output displays the URL to access the Rational® Test Automation Server UI.
What to do next
-
You can back up the user data that are saved in the Kubernetes clusters to secure your data. See Backing up and restoring the user data on Red Hat OpenShift.
-
You can configure the license to use Rational® Test Automation Server. See Configuring floating licenses.