Ampere Computing Logo
Contact Sales
Ampere Computing Logo
DSB Social Network - Transition and Tuning Guide
DSB Social Network - Transition and Tuning Guide

IntroductionAcquire and Navigate DeathStar Bench Source CodeUnderstanding Scope of Changes to the Source CodePorting Dependent Binaries: Replacing AMD64 Binaries with ARM64 binariesPorting Bitnami Containers: “mongodb-sharded”Porting Bitnami Containers: “redis-cluster”Porting Bitnami Containers: “mcrouter”Porting DeathStarBench Source CodeGenerating Docker Images from Social Network source codeSetting up Kubernetes Cluster on BareMetal ServersLaunch Social network module on BareMetal ServersRun Workload From Remote Client on ClusterAppendix
DSB Social Network - Transition and Tuning Guide

Understanding Scope of Changes to the Source Code

Steps for Porting the DeathStarBench: SocialNetwork Application to Arm64

1. Generating Dependent Binaries for Bitnami Images

  • Download amd64 binaries from the “Stacksmith URL’s” present in the Dockerfiles of Bitnami containers and save these binaries to local.
  • Download equivalent arm64 binaries and save them to the binary location of each container’s folder
  • Change the folder name which was earlier referring to amd64 to arm64
  • For Binaries that are not available, build them from source

2. Generating Docker Images from Bitnami Containers and Charts

  • Download Bitnami containers repository
  • Modify the Dockerfile in the respective Bitnami containers source code for mongodb-sharded, bitnami-shell, mongodb-exporter, redis-cluster, redis-exporter, memcached, memcached-exporter and mcrouter by replacing the “Stacksmith URL’s” that contain the amd64 binaries with custom URL’s containing the arm64 binaries
  • Build docker container images from all the individual docker files and push them to Docker Hub
  • Modify the file “values.yaml” in the Bitnami charts source code for mongodb-sharded, redis-cluster and mcrouter to support architecture arm64
  • Modify the docker hub URL to link the custom docker account username where the new docker containers were pushed in earlier step
  • Tar and Gzip the updated charts and move them to “DeathStarBench/socialNetwork/helm-chart/socialnetwork/charts“ location (Do this step after Step 3 below)

3. Modifying DeathStarBench Source Code

  • Clone the DeathStarBench source code from GitHub
  • Search and replace all occurrences of username “yg397” with “anuphal” in the source
  • Delete existing .tgz charts from location “DeathStarBench/socialNetwork/helm-chart/socialnetwork/charts“ and replace with the arm64 equivalent from previous step
  • Modify all “values.yaml” files inside socialnetwork and all its sub-folders containing the services like mongodb, homeline-service, user-timeline, etc
  • Modify other files as required for architecture consistency
Next: Porting Dependent Binaries: Replacing AMD64 Binaries with ARM64 binaries
Previous: Acquire and Navigate DeathStar Bench Source Code
Created At : May 10th 2023, 5:03:06 pm
Last Updated At : July 31st 2023, 4:54:46 pm
Ampere Logo

Ampere Computing LLC

4655 Great America Parkway Suite 601

Santa Clara, CA 95054

image
image
image
image
image
 |  |  | 
© 2024 Ampere Computing LLC. All rights reserved. Ampere, Altra and the A and Ampere logos are registered trademarks or trademarks of Ampere Computing.
This site runs on Ampere Processors.