Confluence-Betrieb in großen und geschäftskritischen Installationen (Teil 1)

confluence_logoDie meisten Confluence-Installationen fangen klein an: Ein paar Mitarbeiter in einer Pilotgruppe nutzen das Wiki einige Zeit und alles funktioniert gut. Wikis werden jedoch oft innerhalb weniger Monate zu geschäftskritischen Anwendungen. Nicht selten geht die Adaption so schnell, dass die IT-Abteilungen keine Zeit haben, ihren Support zu skalieren. In zwei Artikeln bieten wir einige Hinwiese, die helfen sollen, sicherzustellen, dass Ihre Confluence-Instanz die Anforderungen an eine geschäftskritische Anwendung erfüllt.

Dedizierte Hardware für Confluence

In kleinen Arbeitsgruppen und Unternehmen mit einigen Dutzend oder ein paar hundert Nutzern kann Confluence sich CPUs, Speicher und Laufwerke in den meisten Fällen relativ problemlos mit anderen Low-Profile-Anwendungen und einer Datenbank teilen.

Doch bei tausenden oder zehntausenden Usern ist dedizierte, schnelle Hardware mit viel Arbeitsspeicher nötig, auf der nur Confluence läuft. Während Confluence in einer virtualisierten Umgebung wie VMware laufen kann, wird dies für geschäftskritische Confluence-Instanzen nur empfohlen, wenn es im IT-Team absolute Experten für Virtualisierung gibt. Ansonsten besteht die Gefahr, dass die anderen betriebenen VMs Performance-Probleme bekommen, die sich auf Confluence ausweiten.

Wenn schon einmal Probleme bezüglich der Datenbank aufgetreten sind, sollten Sie erwägen, die Confluence-Datenbank auf eine dedizierte Maschine umzuziehen. Confluence selbst kann Anfragen ausführen, die die Performance anderer Anwendungen beeinflussen, und Probleme anderer Applikationen können sich wiederum auf die Performance und Usability von Confluence auswirken.

Kontinuierliches Monitoring des Produktivsystems

Ein permanentes Monitoring der Produktivinstanz eines geschäftskritischen Confluence-Systems ist unerlässlich. Ein solches Monitoring umfasst einige essenzielle Aufgaben, die nachfolgend aufgelistet sind:

  • Monitoring der Log-Dateien
  • Prüfen der HTTP-Verfügbarkeit und -Performance
  • Überwachung zahlreicher Parameter wie Auslastung, Verbindungen, IO, Datenbank-Trends usw.
  • Dokumentation der Langzeittrends (Charts)
  • Führen eines Access-Logs für Anfragen an den Web-Server

Zum Monitoring einer Anwendung wie Confluence gehört auch die Überwachung der Subsysteme, die Confluence nutzt. Viele Ausfälle und Down-Zeiten sind auf gecrashte Mail-Server, Datenbankprobleme, Probleme mit Dateisystemen etc. zurückzuführen.

Oft ist es möglich, solche Trends zu identifizieren, bevor die Web-Anwendung zusammenbricht. Wird zum Beispiel das Dateisystem ständig überwacht und erreicht es eine Auslastung nahe 90%, kann die Situation gelöst werden, ohne Confluence zu affektieren. Und selbst im Worst-Case-Szenario, wenn etwa die Datenbank ausfällt und Confluence direkt betroffen ist, macht ein systematisches Monitoring des Datenbank-Servers die Problemlösung deutlich einfacher.

Monitoring-Beispiel

Zu einem professionellen, systematischen Monitoring können alleine auf JVM-Ebene die folgenden Aspekte gehören:

JVM-Basics

  • Gerade geladene Klassen
  • Daemon Thread Count
  • Heap Memory committed
  • Heap Memory maximal
  • Heap Memory genutzt
  • Geladene Klassen
  • Geladene Klassen pro Minute
  • Object Pending Finalization Count
  • Peak Thread Count
  • Thread Count
  • Entladene Klassen
  • Entladene Klassen pro Minute

JVM-Speicherbereinigung

  • Collection Count
  • Collection Count pro Minute
  • Collection Time
  • Collection Time pro Minute

JVM-Speicher

  • Zur Verfügung gestellter Speicher
  • Genutzter Speicher

Auf dem gleichen Detail-Level kann sich das Monitoring der Datenbank, des Dateisystems, der CPU, des Netzwerks etc. bewegen. Nicht all diese Informationen werden ständig benötigt. Doch bei einer geschäftskritischen Anwendung kann jeder Hinweis wertvoll sein und zur schnelleren Identifikation von Problemen führen. Mit einem professionellen Monitoring-System lassen sich diese Informationen und Metriken einfach extrahieren.

Im folgenden zweiten Artikel zum Betrieb von Confluence in Enterprise-Umgebungen gehen wir auf Upgrade-Prozesse und die Etablierung von Load-Test-Umgebungen ein.

Weiterführende Infos

Haben Sie Fragen zum Betrieb Ihrer Atlassian-Anwendungen? Möchten Sie Performance, Stabilität und Sicherheit Ihrer Instanzen verbessern? Dann sprechen Sie uns unverbindlich an: Die erfahrenen Systemadministratoren von //SEIBERT/MEDIA beraten Sie gerne individuell und unterstützen Sie dabei, Leistungsfähigkeit und Hochverfügbarkeit Ihrer Systeme zu erreichen und die Voraussetzungen für eine effiziente Nutzung auch in großen Umgebungen zu schaffen.

//SEIBERT/MEDIA ist Atlassian Enterprise Expert
Confluence auf Windows- oder Linux-Servern betreiben?
Cluster für Atlassian-Anwendungen für große Umgebungen