Can we use a single webserver to host Confluence, Jira Core and Jira Service Desk
Asked by Ian Gordon:

Hi, We are looking at the potential of purchasing Confluence, Jira Core and Jira Service Desk and in the system specification page I saw a comment "**multiple Atlassian applications are not supported in a single Tomcat container"**, can anyone clarify does this mean that these three applications need to be on seperate webservers? Apologies I am not particularly familiar with Apache, and wasnt able to find any pre-sales technical support.


Answers:
author: Nic Brough -Adaptavist-
body: Do not mix up web-server with an application server.

Tomcat is an application server, it runs applications. You must NOT put a Jira and a confluence in the same Tomcat.

The web-server side is your choice. Tomcat can do it for you, but I almost always place Atlassian applications behind a separate web-server which is mostly there for SSL and proxying.

A typical layout for Atlassian stuff is:

* Jira in a Tomcat (with Service Desk and/or Software added).
* Confluence in a separate Tomcat.
* A proxy server serving up all parts of the web site, and reflecting Jira and Confluence on their desired urls as part of that site


author: Ian Gordon
body: Many thanks for the reply Nic, Im assuming it would not be recommended to have multiple tomcat instances on the same server?

So your suggested layout might look like...

* Server 1 - Jira Core and Jira Service Desk in a single Tomcat
* Server 2 - Confluence in a separate Tomcat.
* Server 3 - Acting as the webserver (proxy server serving up all parts of the web site.

And if I wanted to introduce a failover web server I could just have a second "Server3"? Does the Jira installers allow for choosing which roles are installed on a given server?

Many thanks again,

comments: author: Nic Brough -Adaptavist-
body: Multiple Tomcats is fine, as long as you are a little bit careful with them. Different Tomcats for different applications may have different Java requirements. As long as you configure them correctly (e.g. Tomcat 6 runs application 1 under Java 1.6, and Tomcat 8 runs application 2 under Java 1.8).

For more recent versions of Atlassian stuff, this is handled automatically, as the JRE is now bundled in, so "install Atlassian Application" creates the right **separate** JRE and configures the Tomcat to use it.

The only worry I have about running Tomcat/Jira, Tomcat/Confluence and Tomcat/Bitbucket on the same server is resources!

You could actually happily run all of the applications you describe on the same server. Given it's powerful enough and you're happy with one point of contact failure. (My home setup is Jira and Confluence on a moderately powerful server and a web-server running as a proxy on an old Raspberry Pi)


author: Ian Gordon
body: Thanks, I would ideally plan to use multiple servers for our system, are you aware of any documentation that talks about how to configure individual roles on each server, for example if I want to have the web server components installed on say two separate servers (to allow for failover)? Will the installers allow me to choose which roles are installed? Thanks again


author: Nic Brough -Adaptavist-
body: I'm not sure what you mean by "roles", sorry.

The installers will default to installing a Jira user, and a Confluence user to run the applications as. The web-server/proxy will use its own user as well, whatever the OS defines for it. But you shouldn't need to think about configuring them. They're OS users who exist to run things.


author: Ian Gordon
body: I guess I was thinking that the webserver type components could be offloaded to separate server(s) while other non web serving functionality could be on a separate application server. For example the below page mentions having a separate application and apache web server ("3 machines total: application server, database server, Apache HTTPD + LDAP tunnel server"), but I don't see any documentation on how to configure a separate application and apache server.

<https://confluence.atlassian.com/doc/server-hardware-requirements-guide-30736403.html>


author: Nic Brough -Adaptavist-
body: It's very common to do exactly that. To expand on my set up at home - I have one database server, one application server (with Jira and Confluence, so 2 Tomcats) and one web-server/proxy (which I also use for a vpn, but could just as easily be used for LDAP)

I tend to lean on <https://confluence.atlassian.com/kb/proxying-atlassian-server-applications-with-apache-http-server-mod_proxy_http-806032611.html> - it didn't use to be explicit about "apache (proxy)" server is on a different machine, but it's been improved and it is a bit more clear.

It still doesn't quite say "it doesn't matter where the proxy is" - it could be on the same box as the applications, it could be in a different physical data-centre! As long as it can present the external url and connect to the applications.


Tags: confluence-server

server