JIRA in Enterprise-Umgebungen skalieren (Teil 1)

JIRA-Logo_001Wenn JIRA-Administratoren darüber nachdenken, JIRA zu skalieren, liegt der Fokus oft zunächst auf der Anzahl der Vorgänge, die eine einzelne JIRA-Instanz handhaben kann. Allerdings sind bei der JIRA-Skalierung zahlreiche weitere Faktoren mit ausschlaggebend.

In diesem Artikel und im Folgebeitrag stellen wir dar, wie JIRA unter verschiedenen Konfigurationen performt und wie große Unternehmen JIRA anpassen können. Dabei gibt es zwei grundsätzliche Ansätze, um JIRA zu skalieren, die auch miteinander kombiniert werden können: Die Skalierung einer einzelnen Instanz und die Nutzung mehrerer miteinander verbundener Instanzen.

Skalierung einer einzelnen JIRA-Instanz

Zahlreiche Faktoren von der Anzahl der Vorgänge und Projekte bis hin zur Backend-Konfiguration tangieren die Performance eines JIRA-Systems. Die folgenden Aspekte haben Auswirkungen auf die JIRA-Performance:

Daten

  • Die Anzahl der Vorgänge in JIRA
  • Die Anzahl der Anhänge in der JIRA-Instanz

Nutzung

  • Die Anzahl der Nutzer, die gleichzeitig mit JIRA arbeiten
  • Die Anzahl der gleichzeitig durchgeführten Operationen
  • Das Volumen an E-Mail-Benachrichtigungen

Konfiguration

  • Die Anzahl der Plugins (Einige haben ihre eigenen Speicheranforderungen.)
  • Die Anzahl der Workflow-Schritte wie zum Beispiel Transitions
  • Die Anzahl der geplanten Services
  • Die Anzahl der konfigurierten Projektelemente wie Custom Fields, Vorgangstypen usw.

Hardware / Betriebssystem

  • Der Server, auf dem JIRA läuft
  • Die Datenbank und die Konnektivität zu ihr
  • Das Betriebssystem inklusive lokaler Datenspeicher, Speicherzuordnung und Speicherbereinigung

Projektkonfigurationen

Aufgrund der Flexibilität von JIRA sind zahlreiche ganz unterschiedliche Konfigurationen möglich und auch praxisbewährt. Allerdings haben einige Ansätze in Sachen Projektkonfiguration größere Performance-Auswirkungen als andere, wie Atlassian mithilfe einfacher Performance-Tests des JIRA-Durchlaufs ermittelt hat, für die jeweils ein Wert eines Konfigurationsparameters verdoppelt wurde (Projekte, Workflows, Nutzer etc.).

(Durchlauf entspricht in diesem Zusammenhang den Operationen pro Sekunde. Operationen sind hier Aktionen, die normale User während der täglichen Arbeit mit dem System durchführen: Vorgänge erstellen, editieren und suchen, Auswertungen, Dashboards und Projekte einsehen usw.)

Die Konfigurationen, die JIRA am stärksten beeinflussen, sind diese:

  • Vorgänge
  • Custom Fields

Darüber hinaus wirken sich zwei weitere Faktoren besonders auf die JIRA-Performance aus:

  • Berechtigungen
  • Gleichzeitige Nutzer
Projekte Work- flows Nutzer Vorgangs- typen Auflö- sungen Custom Fields Vorgänge Durchlauf
250.000 30 5.000 55 10 300 200.000 30 (Mittel)
500.000 30 5.000 55 10 300 200.000 30
250.000 60 5.000 55 10 300 200.000 30
250.000 30 10.000 55 10 300 200.000 30
250.000 30 5.000 110 10 300 200.000 30
250.000 30 5.000 55 20 300 200.000 29
250.000 30 5.000 55 10 600 200.000 22
250.000 30 5.000 55 10 300 400.000 20

Die Quintessenz aus Atlassian Performance-Tests: Halten Sie die JIRA-Konfiguration schlank. Mit der Zeit erreichen manche JIRA-Instanzen einen Zustand, als wäre JIRA seit Jahren in Betrieb. Es ist dringend zu empfehlen, Schemata wiederzuverwenden statt ständig neu zu erstellen und alles zu löschen, was nicht mehr benötigt wird.

