Installing the server software on Ubuntu by using k3s

You can install Rational® Test Automation Server on the Ubuntu server that has a Kubernetes 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

About this task

The following table lists the variables that you must replace with the actual value in the command.

Variables Description
{your_entitlement_key}

The key that you copied from the Container software library.

{example@abc.com}

The email address of the administrator if required.

{my-rtas}
The release name of your choice.
Note: The release name must consist of alphanumeric characters that are in lowercase or - (hyphen). The release name must also start with an alphabetic character and end with an alphanumeric character. For example, my-org or abc-123.
{my-ingress-dns-name}

The INGRESS_DOMAIN value that is displayed on completion of the ubuntu-init.sh script.

{password-seed}

A value of your choice for the password.

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 the backed-up files either on the current or later versions of the server software.
{rlks-ip-address}

The IP address of License Key Server, if you want to set the license value for the first time.

Important: When you upgrade the product from the previous version, you must configure the value of License Key Server in the Team Space License Configuration window when the installation of the server is complete.
{my-jaeger-dashboard-url}

The URL of the Jaeger server.

The test-system is the name of the namespace that is created during the setting up of the k3s environment.

Procedure

  1. Log in to the Ubuntu server using an SSH session.
  2. Add the entitlement registry 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
  3. Run the following command to get the latest updates from the repository:
    helm repo update
  4. Create a Secret to pull the images that are used by Rational® Test Automation Server by running the following command:
    kubectl 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}
  5. Perform the following steps to install the server software:
    1. Run the following command to get the latest updates from the repository:
      helm repo update
    2. Run the following command to retrieve the charts required to install the server software:
      helm pull --untar ibm-helm/ibm-rtas-prod --version 8.1023.0
    3. Run the following command to provide the execution permission for the scripts that are available in the files directory:
      chmod +x ibm-rtas-prod/files/*.sh
    4. Perform one of the steps described in the following table to install the server software based on your requirement:
      Task description Step number

      To install the server software

      Perform 5.d.i

      To install the server software and to use another instance of the Jaeger UI

      Note: You must perform this step only if you want to use another instance of Jaeger than the one you installed during the setting up of the Kubernetes k3s environment.
      Perform 5.d.ii
      1. Run the following command to install the server software:

        helm install {my-rtas} ./ibm-rtas-prod -n test-system \
        --set license=true \
        -f ibm-rtas-prod/values-k3s.yaml \
        --set global.ibmRtasIngressDomain={my-ingress-dns-name} \
        --set global.ibmRtasPasswordAutoGenSeed={password-seed} \
        --set global.ibmRtasRegistryPullSecret=cp.icr.io \
        --set global.rationalLicenseKeyServer=@{rlks-ip-address}
      2. Run the following command to install the server software and to use another instance of Jaeger than the one you installed during the setting up of the Kubernetes k3s environment:

        helm install {my-rtas} ./ibm-rtas-prod -n test-system \
        --set license=true \
        -f ibm-rtas-prod/values-k3s.yaml \
        --set global.ibmRtasIngressDomain={my-ingress-dns-name} \
        --set global.ibmRtasPasswordAutoGenSeed={password-seed} \
        --set global.ibmRtasRegistryPullSecret=cp.icr.io \
        --set global.rationalLicenseKeyServer=@{rlks-ip-address} \
        --set-string execution.annotations.sidecar\\.jaegertracing\\.io/inject=true \
        --set global.jaegerAgent.internalHostName=localhost \
        --set global.jaegerDashboard.externalURL={my-jaeger-dashboard-url}
  6. Optional: Run the following command to remove a job that is used to initialize the PostgresQL database during the installation of the server software:
    kubectl delete job {my-rtas}-postgresql-init -n test-system
  7. Run the following script from the ibm-rtas-prod/files directory to verify and test the installed server software:
    ibm-rtas-prod/files/helm-test-diag.sh {my-rtas} -n test-system

Results

On completion of the installation of server software, the output displays the following information on the command-line interface:
  • Instructions to access Keycloak to manage and authenticate users.

    The user name can be keycloak and the password can be retrieved by running the following command:
    kubectl get secret -n test-system rtas-keycloak-postgresql -o jsonpath="{.data.password}" | base64 --decode; echo 

    Where, rtas is a sub-domain name that you selected for the server.

  • The URL to access the Rational® Test Automation Server UI.

What to do next

You can perform the following tasks:

You can migrate the user data if you upgraded the server software from the earlier version to a new version.

The migration procedure is different based on the existing version of the server software. For more information about migration process, go to the following topics: