JIRA upgrade logistical question

Ben Radlinski April 12, 2016

I've been working on a JIRA 7.1 (from 6.0.7) upgrade project for what seems like 5 years now, and after a bunch of false starts, I have a pretty solid, working test instance of our JIRA server running 7.1. At first, I was thinking I would leave the test server and run an in-place upgrade on the production server, using the 7 pages of notes I have on the entire process (I've run into all sorts of little idiosyncrasies while working on this upgrade).

However, since my brain hurts, and I have this perfectly good copy of JIRA 7.1 running, I was thinking I could move everything over from the production server and call it a day, but there are a few caveats:

I had to dump my JIRA MySQL database and convert it to the proper collation and character set. The current production db has NOT been converted yet. So if I end up pointing my JIRA test instance at the old DB, it's going to choke. I assume I will need to do the dump/convert/import routine on the old DB as well. 

The attachments in jira-home. I have our jira-home directory mounted on a different volume, so I can detach that volume and attach it to the Test/New Instance. However, will this wreck any configurations I've made in the new instance?

If anyone has any helpful tips/tricks/paths of least resistance, I would love your advice. I've read all the Atlassian documentation on the subject already.

1 answer

0 votes
105349
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 12, 2016

Hey Ben!

You're definitely on the right track.  Since you've read all the documentation, I'll describe for you the general method that I use to perform this sort of upgrade.  I'm sure there are variations, but this works 99% of the time for me:

  1. Upgrade your prod instance to JIRA 6.4.  This will make upgrading to 7.1 much smoother, as there were a large number of under-the-hood changes, (specifically with Agile), that could cause issues if you upgrade directly from 6.0.7.
  2. On your prod instance, upgrade all your plugins and make sure they're compatible with 7.1.2, (using *JIRA update check* in the UPM).
  3. On your test instance, make sure your plugins are all up to date, and versions match with your prod instance.
  4. Once your prod instance is in a good, clean state, perform a full system backup.  This is simply a giant XML dump of your entire instance, (JIRA Backup).
  5. As for your attachments, I would not recommend attaching the test instance to your current prod directory.  I would zip up the prod attachments directory, and dump it into a new directory specifically for the test instance.
  6. Restore the prod backup to the test instance.  Keep in mind that this will overwrite all data that you may have already added.  (JIRA Restore)

After the restore completes, simply go through and update any prod settings, (base URL, new attachment directory, etc.), and you should be good to go!

And a few gotchas to consider:

  • Make note of any changes you've made in your prod config files, (setenv.sh, server.xml), so they can be replicated on your test instance.
  • What are you using for user authentication?  You may want to create a local admin in the local JIRA directory before doing the XML backup, just so you have a backdoor into the test instance after the restore if you need to reconfigure LDAP, AD, Crowd, etc.

Hopefully this helps!  Clearly this isn't the only way, but historically this has been the least error prone/most flexible way to accomplish an upgrade of this nature.  I'm sure @Nic Brough [Adaptavist] would have some suggestions, too. smile

 

Good luck!

Ben Radlinski April 12, 2016

Thank you for the thorough write-up, I appreciate it. This is going to help a lot.

105349
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 12, 2016

Excellent, happy to help!

Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
April 12, 2016

Pretty much what I'd have said too wink

Ben Radlinski April 14, 2016

I was planning to upgrade to 6.4.11 as you recommended, but I'm curious as to how drastic of an upgrade this is. I've read all the release notes, but in general, can I just go ahead run the upgrade or should I be extra careful with it. I realize I should always be careful when upgrading the production server, but I want to know if I'm going to take out the entire server and have to roll it back to 6.0. I guess my question is this: do you find that the 6.0 to 6.4 upgrade is typically painless?

 

Thanks.

105349
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 15, 2016

In my experience, it's generally pretty painless.  It is a pretty hefty upgrade, but I've never had any major issues that I can recall.  Reading through the upgrade notes, as you did, is fantastic.

That said, if I were you, (and had the time/resources), I'd clone the current prod instance off to another instance, and test the upgrade there; even going as far as switching that over to your new prod instance if everything tests out okay.  But that's just personal preference after many years of sysadmin work.  I don't like surprises.  smile

I'm sure you've read it, but just in case, check out this article on performing an upgrade with fallback capabilities:

Upgrade JIRA with Fallback

And clearly, no matter the route you decide to go, make backups, and backups of those backups. 

Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
April 15, 2016

I've not run into problems going 6.0 to 6.4 directly.  There's usually been things with add-ons, but the core data (meaning JIRA, Agile, Service Desk and Portfolio) tended to go smoothly.  The only hiccups I've had with them were having to re-install Agile to make it load properly. 

Ben Radlinski May 18, 2016

Follow up to say thank you. I was able to upgrade to 6.4 without only a couple issues, one of which involved getting a license key for the new Agile plugin from Atlassian. I have yet to move on to 7 yet, but I appreciate the help.

105349
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 18, 2016

No problem!  I appreciate the update.  smile

Ben Radlinski June 28, 2016

And it's done! I successfully updated to JIRA 7.1.7 last weekend with the greatest of ease, thanks to the advice here. I appreciate the help.

105349
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
June 28, 2016

AWESOME!  Great job, @Ben Radlinski!  I'm super happy that everything went smoothly.  smile

Suggest an answer

Log in or Sign up to answer