Archivierung von Vorgängen

Obwohl die Anzahl der Vorgänge nur eine von mehreren Dimensionen ist, die sich auf die JIRA-Performance auswirken, hat dieser Aspekt mit Abstand die größten Auswirkungen. Aus der Übersicht oben ist ersichtlich, wie eine Verdopplung der Vorgänge die Performance beeinflusst. Daher ist die Implementierung einer Archivierungsstrategie sinnvoll. Hier bieten sich zwei Ansätze an.

Backup und löschen (einzelne JIRA-Instanz)
Diese Methode ist die einfachere und schnellere. Erstellen Sie einfach ein Backup der gesamten JIRA-Instanz, datieren Sie sie und speichern Sie sie in einer sicheren Umgebung. Stellen Sie in einer Testinstanz sicher, dass sich das Backup wiederherstellen lässt. Ist das der Fall, können Sie in der Produktivinstanz die Projekte oder Vorgänge löschen, die nicht mehr genutzt werden. Die Löschen-Strategie kann auch auf die anderen Dimensionen wie Custum Fields, Schemata usw. ausgeweitet werden.

Der Nachteil dieses Ansatzes: Wenn Nutzer einen archivierten Vorgang einsehen müssen, muss zunächst das entsprechende Backup gefunden und in einer anderen JIRA-Instanz wiederhergestellt werden. Der Ansatz empfiehlt sich also eher, wenn in Ihrem Unternehmen auf archivierte Objekte nicht regelmäßig und häufig zurückgegriffen werden muss.

Migrieren und löschen (zwei JIRA-Instanzen)
Diese Methode ist etwas komplizierter. Zunächst muss ein komplettes Backup gezogen und in einer separaten JIRA-Instanz wieder verfügbar gemacht sowie getestet werden. Anschließend behalten Sie die Vorgänge, die Sie in dieser Instanz archivieren wollen, und löschen alles andere.

Für künftige Archivierungen müssen Sie in der Produktivinstanz einen Filter für alle Vorgänge erstellen, die archiviert werden sollen. Sammeln Sie diese Vorgänge in einem separaten Projekt und erstellen Sie ein komplettes Backup Ihrer JIRA-Instanz. Mithilfe der Project-Restore-Funktion können Sie dieses Projekt in die Archivierungsinstanz importieren und dort die Vorgänge dann in ihre entsprechenden Projekte verschieben.

Obwohl diese Methode mehr Zeit und Ressourcen erfordert, besteht der Vorteil darin, dass das Archivierungssystem eine Live-Instanz ist, die Nutzer jederzeit aufrufen können, um archivierte Objekte einzusehen.

Grundsätzlich ist es wichtig, darüber nachzudenken, welche Vorgänge in der Produktivinstanz ständig verfügbar sein müssen: Müssen zum Beispiel wirklich 800.000 Vorgänge ständig vorgehalten werden, wenn man die signifikanten Auswirkungen auf die Performance kennt?

Im folgenden zweiten Artikel sehen wir uns an, wann die Nutzung mehrerer JIRA-Instanzen sinnvoll und praktikabel ist.

Weitere Informationen

//SEIBERT/MEDIA ist offizieller Vertriebspartner von Atlassian und Atlassian Platinum Expert. Wir unterstützen Sie gerne bei alle Aspekten rund um eine Einführung und produktive Nutzung von JIRA in Ihrem Unternehmen – von der strategischen Beratung und Planung über die Implementierung und Anpassung bis hin zur Aktivierung der Mitarbeiter und der Optimierung der Nutzung. Ausführliche Infos über JIRA-Projekte mit //SEIBERT/MEDIA inklusive Kalkulationsbeispielen haben wir für Sie in unserem umfangreichen JIRA-Orientierungsangebot vorbereitet.

88 Argumente für JIRA
JIRA-Projekte: Strategie, Struktur, Taktik
Stolperfallen bei der JIRA-Einführung
Wie Mitarbeiter und Projektmanager mit JIRA arbeiten sollten