Upgrading JIRA Data Center on AWS

On this page

Still need help?

The Atlassian Community is here for you.

Ask the community

Upgrading JIRA Data Center on AWS is similar to a regular upgrade on a local environment. You will switch the installer to a different version, and then deploy new EC2 instances in the version you’ve chosen, also achieving zero downtime. 

tip/resting Created with Sketch.

Although this guide is written to help you upgrade your JIRA stack, you can use it to install any version you want.

Before you begin

To upgrade your JIRA Data Center, you'll need the following:

  • private key (.pem) file created while deploying the Quick Start
  • SSH client

Upgrading JIRA instances

Mount the EFS storage

The current installer, used by the Quick Start to deploy your instances, is in the EFS storage. You can't access it directly, because the Quick Start deploys all instances into private subnets. To work around it, you'll create a new instance in a public subnet, and use it to mount the EFS storage.

  1. Create a new instance in a public subnet. Let's refer to it as jumpbox.

    Show me how to do this...
    1. In the AWS console, go to Services > EC2 (if you can't find it, type EC2 in the search bar).
    2. In the menu on the left, select Instances, and then click Launch Instance.
    3. Select the operating system, e.g. Amazon Linux, which is a default OS used by the Quick Start.
    4. Select the size. We'd recommend t2.nano, since you don't need much capacity on this instance.
    5. In the Configure Instance Details page, make sure you get these settings right:

      • Network: Choose your stack's VPC.
      • Subnet: Choose any public subnet. Your stack should have two private, and two public subnets.
      • Auto-assign Public IP: Enable.
    6. Add storage, and click Next.
    7. In the Configure Security Group page, select an existing security group, and choose the security group of your stack from the list.
    8. Click Review and Launch .
    9. Select the key pair that you created while deploying the stack, and launch the instance.

    The new instance will be started in your stack, which might take several minutes. You can later use it to connect to all instances in the stack, but we'll just need it to mount the EFS.

  2. Connect to the new instance over SSH.

    Show me how to do this...
    1. In the AWS console, go to Services > EC2 > Instances, and select the jumpbox that you just launched.
    2. From the Description tab, copy the Public DNS. You'll need it to connect to this instance.
    3. Get your private key (.pem) file ready.
    4. Open the SSH client, and connect to the jumpbox with this command:

      ssh -i privatekey.pem ec2-user@public_dns

      For example:

      ssh -i atlassian.pem ec2-user@ec2-35-164-58-207.us-west-2.compute.amazonaws.com
  3. Mount the EFS storage on this intance, so you can access the JIRA installer.

    Show me how to do this...
    1. In the AWS console, go to Services > EFS, and select the EFS used by your stack.
    2. Click Amazon EC2 mount instructions. It will show you the commands needed to mount the file server. You're interested in "Mounting your file system".
    3. Connect to the jumpbox over SSH.
    4. Run the mount command, as described in "Mounting your file system".
    5. After mounting the EFS storage, you can browse the files it contains. These should include the JIRA installer and the version file.

With access to the JIRA files, you can update the installer and the related version file.

Upgrade your JIRA instances

Having access to the JIRA files, you can update the installer and the related version file. Once you complete these steps, you can terminate your instances one by one, and start the new ones, in the new version.

  1. Update the installer and the version file.
    1. Download the JIRA installer.
    2. Access your EFS storage. If you missed that part, see Mount the EFS storage.
    3. Switch the current installer to the new one. Make sure the file name keeps the same pattern.
    4. Edit the version file in the same directory, and update the version.

  2. Put JIRA into upgrade mode, so that it accepts your instances being in different versions during the upgrade.
    1. Log in to your JIRA instance on AWS.
    2. Go to  > Applications > JIRA upgrades, and click Put JIRA into upgrade mode.

      For more information about the upgrade mode, see Managing zero downtime upgrades.

  3. Terminate your instances in AWS one at a time.
    1. In the AWS console, go to Services > EC2 > Instances.
    2. Right-click an instance, and select Instance State > Terminate. A new instance will be automatically started for each terminated instance. To achieve zero downtime, wait until the new instance is started before you terminate the next one, it might take several minutes.

  4. After all instances are upgraded, finalize the upgrade.
    1. In JIRA, go to  > Applications > JIRA upgrades, and click Finalize upgrade (in some cases, it might be Run upgrade tasks instead.)

Well done! You upgraded your JIRA instance to a new version. You can see the current version by going to  > Applications > Versions and licenses.

Last modified on Jan 15, 2018

Was this helpful?

Provide feedback about this article
Powered by Confluence and Scroll Viewport.