Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 4 Next »

User guide for Data Center App Performance Toolkit

Link: https://developer.atlassian.com/platform/marketplace/dc-apps-performance-toolkit-user-guide-jira/


The above link is the Data Center App Performance Toolkit User Guide for Jira.

In this document, it covers the use of the Data Center App Performance Toolkit in two types of environments:

  • Development environment

  • Enterprise-scale environment

For both types of environment need to the same steps as mentioned in the documentation. But while running the below command, if it fails we need to run manually.

image-20240129-062234.pngimage-20240129-062349.png

To execute the installation command for conf.tfvars using Docker and winpty, follow the steps below:

  1. Run the complete installation command with winpty:
    winpty docker run --pull=always --env-file aws_envs \ -v "/$PWD/dcapt.tfvars:/data-center-terraform/conf.tfvars" \ -v "/$PWD/dcapt-snapshots.json:/data-center-terraform/dcapt-snapshots.json" \ -v "/$PWD/logs:/data-center-terraform/logs" \ -it atlassianlabs/terraform:2.7.1 ./install.sh -c conf.tfvars

If this command fails, proceed to the next step.

  1. If the full command fails, run the Docker container separately:

winpty docker run --pull=always --env-file aws_envs \ -v "/$PWD/dcapt.tfvars:/data-center-terraform/conf.tfvars" \ -v "/$PWD/dcapt-snapshots.json:/data-center-terraform/dcapt-snapshots.json" \ -v "/$PWD/logs:/data-center-terraform/logs" \ -it atlassianlabs/terraform:2.7.1

you’ll get like below screenshot after executing the above command

image-20240129-063121.png

After executing the above command, you will enter the Docker container environment.

  1. Inside the Docker container, execute the installation command manually:
    ./install.sh -c conf.tfvars

After running this command, you should see the installation progress.

This approach allows you to troubleshoot any issues that may arise during the installation process. If the full command fails, you can break it down into steps to identify and resolve any problems with the installation.

If the installation command fails, it should be reattempted until successful. Upon successful execution, the console output will provide a Product URL resembling http://a1234-54321.us-east-2.elb.amazonaws.com/jira.

Manual steps to run test execution

For each of the test runs (run1 to run5), the same documented steps should be followed. If the test execution commands fail during any run, manual steps must be taken to proceed with the test execution.

To manually initiate the test execution, follow the steps below:

  1. Set the environment name in the Git Bash:

    export ENVIRONMENT_NAME=your_environment_name

  2. Run the following commands:

    docker run --pull=always --env-file ./app/util/k8s/aws_envs \ -e REGION=us-east-2 \ -e ENVIRONMENT_NAME=$ENVIRONMENT_NAME \ -v "/$PWD:/data-center-terraform/dc-app-performance-toolkit" \ -v "/$PWD/app/util/k8s/bzt_on_pod.sh:/data-center-terraform/bzt_on_pod.sh" \ -it atlassianlabs/terraform:2.7.1 bash

  3. Configure AWS EKS:

    aws eks update-kubeconfig --name atlas-"$ENVIRONMENT_NAME"-cluster --region "$REGION"

  4. Get the name of the execution environment pod:

    exec_pod_name=$(kubectl get pods -n atlassian -l=exec=true --no-headers -o custom-columns=":metadata.name") echo "INFO: Execution environment pod name: $exec_pod_name"

  5. Execute a shell in the identified pod:

    kubectl exec -it "$exec_pod_name" -n atlassian -- bash

The provided image serves as a reference for the expected outcomes after completing all the aforementioned commands.

image-20240129-064138.png

Certainly! Below are the revised sentences based on the provided commands:

  1. Exit the current session by running the command:

    exit

  2. List all files and directories in the current location:

    ls -la

image-20240129-065441.png
  1. List all files and directories in the "dc-app-performance-toolkit" directory:

    ls -la dc-app-performance-toolkit

image-20240129-065510.png
  1. Remove the "/dc-app-performance-toolkit" directory from the container named "$exec_pod_name" in the "atlassian" namespace:

    kubectl exec -it "$exec_pod_name" -n atlassian -- rm -rf /dc-app-performance-toolkit

  2. Copy the local "dc-app-performance-toolkit" directory to the container named "$exec_pod_name" in the "atlassian" namespace. Retry up to 10 times in case of failures:

    kubectl cp --retries 10 dc-app-performance-toolkit atlassian/"$exec_pod_name":/dc-app-performance-toolkit

image-20240129-065614.png
  1. Run a Docker container named "dcapt" with the specified configurations using the Jira YAML file. Ensure the correct application host name is set for proper functionality:

    kubectl exec -it "$exec_pod_name" -n atlassian -- docker run --pull=always --shm-size=4g -v "/dc-app-performance-toolkit:/dc-app-performance-toolkit" atlassian/dcapt jira.yml

image-20240129-070233.png

Please refer to the screenshot above to confirm that the execution is proceeding correctly.

image-20240129-070703.png

The above screenshot shows the results after completion of run.

Note: Ensure that the application hostname is accurately configured; otherwise, the tool won't have the necessary information to navigate.

Once the run is completed, execute the following command from within the container:

kubectl cp --retries 10 atlassian/"$exec_pod_name":dc-app-performance-toolkit/app/results dc-app-performance-toolkit/app/results

This command will copy the run results back to your local environment. Don’t forgot to run the above command, otherwise it will not copy results to your local.


Just need to follow the same steps after every run.

  1. Cleanup

kubectl exec -it "$exec_pod_name" -n atlassian -- rm -rf /dc-app-performance-toolkit
  1. Copy from local to pod

kubectl cp --retries 10 dc-app-performance-toolkit atlassian/"$exec_pod_name":/dc-app-performance-toolkit
  1. Start execution

kubectl exec -it "$exec_pod_name" -n atlassian -- docker run --pull=always --shm-size=4g -v "/dc-app-performance-toolkit:/dc-app-performance-toolkit" atlassian/dcapt jira.yml
  1. Copy results back to local

kubectl cp --retries 10 atlassian/"$exec_pod_name":dc-app-performance-toolkit/app/results dc-app-performance-toolkit/app/results


Termination

Terminate the cluster by using the command

winpty docker run --pull=always --env-file aws_envs \
-v "/$PWD/dcapt.tfvars:/data-center-terraform/conf.tfvars" \
-v "/$PWD/dcapt-snapshots.json:/data-center-terraform/dcapt-snapshots.json" \
-v "/$PWD/logs:/data-center-terraform/logs" \
-it atlassianlabs/terraform:2.7.1 ./uninstall.sh -c conf.tfvars

If the complete command didn’t worked and it throws an error then follow the below command

./uninstall.sh -c conf.tfvars

Need to clear the instances running in the aws environment. Make sure check all the cases like volumes, groups, instances, EKS cluster, RDS database and General purpose buckets.

  • No labels