This document provides tips and best practices for administering JIRA. It discusses:
1) Tips from an Atlassian support perspective, including knowing your JIRA configuration, using simple configurations, and avoiding common problems through testing.
2) Tips from administering JIRA at Polycom, including buying the Enterprise edition, determining requirements, developing standards, and migrating issues from other systems.
3) Best practices for administration, such as using roles, workflow drafts, useful plugins, customizing text, avoiding "silent killers" like unused subscriptions, and performing quick Java optimizations.
2. Agenda
Atlassian Support Perspective (pw)
o Know your JIRA
o Administration tips
o Resources
Tips from the trenches (jt)
o JIRA at Polycom
o Real-world best practices
4. JIRA Works
most problems with JIRA are configuration related
Having problems?
o Documentation – all in one place
o Forums
o Knowledge Base
o Atlassian Support
Avoid these problems!
o Staging server
o TEST TEST TEST!
5. But I just want to tell the time!
then you need to understand how it works
6. JIRA is very flexible
JIRA is very complicated
Use simple configurations
o Consistent naming
Limited number of administrators
o Outsource project administration with roles
Document your changes
Don’t get frustrated
o Support Engineers learn new things about
JIRA all the time and we use it every day!
7. JIRA is Well Documented
there is waaaay too much to read about JIRA
Where do you start?
o JIRA Quickstart guide
o JIRA 101
What next? Topics to understand:
o Backups
o Workflows
o Roles & Groups
o Plugins
8. Tip#1: Turn off XML Backup
Use native database tools
They are faster, and guaranteed
consistent
During XML backups, the database is
not locked
9. Tip#2: Use Roles
Minimizes the number of schemes
Allows delegation of administration
Use Scheme Tools to migrate from
groups to roles
10. Tip#3: Workflow Drafts
Pre-draft workflow change updates
all issues
With drafts usually only the
workflow is changed (Faster!)
11. Tip#4: Useful Plugins
Useful plugins you may not know about:
JIRA Suite Utilities
JIRA Groovy Plugin
Visualizing JIRA Workflows
SU Plugin
12. Tip#5: Customizing text in JIRA
Use the JIRA translation file to change
wording
Modify the velocity templates for email
notifications
13. Tip#6: Silent Killers
Subscriptions (to groups eg JIRA-users)
Messages in POP accounts that don’t
go away / Concurrent services
Forgotten XML backup service
15. Resources
Guides to read
o Creating issues and comments from email
o Troubleshooting issues and comments from email
o JIRA Workflows
Bug and feature database
Most popular feature requests
16. Administrivia:
Tips from the Trenches
Joanna Thurmann
JIRA Systems Administration June 1, 2009
POLYCOM CONFIDENTIAL
17. Polycom is the global leader in telepresence, video, and voice
solutions
Polycom allows you to connect anytime, anyplace and with any
device in a virtual experience as natural as being there
www.polycom.com
joanna.thurmann@polycom.com – JIRA Systems Administrator
2 POLYCOM CONFIDENTIAL
18. 3 ½ yrs old
Single global instance
~24x7
Migrated from 7 other systems
Internal & External
• 130,000+ issues
• 120 projects
• 340 custom fields
• 80 workflows
• 3900 users (~300 concurrent)
• 340 groups
3 POLYCOM CONFIDENTIAL
19. Buy Enterprise Edition
Determine ‘must-have’ vs ‘nice-to-have’ features
Get familiar with the JIRA ‘wish-list’
Know JIRA limitations
Develop standards
Allow play in a sandbox
Good Training
Do Barn raising* – worked for us
4 POLYCOM CONFIDENTIAL
20. Search Limitations
Our Workaround: Custom dashboards, Custom field search
page, Export to Excel
Permission Limitations
Our Workaround: workflow transition screens & action conditions
No subcomponents or subversions
Our Workaround: cascaded select fields
Cannot edit or effective-date custom field options:
Our workaround: ‘archived’ field equivalents, bulk edits
Cannot rename users or groups after creation
5 POLYCOM CONFIDENTIAL
23. Embrace ‘brute-force’
Use available methods
Avoid SQL inserts
Migrate open-issues only
Create links to old system
Do user mapping before you migrate
Get a good Atlassian development partner (CustomWare)
8 POLYCOM CONFIDENTIAL
25. Setup 1-2 staging instances
Inspect the JIRA logs for errors or warnings
Add log4j.properties entries to audit execution of plugins
On-demand Training - write a guide, record a session
User Communication
SQL warnings* – don’t do what we did
10 POLYCOM CONFIDENTIAL
26. What to document?
Everything
Why document?*
The last JIRA upgrade at Polycom would have sunk without it
11 POLYCOM CONFIDENTIAL
28. Standardize
Less is more
Custom Fields - Limit Context & Reuse
Determine Product Structure
Use Project Roles – e.g. Polycom Partner access
Understand the RESOLUTION field* – we didn’t and it cost us
13 POLYCOM CONFIDENTIAL
30. Who system admin (2) divisional jira-administrators (12)
Why Knows the system better Knows the business better
What
Manage system fields (priorities,
Manage workflows
issue types, resolutions,
Manage components/versions
statuses)
Manage custom field values
Create Projects
Bulk operations
Manage users/groups
Create shared filters, dashboards &
Define standards group filter subscriptions
Approve plugins
Maintain permissions
Manage security
Maintain notifications
How Communicate well Train them well
15 POLYCOM CONFIDENTIAL
31. Use Plugins conservatively
Wait for compatible versions
Beware of leaks
Consider performance
Review JIRA logs for warnings & errors
Beware of potential end-of-life
Beware:
Once you’ve deployed a plugin,
it’s hard to pull it out
16 POLYCOM CONFIDENTIAL
32. Allocate sufficient memory
Buy adequate hardware
Consider JIRA Clustering & MultiSite solutions from WANdisco
Archiving
JIRA Environment at Polycom:
HP ProLiant DL580 G4, 4 x 3.4 GHz Dual Core processors
8 GB of RAM (3.5 for Java, 2 for SQL Server)
Windows Server 2003 Standard Edition 64-bit
SQL Server 2005 Standard Edition
JIRA 3.13.3, JDK 1.6
Back to Contents
17 POLYCOM CONFIDENTIAL
34. http://www.customware.net/
CustomWare is an Atlassian Partner providing rapid implementation,
training and support to Atlassian customers worldwide
CustomWare worked on and offsite
Strong Enterprise Integration background, understanding of Web
Services, Siebel etc.
Fast, reliable & thorough – they *really* know the Atlassian products
Have a large team and 7 x 24 support
Helped us with some complex custom Bugzilla migrations
Have lots of plugins for JIRA and Confluence, including Salesforce.com
integration for both products.
19 POLYCOM CONFIDENTIAL
35. Clustering balances workload across servers at a single site over a LAN
MultiSite balances workload across multiple sites over a WAN and
resolve WAN latency issues
Both solutions can be implemented in combination
Provides self-healing & eliminates risk in disaster recovery
Back to Contents
20 POLYCOM CONFIDENTIAL
36. Schedule regular Java restarts - to clear memory
Schedule reindexes – since index exceptions can occur
Run integrity checker regularly and fix errors
Schedule multiple backup services to different locations
Do secondary database-based backup
Backup attachments
21 POLYCOM CONFIDENTIAL
37. Search Limitations:
Limited Boolean search (4.0)
cannot search for empty /null fields (4.0)
cannot search for multiple values in a cascaded select field
cannot combine search results
cannot search for components & versions across projects even if the values
are the same
can only search on custom fields across projects if the prj context is the same
dashboards and canned reports only get you so far
Permission Limitations
No field-level permissions
No permissions per state
No permissions per issue type
Can’t hide time-tracking, work log or change history (e.g. for external JIRAs)
Polycom Workaround: workflow transition screens, workflow action conditions
22 POLYCOM CONFIDENTIAL
38. Custom Fields
Limit Context by Project/Issue Type
Reuse fields (use project contexts)
Don’t put every custom field in a Global context: it clutters the Issue
Navigator
Understand the RESOLUTION field !!!!
When an issue has a Resolution field set, JIRA considers it Closed. This
affects preset filters and canned reports/queries
set Resolution field ONLY when issue is considered closed (e.g. on
Workflow Transition Screen)
Consider a custom plugin to transfer ‘intermediate’ resolution field to
system Resolution field (we run a custom plugin from CustomWare)
23 POLYCOM CONFIDENTIAL
39. Determine Product Structure.
many small projects (i.e. one per product) VS.
fewer bigger projects with more components, versions, & cascading
select custom fields to group issues by ProductLine~Product and
Release~Build
You can denote the product information on an issue in these various ways
Project name itself
Components field
Version field
Custom fields: single and multiple select
Cascading select field
The first 3 can be managed by project admin. The last 2 can only be
managed by sysadmin
Limitations on cascading selects: not displayed on charts/graphs, cannot
search on multiple values in cascading select field
24 POLYCOM CONFIDENTIAL