Running Jira on an AWS cluster
If you decide to deploy Jira Data Center in a clustered environment, consider using Amazon Web Services (AWS). AWS allows you to scale your deployment elastically by resizing and quickly launching additional nodes, and provides a number of managed services that work out of the box with Jira Data Center. These services make it easier to configure, manage, and maintain your deployment's clustered infrastructure.
Interested in learning more about what Jira Data Center provides? Click here for an overview.
On this page:
Non-clustered VS clustered environment
A single node is adequate for most Small or Medium size deployments, unless you need high availability or zero-downtime upgrades.
Deploying Jira Data Center in a cluster using the AWS Quick Start
The simplest way to deploy your entire Data Center cluster in AWS is by using the Quick Start. The Quick Start launches, configures, and runs the AWS compute, network, storage, and other services required to deploy a specific workload on AWS, using AWS best practices for security and availability.
The Quick Start provides two deployment options, each with its own template. The first option deploys the Atlassian Standard Infrastructure (ASI) and then provisions either Jira Software or Jira Service Desk Data Center into this ASI. The second option only provisions Jira Software or Jira Service Desk Data Center on an existing ASI.
Atlassian Standard Infrastructure (ASI)
The ASI is a virtual private cloud (VPC) that contains the components required by all Atlassian Data Center applications. For more information, see Atlassian Standard Infrastructure (ASI) on AWS.
Here's an overview of the architecture for the Jira Data Center Quick Start:
The deployment consists of the following components:
- Instances/nodes: One or more Amazon Elastic Cloud (EC2) instances as cluster nodes, running Jira.
- Load balancer: An Application Load Balancer (ALB), which works both as load balancer and SSL-terminating reverse proxy.
- Amazon EFS: A shared file system for storing artifacts in a common location, accessible to multiple Jira nodes. The Quick Start architecture implements the shared file system using the highly available Amazon Elastic File System (Amazon EFS) service.
- Database: Your choice of shared database instance – Amazon RDS or Amazon Aurora.
- Amazon CloudWatch: Basic monitoring and centralized logging through Amazon's native CloudWatch service.
For more information, see Jira products on AWS.
All of our AWS Quick Starts use Ansible playbooks to configure specific components of your deployment. These playbooks are available publicly on this repository:
Jira Server allows you to apply advanced settings through the
jira-config.properties file. You can also use the same file to apply the same settings to an existing Quick Start deployment. For detailed instructions on how to do this, see Use the jira-config.properties file to customize an AWS Quick Start deployment.
Launching the Quick Start from your own S3 bucket (recommended)
The fastest way to launch the Quick Start is directly from its AWS S3 bucket. However, when you do, any updates we make to the Quick Start templates will propagate directly to your deployment. These updates sometimes involve adding or removing parameters from the templates. This could introduce unexpected (and possibly breaking) changes to your deployment.
For production environments, we recommend that you copy the Quick Start templates into your own S3 bucket. Then, launch them directly from there. Doing this gives you control over when to propagate Quick Start updates to your deployment.
- Clone the Quick Start templates (including all of its submodules) to your local machine. From the command line, run:
git clone --recurse-submodules
- (Optional) The Quick Start templates repository uses the directory structure required by the Quick Start interface. If needed (for example, to minimize storage costs), you can remove all other files except the following:
│ └─ quickstart-atlassian-services
│ └─ templates
│ └── quickstart-vpc-for-atlassian-services.yaml
Install and set up the AWS Command Line Interface. This tool will allow you to create an S3 bucket and upload content to it.
Create an S3 bucket in your region:
aws s3 mb s3://<bucket-name> --region <AWS_REGION>
At this point, you can now upload the Quick Start templates to your own S3 bucket. Before you do, you'll have to choose which Quick Start template you’ll be using:
quickstart-jira-dc-with-vpc.template.yaml: use this for deploying into a new ASI (end-to-end deployment).
quickstart-jira-dc.template.yaml: use this for deploying into an existing ASI.
- In the template you’ve chosen, the
QSS3BucketNamedefault value is set to
aws-quickstart. Replace this default with the name of your S3 bucket.
Go into the parent directory of your local clone of the Quick Start templates. From there, upload all the files in local clone to your S3 bucket:
aws s3 cp quickstart-atlassian-jira s3://<bucket-name> --recursive --acl public-read
- Once you’ve uploaded everything, you’re ready to deploy your production stack from your S3 bucket. Go to Cloudformation → Create Stack. When specifying a template, paste in the Object URL of the Quick Start template you’ll be using.
Amazon Aurora database for high availability
The Quick Start also allows you to deploy Jira Data Center with an Amazon Aurora clustered database (instead of RDS).
If the writer fails, Aurora automatically promotes one of the readers to take its place. For more information, see Amazon Aurora Features: PostgreSQL-Compatible Edition.
For instructions on manually setting up a new Amazon Aurora clustered database and connecting it to Jira Data Center, see Connecting Jira Data Center to Amazon Aurora. Amazon Aurora is supported on Jira Software 8.4, Jira Service Desk 4.4, and all later versions of both.
Amazon CloudWatch for basic monitoring and centralized logging
By default, Amazon CloudWatch will also collect and store logs from each node into a single, central source. This centralized logging allows you to search and analyze your deployment's log data more easily and effectively. See Analyzing Log Data with CloudWatch Logs Insights and Search Log Data Using Filter Patterns for more information.
Amazon CloudWatch provides basic logging and monitoring, but also costs extra. To help reduce the cost of your deployment, you can disable logging or turn off Amazon CloudWatch integration during deployment.
To download your log data (for example, to archive it or analyze it outside of AWS), you’ll have to export it first to S3. From there, you can download it. See Exporting Log Data to Amazon S3 for details.
Auto Scaling groups
If you can identify any periods of high and low load, you can schedule the application node cluster to scale accordingly. See Scheduled Scaling for Amazon EC2 Auto Scaling for more information.
To study trends in your organization's load, you'll need to monitor the performance of your deployment. Refer to Jira Data Center sample deployment and monitoring strategy for tips on how to do so.
Supported AWS regions
Not all regions offer the services required to run Jira. You'll need to choose a region that supports Amazon Elastic File System (EFS). These regions are:
- Northern Virginia
- Northern California
- Europe/Middle East/Africa
- Asia Pacific
This list was last updated on .
The services offered in each region change from time to time. If your preferred region isn't on this list, check the Regional Product Services table in the AWS documentation to see if it already supports EFS.
AWS GovCloud is not for production
Our Quick Starts are also available on AWS GovCloud regions, but only for testing purposes. We do not support any deployments on GovCloud regions resulting from this Quick Start.
Customizing the AWS Quick Start's CloudFormation templates
To get you up and running as quickly as possible, the Quick Start doesn't allow the same level of customization as a manual installation. Alternatively, you can customize the CloudFormation templates used by the Quick Start to fit your needs. These templates are available from the following repository: