So, you have chosen Atlassian Jira as your agile project management solution. Or perhaps you’ve decided that Confluence is the answer to your team’s collaboration requirements. It may also be the case that you have already deployed an Atlassian Server product and are weighing up the pros and cons of moving to the Cloud. So, what next? Regardless of which Atlassian product you have decided on, you will likely arrive at the same question: “Do I want a self-hosted Server deployment or Atlassian’s own Cloud platform?”. There is no one size fits all answer here. Both hosting options come with their own advantages and disadvantages over the other, which is largely based on your team’s specific requirements.
In many cases, opting for an Atlassian Cloud deployment can have some major advantages over a Server deployment. However, deploying Atlassian Server products into your own private cloud (such as Amazon Web Services (AWS) or Microsoft Azure) can help to mitigate some of the challenges associated with traditional on-premise solutions. In this article, we’ll be looking into these two hosting options to hopefully take you from being ‘on the fence’ to having a clear decision on your Atlassian deployment options.
Cloud vs Server
What’s the difference?
There are many articles out there which outline the functional differences between Atlassian Server and Cloud products. To summarise the finer details, let’s distil the many differences between the two platforms to four areas: Pricing, Infrastructure, Compatibility, and Compliance.
Pricing
Atlassian Cloud product licenses are billed on a monthly per-user basis (or annually at a discounted rate), which, in terms of contractual flexibility, can be helpful to organisations who are not yet fully sold on purchasing a one-year Atlassian Server license.
Server products are purchased as a perpetual license. This license comes with one year of Atlassian maintenance and support, which can be renewed at half the price of the original purchase. A valid license is also required to perform application upgrades.
Atlassian Cloud products come in at a lower price point for smaller-scale deployments. Take Jira, for example. A 2,000-user Jira Server license costs $60,000. A Standard Jira Cloud instance with 801-1,000 users is priced at $53,500, where the same instance with 1,001-1,200 users will cost you $63,500 due to the step up in pricing tier. Those larger-scale Cloud customers who wish to circumvent the storage cap of 250GB would need to upgrade to the Premium license tier, coming in at $81,500 per year, complete with a 99% uptime SLA and 24/7 support. Of course, the cost of physical infrastructure required for a Server deployment should also be factored in here.
Small-scale customers may be interested in the ‘Free’ Cloud license tier, which allows free access to Jira and Confluence Cloud up to 10 users and 2GB of storage.
You can find more information on Atlassian’s pricing model here. You should also check out our blog post here, where we discuss Atlassian’s recent pricing changes across many of their products.
Infrastructure
Atlassian Cloud products are SaaS solutions, meaning that Atlassian takes care of deploying and maintaining the infrastructure for your applications, freeing up your IT teams to work on other activities. The location of your application data depends on the locations of the majority of your user base, and therefore where most of your site traffic will be coming from. There are currently data centres for the Atlassian Cloud located in the US, Germany, Ireland, Singapore, and Australia. Choosing Cloud puts your application availability entirely in the hands of Atlassian, which is favourable to many prospective customers. It should be noted, however, that Atlassian Cloud servers have been subject to slowdowns and unavailability in the past. See the Atlassian Status Page for a full list of Atlassian Cloud service incidents.
Those who wish to assume responsibility for deploying and hosting their applications should choose Atlassian Server (or if mission critical, or at scale potentially Data Center) products. Whilst this will require more effort to deploy and maintain, it will allow for a higher level of control and customisation of your applications. One key benefit is the ability to sandbox application and plugin upgrades before applying them to a production environment, a feature many feel the Atlassian Cloud, where such upgrades are performed automatically, is sorely lacking. Larger-scale customers may also prefer Atlassian Server products to avoid the 250GB storage limit or the 5000-user limit imposed by Standard Cloud products.
Note: Atlassian have opened early access to 10,000-user Cloud licenses for select customers, though it is unclear when this option will become available to everyone.
Quite a significant drawback of Atlassian Cloud for many prospective customers is the inability to use a custom domain URL for their website. All Atlassian Cloud sites follow the naming convention ‘<site_name>.atlassian.net’. Atlassian Server products can be hosted entirely under the customer’s domain name, behind their own firewall, and many customers would opt for a Server deployment for this reason alone. Server customers would, however, assume responsibility for purchasing and maintaining their own domain name and SSL certificates, should they be required. Atlassian has announced that they will be allowing customers to set their own custom domain URLs for their cloud products in the future, though, as before, there is no set date for this as of yet.
Compatibility
Atlassian Cloud users may choose to supplement the out-of-the-box features of their applications with various 3rd party Apps (formerly add-ons) available on the Atlassian Marketplace. Atlassian Cloud software upgrades are performed automatically by Atlassian, which while being a huge time-saver for those unconcerned with such technical requirements, could potentially cause 3rd party Apps to ‘break’ or run into compatibility issues.
Atlassian Server products require manual and regular upgrades to maintain security. This is a trade-off for full control of the installed software and 3rd party App versions. The ability to perform test upgrades of your application and its plugins fully mitigates the risk of compatibility issues between your installed software.
There are far fewer options for Cloud users in terms of 3rd party Apps. Cloud compatible Apps also tend to be lesser in terms of functionality to their Server-based counterparts. This is largely due to Atlassian’s Cloud architecture, which dictates that 3rd party App data must be hosted outside of Atlassian’s servers. Having data in multiple locations can also turn migrating from Cloud to Server, Data Center, or even a second Cloud instance into a complex and difficult task.
Compliance
Possibly the most important factor to consider when choosing between Atlassian Cloud and Server is data security compliance.
With Atlassian Cloud base products, there is no need to worry about compliance standards (think GDPR, ISO, PCI, etc.) within the bounds of Atlassian’s own software. As mentioned before, however, Atlassian’s Cloud architecture dictates that 3rd party App data must be hosted outside of Atlassian’s servers. This makes auditing a less straight-forward task as potentially sensitive App data would be circulated outside of the Atlassian network. Beyond this point, compliance responsibility and accountability are reassumed by the user. On top of that, Atlassian will not guarantee data locality and states that customer data may move between their various data centres.
Customers can save hassle in terms of security by opting for an Atlassian Cloud deployment. All customer data within Atlassian’s servers is encrypted both in transit (TLS 1.2+ / PFS) and at rest (AES-256), meaning that your data security meets industry standards from the get-go. Those customers who choose to deploy Atlassian Server products will be responsible for installing, configuring and maintaining their own firewalls and encryption software, introducing further operational cost and administrative accountability.
Compliance standards with Jira Server follow the same ‘do-it-yourself’ principles as most other Server aspects. Atlassian does not assume any responsibility for the data security of your application, leaving it all to you. This can be helpful for many organisations who follow specific compliance standards which may be infeasible to meet within a Cloud-based instance. As mentioned before, data locality is made easy by self-hosted databases and application servers. All data from 3rd party Apps can also be stored within the user’s self-hosted servers, under the same compliance standards as the main database.
Is there more to consider?
First impressions of Atlassian Cloud and Server will reveal that the main disadvantage of choosing Server over Cloud is the burden of manual infrastructure maintenance. Perhaps data locality is mandatory within your organisation, but you cannot justify the cost of building, designating, and maintaining physical infrastructure for the benefits of Atlassian Server products. Perhaps your attachment storage requirements exceed the limit of 250GB imposed on Standard Cloud products, though you are not sure of an upper limit to this requirement and could potentially be wasting capital on redundant storage capacity.
Let’s look at what makes hosting Atlassian applications in a private cloud platform such as AWS such an appealing alternative to investing in and maintaining physical in-house infrastructure.
Jira Cloud vs Jira Server with AWS Managed Hosting
All fronted by a GUI that’s easy on the eyes (partnered with API and CLI accessibility), tools like AWS provide a wide array of services to suit the needs of any SysOps administrator. AWS tools are quick to deploy and provide enough range of functionality to suit virtually any project specification. Let’s explore a few of the advantages of Atlassian Server products made possible by hosting them within AWS:
- Scalability – Hosting your Atlassian Server application in an Amazon Elastic Compute Cloud (EC2) instance allows you to easily vertically scale and add storage capacity to your instance.
Amazon’s Relational Database Service (RDS) extends the scalability potential of Atlassian Server products. Housing your application database in an RDS instance allows you to easily add CPU and storage capacity to your database server. Amazon’s RDS service also reduces administrative overheads which may impede scalability, automating repetitive tasks such as server patching, database maintenance, and backup labour.
- Deployment – A factor which may draw prospective customers towards Atlassian Cloud is ease of deployment. CloudFormation, Amazon’s Infrastructure as Code (IaC) service allows users to easily deploy required resources for their applications using coded templates. Creating sandbox environments of your Atlassian Server products can be made effortless using this feature. We use CloudFormation internally for this very purpose, saving time and effort by automating repetitive tasks and configuration, to easily deploy Atlassian Server products.
- Reliability – AWS provides a safe and reliable environment to run your Atlassian applications, offering features such as cross-zone replication and rollback functionality to provide a highly available service to keep your applications running as consistently and efficiently as possible. The risk of losing important data can be easily mitigated by taking a few quick clicks to set up automated backups of your application’s database and home/install directories and storing them in Amazon’s Simple Cloud Storage Service (S3) on a regular basis.
- Monitoring – Take that extra step to keep your applications running smoothly by monitoring the performance of your Atlassian applications, servers, and VPC network activity with AWS CloudWatch. Setting up automatic alerts based on multiple key performance metrics (CPU, Memory, Disk Capacity, etc.) offers you the peace of mind and assurance that you will have the opportunity to take preventative measures before your servers run into performance problems. See our blog post on how you might use advanced monitoring to keep your apps running smoothly here.
- AWS alleviates the responsibility of maintaining network security by managing, in their own terms, “Security of the Cloud”. AWS provides and maintains all the necessary compute, storage, and networking infrastructures to keep your Atlassian suite running smoothly, while also providing convenient methods of implementing firewalls and encryption methods into your cloud setup.
You might still be thinking that the time placed in setting up your AWS environment could have been saved by opting for Atlassian Cloud, but what you now have is an Atlassian Software solution with the functional advantages of Atlassian Server without any of the control restrictions or size limitations enforced by Atlassian’s Cloud Architecture. So, when choosing between Server and Cloud, you should keep in mind that many of the disadvantages of Atlassian Server products can be mitigated.
So, Which One?
If you ask me, it’s a no-brainer. The benefits of opting for a combination of Atlassian Server and AWS Cloud far outweigh the convenience factor of Atlassian Cloud. The ability to administer all areas of your instance, add as many custom fields as you like, run custom scripts, and even edit the backend config of your software to meet those special requirements, are all components of Atlassian Server that put it leaps and bounds ahead of its Cloud counterpart in terms of functionality and control.
Reading through recent Atlassian blog posts, it is clear that Atlassian have big plans for their Cloud platform. Over time, I believe that the functionality of Atlassian’s Cloud products will come to rival that of their Server counterparts. But for now, I would steer those who are uncertain towards Atlassian Server, if not for full control of your application, for the expansive customisation options available.
Scalability is trivial now that you’ve combined Atlassian Server with an AWS Cloud Computing solution. While the sky is the limit in terms of the necessary infrastructure to scale Atlassian Server and Data Center deployments within AWS, those who plan to expand their Cloud solution in the future would need to very carefully consider the various disk storage limitations of Atlassian Cloud should they opt for such a deployment.
Atlassian Server products can be further bolstered beyond their out-of-the-box capabilities with the fleet of Apps at your disposal. While this is also true for Atlassian Cloud, the options are thinner on the ground, and you will likely encounter a desired App that would take your sensitive data outside of your Atlassian Cloud environment which, as mentioned before, can be a problem for some customers.
Not to say that Atlassian Cloud is the underdog in all scenarios. A Cloud solution can be ideal for those smaller, insular teams that do not have significant future growth plans, or who just want a simple, basic agile workflow software solution free of administrative responsibilities.
Enterprise Cloud – Coming Soon
Atlassian have recently announced their Cloud Enterprise plan, which aims to address some of the drawbacks of choosing a cloud environment over a server deployment discussed in this article. Atlassian Enterprise Cloud will offer the customer more control over many administrative areas, including data privacy, governance, and versioning.
There is currently little information in terms of pricing for Enterprise Cloud. However, looking at Atlassian’s Premium Cloud pricing, it is likely to be more expensive still. This plan is likely best suited for large-scale organisations, further indicated by the unlimited user capacity and Jira Software storage included with the Atlassian Enterprise Cloud plan.
Still Not Sure?
If you are still undecided about choosing Atlassian Server or Cloud and would like to speak to one of our technical experts, feel free to reach out to AC today. We have an in-house team of certified Atlassian and AWS professionals who can offer expert advice to objectively help you decide on which Atlassian deployment best suits your business.