It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Bamboo Cloud mount EBS volume in SSD?

I specified a EBS snapshot ID in my elastic instance configuration page.

The snapshot contains atlas-sdk, pre-populated maven local repo and some other build tools I use.

I am hopping it will improve my build time, but turns out the volume bamboo created is always magnetic volume.

And I didn't find any options to specify a SSD volume.

Now my local build only take 1.5 min on desktop with SSD, the bamboo jobs actually takes 7 mins each, and I have many of those jobs!

 

Going through the bootstrap scripts on the image, it looks like hardcoded to use magnetic volume.

Anyone run into same problem, anyone managed to use SSD volume without copy and hack stock image?

 

I have tried to use instance startup script to overwrite the bootstrap script, but guess what, the bootstrap script runs first!

2 answers

1 accepted

0 votes
Answer accepted

Finally get around to try this, following Przemek's suggestion, I have managed to use mount pre-populated EBS in SSD for elastic bamboo build. below are the steps if anyone is interested.

  1. config your EBS block follow Atlassian document: https://confluence.atlassian.com/bamboo/configuring-elastic-instances-to-use-the-ebs-289277121.html
  2. Un-select Automatically mount EBS check box in your Elastic image configuration page
  3. add script below to the end of your instance start up script, replace snapshot id, region, zone, aws key and aws secrete with your own

    mkdir /mnt/bamboo-ebs
    chown bamboo:bamboo -R /mnt/bamboo-ebs
    export EBS_VOLUME=$(/usr/bin/ec2-create-volume --snapshot snap-e80c56c2 -size 100 --availability-zone eu-west-1a --type gp2 --region eu-west-1 -O "KEY" -W "SECRETE"|cut -c8-19)
    export INSTANCE_ID=$(wget -q -O - http://instance-data/latest/meta-data/instance-id)
    sleep 30
    /usr/bin/ec2-attach-volume ${EBS_VOLUME} -i ${INSTANCE_ID} -d /dev/sdf --region eu-west-1  -O "KEY" -W "SECRETE"
    sleep 30
    /usr/bin/ec2-modify-instance-attribute ${INSTANCE_ID} -b /dev/sdf=${EBS_VOLUME}:true --region eu-west-1  -O "KEY" -W "SECRETE"
    mount /dev/xvdf /mnt/bamboo-ebs
    sleep 10
    chown bamboo:bamboo -R /mnt/bamboo-ebs
    su - bamboo -c "/mnt/bamboo-ebs/bin/customiseInstance.sh"

 

1 vote

You should be able to create, attach and mount a volume on your own through the instance setup script.

Suggest an answer

Log in or Sign up to answer
Community showcase
Published in Bamboo

Unable to add or edit Bitbucket Cloud repository in Bamboo

On 31 May, a GDPR-related change went live in the Bitbucket Cloud API that resulted in users not being able to create or edit Bitbucket Cloud Linked repositories in Bamboo. This API update removed t...

811 views 2 7
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you