Jira Software Data Center on AWS (Part One)

February 6, 2017 | by Timothy Chin | Posted In Agile, Atlassian

Jira Software Data Center on AWS

Atlassian recently provided a Quick Start Guide with instructions on how to set up Jira Software Data Center and Bitbucket Server Data Center on Amazon Web Services (AWS). The Jira Data Center deployment option is designed for high availability, performance at scale, and instant scalability. In this blog, I will discuss the benefits of having Jira Data Center on AWS and the steps needed to set up a Jira Data Center instance on AWS.

Amazon offers reliable, scalable, and inexpensive cloud computing services. Atlassian’s Data Center offerings, coupled with AWS, go hand in hand with large and enterprise grade customers that need scalable and highly available development and project management tools. One of the main benefits of installing Jira Service Desk and Bitbucket Server Data Center onto AWS is that the node scalability (up and down) is as simple as clicking a button and saving the configuration.

Enterprise level services and security are also readily available for users who move their instances onto AWS. Using AWS is also highly cost effective. For example, users can choose to pay only for the computing resources, bandwidth, and storage that they use, and can easily scale these services up and down as needed.

The implementation above relies on a CloudFormation Quick Start template. The Quick Start sets up the following items on AWS:

  • An Amazon Virtual Private Cloud (VPC) configured with public and private subnets – this provides the network infrastructure for your Jira deployment
  • An Internet gateway to provide access to the Internet
  • In the public subnets, managed “network address translation” (NAT) gateways that allow outbound Internet access for resources in the private subnets – the Quick Start deploys NAT instances in regions where NAT gateways aren’t available
  • In the private subnets, Amazon Relational Database Service (RDS) PostgreSQL is used as the external database for Jira
  • In the private subnets, an Auto Scaling group with Jira instances based on Amazon Linux
  • Amazon Elastic File System (EFS) as the shared file system for storage
  • Your choice of creating a new VPC or deploying into your existing VPC on AWS – the template that deploys the Quick Start into an existing VPC skips the components above that are marked with asterisks

Notes:

  • Users who want to use the following guide/template should already be familiar with the basic functionalities of AWS mentioned above

Below is an example of the AWS architecture that will be set up:

AWS1

Source: https://aws.amazon.com/blogs/aws/new-aws-quick-starts-for-atlassian-jira-software-and-bitbucket-data-center/

Step 1: Getting the template

The Quick Start relies on AWS ClouldFormation to deploy Jira Software Data Center into a new or existing Virtual Private Cloud (VPC). Here is the link to the template and the general guide.

The next step is to obtain an AWS account by creating one at https://aws.amazon.com. By default, the template will deploy c3.xlarge  instances for the application, and users might need to request a service limit increase (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html).

Step 2: Using the template in CloudFormation

To use the template, log in to your AWS account and go to CloudFormation:

AWS2

Enter the URL to the template and click “Next”.

AWS3

Step 3: Details, details, details

This step requires the user to pay full attention to the setup.

Key Description
Stack Name The name of the CloudFormation Stack
Availability Zone The list of Availability Zones to use for the subnets in the VPC
VPC CIDR CIDR Block for the VPC
Private Subnet 1 & 2 CIDR CIDR Block for private subnet 1 & 2 located in Availability Zones 1 & 2
Public Subnet 1 & 2 CIDR CIDR Block for the public DMZ subnet 1 & 2 located in Availability Zones 1 & 2
SSL Certificate Name The name of your server certificate to use for HTTPS
Assign public IP Determines whether the EC2 instances are assigned a public IP address
Jira Product Pick the flavor of Jira to install
Jira cluster node instance type EC2 instance type for the Jira nodes. Here is a list of the instances (http://www.ec2instances.info/) .
Minimum number of cluster nodes Minimum number of nodes in the Auto Scaling group
Maximum number of cluster nodes Maximum number of nodes in the Auto Scaling group. This number can be changed later.
Database instance class RDS instance type
Master password Admin password for the database
Jira database password User password for the database
Database storage Size of the DB in GB
Database storage type Storage type
HA Database across Availability Zones Database high availability across Availability Zones
Catalina Options Java options passed to Jira’s JVM
Start the collected service Enable monitoring with the collectd.conf configuration file
Key Name Public/private key pairs to access the instances

Once the form has been filled, click Next.

Step 4: Options & Review

I won’t be diving into the Options section here, so you can just click “Next”.

The last section is the Review section.

AWS4

In the Review section, you can review and confirm the template settings. Click “Create” to complete the form and create and deploy the Stack. Creating the Stack may take some time (creating the DB may take a considerable amount of time), so feel free to grab some coffee.

The following screenshots show the different items the Stack creates:

AWS5

 

AWS6

Side note: estimating pricing

As a side note, users should also take the opportunity to estimate the cost of their setup. AWS provides a simple Monthly Calculator (http://calculator.s3.amazonaws.com/index.html) that can provide a basic estimate.

AWS7

Conclusion

I have just discussed the benefits of implementing Jira Data Center on AWS and walked you through the initial setup steps. In the next blog, I will discuss how to set up the Jira Data Center instance and manage this installation.