Upgrade Dos and Don'ts for JIRA and Confluence - Atlassian Summit 2010
Upcoming SlideShare
Loading in...5
×
 

Upgrade Dos and Don'ts for JIRA and Confluence - Atlassian Summit 2010

on

  • 4,504 views

Upgrade Dos and Don'ts for JIRA and Confluence

Upgrade Dos and Don'ts for JIRA and Confluence

Jeff Curry, Atlassian

Statistics

Views

Total Views
4,504
Views on SlideShare
4,274
Embed Views
230

Actions

Likes
0
Downloads
51
Comments
0

8 Embeds 230

http://www.atlassian.com 188
https://summit.atlassian.com 18
http://magnolia-staging.private.atlassian.com 15
https://www.atlassian.com 3
https://apps.akeles.com 2
https://wacdev.internal.atlassian.com 2
http://www.slideshare.net 1
http://localhost 1
More...

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Upgrade Dos and Don'ts for JIRA and Confluence - Atlassian Summit 2010 Presentation Transcript

  • 1. 1 1
  • 2. Upgrade Dos and Don'ts for JIRA + Confluence Jeff Curry, Technical Support, Atlassian 2 2
  • 3. JIRA Master! 3 3
  • 4. Agenda • Case review • Best practices • Prevention • Watch out! Questions? • 4 4
  • 5. Best Practices - No Cowboys Allowed 5 5
  • 6. Case #1 of 12 - Backup schmakups • Upgraded with production server, no backups • Canʼt start old version either 6 6
  • 7. Case #1 of 12 - Backup schmakups • Upgraded with production server, no backups • Canʼt start old version either 6 6
  • 8. Pro Tip #1 of 12 – Backup, cowboy! • Backup: Application directory, data directory, database • Create an upgrade checklist 7 7
  • 9. Pro Tip #1 of 12 – Backup, cowboy! • Backup: Application directory, data directory, database • Create an upgrade checklist Confluence JIRA Layout and Menu Look and feel Search Issue Navigator Permissions Workflow transitions Attachments Attachment links Plugins Plugins 7 7
  • 10. Case #2 of 12 – Murphyʼs Law at work • Server crashed with sound backup strategy in place 8 8
  • 11. Case #2 of 12 – Murphyʼs Law at work • Server crashed with sound backup strategy in place Restore? 8 8
  • 12. Pro Tip #2 of 12 - Practice restores • Preferably not when production is down… 9 9
  • 13. Case #3 of 12 – • Remote operations fail to complete after Confluence upgrade 10 10
  • 14. Case #3 of 12 – • Remote operations fail to complete after Confluence upgrade • Firewall? 10 10
  • 15. Case #3 of 12 – • Remote operations fail to complete after Confluence upgrade • Firewall? • Network? 10 10
  • 16. Case #3 of 12 – • Remote operations fail to complete after Confluence upgrade • Firewall? • Network? • Virus scanner? 10 10
  • 17. Case #3 of 12 – • Remote operations fail to complete after Confluence upgrade • Firewall? • Network? • Virus scanner? • RPC plugin? 10 10
  • 18. Case #3 of 12 – • Remote operations fail to complete after Confluence upgrade • Firewall? • Network? • Virus scanner? • RPC plugin? • CUSTOMIZIATION! 10 10
  • 19. Pro Tip #3 of 12 - Track your changes • Keep rolling log • Confluence page Inventory at upgrade time • Modz_detector ( Administration -> System Info ) 11 11
  • 20. Pro Tip #3 of 12 - Track your changes • Keep rolling log • Confluence page Inventory at upgrade time • Modz_detector ( Administration -> System Info ) JIRA find . –newer views Connie find . –newer users 11 11
  • 21. Prevention – Better safe than sorry 12 12
  • 22. Case #4 of 12 – Plugin safari After upgrading in testing JIRA no longer starts 13 13
  • 23. Case #4 of 12 – Plugin safari After upgrading in testing JIRA no longer starts 2010-04-30 09:44:38,151 main FATAL [atlassian.jira.upgrade.ConsistencyLauncher] An Error occurred during ConsistencyLauncher servlet context initialisation - com.atlassian.plugin.DefaultModuleDescriptorFactory. <init>(Lcom/atlassian/plugin/hostcontainer/HostContainer;) java.lang.NoSuchMethodError: com.atlassian.plugin.DefaultModuleDescriptorFactory. <init>(Lcom/atlassian/plugin/hostcontainer/HostContainer;) 13 13
  • 24. Case #4 of 12 – Plugin safari assign-from-customfield-plugin-1[1].3.jar jira-dashboard-sharing-1[1].1-JIRA3.11.jar atlassian-configurableobjects-0.9.jar jira-fisheye-plugin-2.2.4.jar atl-jira-subversion-plugin-0.10.4.1.jar jira-greenhopper-plugin-4.3.1.jar atlassian-plugins-0.23.2.jar jira-misc-workflow-extensions-1[1].3.jar atlassian-tagutil-0.1.jar jira-toolkit-0.7.30.jar dwr-2.0.5.jar jregex-1.2_01.jar javamail-1.3.3.jar language_default.jar jira-bamboo-plugin-2.3.1.jar ldapsdk-4.1.jar jira-calendar-plugin-1.9.jar mkk-jira-plugin-1[1].4.0-Jira-3.10.jar jira-charting-plugin-1.4.1.jar tdt-easyadmin-plugin-1.1.jar 14 14
  • 25. Pro Tip #4 of 12 - Know your plugins • System • Canʼt mess with ʻem • Bundled • Can be upgraded independently, disabled • Third-party • Skyʼs the limit 15 15
  • 26. Pro Tip #4.5 of 12 – Upgrade your plugins • The old way… 16 16
  • 27. Pro Tip #4.5 of 12 – Upgrade your plugins • The old way… 17 17
  • 28. Pro Tip #4.5 of 12 – Upgrade your plugins • The new way! 18 18
  • 29. Case #5 of 12 – Major upgrades • Attachments not being converted as advertised 19 19
  • 30. Case #5 of 12 – Major upgrades • Attachments not being converted as advertised • XML not suitable for large restores 19 19
  • 31. Case #5 of 12 – Major upgrades • Attachments not being converted as advertised • XML not suitable for large restores Attachment change with 2.7.3 19 19
  • 32. Universal Pro Tip - RTFM Consult documentation • Release notes • Upgrade guide • [ This half intentionally left blank ] 20 20
  • 33. Pro Tip #5 of 12 - • Communicate with stake holders • Evaluate milestone releases • New release cycle- 3-4 months 21 21
  • 34. Case #6 of 12 – Little pestering flies… • Preserving old-school navigation in JIRA 4.1+ 22 22
  • 35. Pro Tip #6 of 12 – Engage your users • Involve in upgrade decision • Invite them to perform QA ( in testing! ) 23 23
  • 36. Case #7 of 12 – Gadgets load slowly • After upgrading to JIRA 4.0 gadgets take forever to load 24 24
  • 37. Case #7 of 12 – Gadgets load slowly • After upgrading to JIRA 4.0 gadgets take forever to load • Reverse-proxy? 24 24
  • 38. Case #7 of 12 – Gadgets load slowly • After upgrading to JIRA 4.0 gadgets take forever to load • Reverse-proxy? • Server resources? 24 24
  • 39. Case #7 of 12 – Gadgets load slowly • After upgrading to JIRA 4.0 gadgets take forever to load • Reverse-proxy? • Server resources? • Client config? 24 24
  • 40. Case #7 of 12 – Gadgets load slowly • After upgrading to JIRA 4.0 gadgets take forever to load • Reverse-proxy? • Server resources? • Client config? • Profiling data looking good… 24 24
  • 41. Case #7 of 12 – Gadgets load slowly • After upgrading to JIRA 4.0 gadgets take forever to load • Reverse-proxy? • Server resources? • Client config? • Profiling data looking good… • 1/5 second – 1 second page load time 24 24
  • 42. Pro Tip #7 of 12 – Test new features • Review release summary pages • http://confluence.atlassian.com/display/DOC/Confluence+Release+Summary • http://confluence.atlassian.com/display/JIRA/JIRA+Release+Summary Encourage key stakeholders to evaluate 25 25
  • 43. Watch out! 26 26
  • 44. Case #8 of 12 – The devil is in the details • Setup new JIRA for upgrade, receiving “404 Not Found” 27 27
  • 45. Case #8 of 12 – The devil is in the details • Setup new JIRA for upgrade, receiving “404 Not Found” 2010-04-20 16:07:38,561 main ERROR [jira.appconsistency.db.DatabaseConsistencyCheck] There was a SQL exception checking for database driver correctness. Skipping. org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class 'com.mysqljdbc.Driver' for connect URL 'jdbc:mysql:localhost/jiradb? autoReconnect=true&useUnicode=true&characterEncoding=UTF8' 27 27
  • 46. Pro Tip #8 of 12 - Use the GUI! 28 28
  • 47. Case #9 of 12 – The complex upgrade 29 29
  • 48. Case #9 of 12 – The complex upgrade • Receiving 404 page after upgrading JIRA and Confluence • New • Hardware • Windows XP -> Debian linux • Standalone -> EAR/WAR • Trouble with configuring • LDAP • SSL • Days to resolve… 29 29
  • 49. Pro Tip #9 of 12 – 30 30
  • 50. Pro Tip #9 of 12 – • Deploy JIRA on new server, restore data 30 30
  • 51. Pro Tip #9 of 12 – • Deploy JIRA on new server, restore data • Deploy Confluence, restore data 30 30
  • 52. Pro Tip #9 of 12 – • Deploy JIRA on new server, restore data • Deploy Confluence, restore data • KB article to fix class loading 30 30
  • 53. Pro Tip #9 of 12 – • Deploy JIRA on new server, restore data • Deploy Confluence, restore data • KB article to fix class loading • Configure SSL • Mail server • LDAP server • Tomcat 30 30
  • 54. Pro Tip #9 of 12 – • Deploy JIRA on new server, restore data • Deploy Confluence, restore data • KB article to fix class loading • Configure SSL • Mail server • LDAP server • Tomcat • Configure LDAP 30 30
  • 55. Case #10 of 12 – Duplicate mail notifications 31 31
  • 56. Case #10 of 12 – Duplicate mail notifications # Testing • Production data • Jelly scripts • Workflow transitions Forgot notification schemes 31 31
  • 57. Pro Tip #10 of 12 – • bin/setenv.sh: #DISABLE_NOTIFICATIONS=" -Datlassian.mail.senddisabled=true -Datlassian.mail.fetchdisabled=true -Datlassian.mail.popdisabled=true” • Remove mail server in admin UI 32 32
  • 58. Confluence support #1 headache 33 33
  • 59. Case #11 of 12 – Cutting corners 34 34
  • 60. Case #11 of 12 – Cutting corners • Step 1 – Upgrade Confluence 34 34
  • 61. Case #11 of 12 – Cutting corners • Step 1 – Upgrade Confluence • Step 2 – Old DB -> New Confluence 34 34
  • 62. Case #11 of 12 – Cutting corners • Step 1 – Upgrade Confluence • Step 2 – Old DB -> New Confluence • Step 3 – Works good enough 34 34
  • 63. Case #11 of 12 – Cutting corners • Step 1 – Upgrade Confluence • Step 2 – Old DB -> New Confluence • Step 3 – Works good enough •… 34 34
  • 64. Case #11 of 12 – Cutting corners • Step 1 – Upgrade Confluence • Step 2 – Old DB -> New Confluence • Step 3 – Works good enough •… # Step 4 – Hmmm… attachments missing 34 34
  • 65. Case #11 of 12 – Cutting corners • Step 1 – Upgrade Confluence • Step 2 – Old DB -> New Confluence • Step 3 – Works good enough •… # Step 4 – Hmmm… attachments missing • Step 5 – Contact support, failing to mention this for awhile 34 34
  • 66. Case #11 of 12 – Cutting corners • Step 1 – Upgrade Confluence • Step 2 – Old DB -> New Confluence • Step 3 – Works good enough •… # Step 4 – Hmmm… attachments missing • Step 5 – Contact support, failing to mention this for awhile • Step 6 – ??? 34 34
  • 67. Pro Tip #11 of 12 - Donʼt cut corners! Donʼt make assumptions Freeze data for upgrade process • Perfect practice makes perfect 35 35
  • 68. Case #12 of 12 – $*#&$! Gadget loopback! • Created internal checklist and tested, tested, tested! 36 36
  • 69. Case #12 of 12 – $*#&$! Gadget loopback! • Created internal checklist and tested, tested, tested! 36 36
  • 70. Pro Tip #12 of 12 – 37 37
  • 71. Pro Tip #12 of 12 – • Reverse-proxy • Load-balancer • More? • Exit strategy 37 37
  • 72. Summary Best Practices Prevention Watch out! 38 38
  • 73. Summary Best Practices Prevention Watch out! Go home, upgrade JIRA to 4.1 and Confluence to 3.2 38 38
  • 74. Resources 39 39
  • 75. Resources • forums.atlassian.com • confluence.atlassian.com • confluence.atlassian.com/display/JIRAKB/JIRA+Knowledge+Base+Home • confluence.atlassian.com/display/CONFKB/Confluence+Knowledge+Base+Home • jira.atlassian.com • support.atlassian.com • Pssst… Freenode IRC #atlassian, #atlassiandev 39 39