In this article we will see the step by step process to move JIRA from on-premises or virtual machine to Microsoft Azure VM.
- Backup from the existing installation
- Provision Azure VM (if you don’t have already)
- Install JIRA on Azure VM but don’t run it
- Restore JIRA home folder
- Create new database
- Run JIRA
- Restore database
1. Backup from the existing installation
First take the database backup, login as administrator, go to System menu and click on Import & Export , enter File name, database will be export as xml back (normally it will be exported to C:\Program Files\Atlassian\Application Data\JIRA\export).
Now copy the JIRA home folder ( which is normally at this location C:\Program Files (x86)\Atlassian\Application Data\JIRA ) to Azure VM.
TIP: export folder inside JIRA folder might contains a lot of back up files (depending upon your back up strategy) which can make its size bigger. Delete old back up files from copy if you don’t want these on new VM.
2. Provision Azure VM (if you don’t have already)
Provision an Azure VM if you don’t have it already and make the following configurations on it.
Open port 8080 (in default configuration JIRA listen on port 8080 for HTTP traffic, configure ports if you use HTTPS or any other custom port) for inbound traffic using the Azure portal.
TIP: If your machine is running a firewall then must allow this port in firewall settings as well.
3. Install JIRA on Azure VM but don’t run it
Install JIRA and any other supporting software like MySql (if you are using MySql as RDBMS).
TIP: Install the same JIRA & MySql (or any other RDBMS) versions on new machine, otherwise you might run into compatibility issues. If you are planning to upgrade you can do it after migration. But don’t do both of these things in one shot.
Don’t launch JIRA at the last step of installation wizard, hold it we will launch it later.
4. Restore JIRA home folder
Copy all the folders from old JIRA home folder to the new JIRA home folder. You might have note the location of JIRA home folder while installation, it is typically on this location C:\Program Files (x86)\Atlassian\Application Data\JIRA
Note: If you are prompted to replace the files in destination, skip these, means don’t replace them.
Note: Must delete the dbconfig.xml file after replacing the home folder. Otherwise JIRA will try to connect to old machine/configuration for database.
5. Create new database
If you used external database then create an empty database (name it any). But remember to use the same Charset/Collation which you had in old database.
6. Run JIRA
Now launch JIRA (remember we didn’t launch it at the end of installation wizard, check the checkbox to launch JIRA and click OK).
7. Restore database
Select the External database option on JIRA setup/configuration page and enter the database login credentials for newly created database. Test connection if you need to verify settings and click Next.
Click on import your existing data near top of the page and enter the complete path of database back up file, this back up file was in the JIRA home folder which we copied from old machine, typically path will be like: C:\Program Files (x86)\Atlassian\Application Data\JIRA\export\NameOfBackupFileOnOldSystem.zip
Where NameOfBackupFileOnOldSystem is the name of file you gave while taking backup on old machine/installation.
Click the Import button and JIRA will start restoring the database. It will show the progress during the import process.
When done, Setup Complete message will be show along with Login link. If you have reached this screen then you are ready to use your JIRA on this Azure VM.
TIP: Remember to shutdown the old server.
TIP: You can use Azure VM’s IP to access JIRA or using DNS name.
TIP: You can configure a main or subdomain to access JIRA to make the IP or DNS name hidden for the users (ofcourse they can see it using various tools/options but they will be access it using easy to remember main or sub domain name like jira.yourcompany.com)
Hopefully it will help you to migrate your JIRA server from one machine to another, especially to Azure VM.