Atlassian Data Center: Stabilität und Sicherheit durch Selbstschutzmechanismen

Es gibt dieses alte Sprichwort: Ein fauler Apfel verdirbt den ganzen Korb. Diese Redewendung gilt auch in der digitalen Arbeitswelt: Trotz großer Anstrengungen und intensiver Bemühungen im Hinblick auf die Stabilität und Performance der kritischen Software-Systeme im Unternehmen besteht die Gefahr, dass ein einziger Akteur (oder einige wenige) alles zum Stillstand bringt und die Instanz crasht - und damit auch die produktive Arbeit unserer Teams.

Das ist eine Herausforderung, die in allen modernen Enterprise-Organisationen auf der Tagesordnung steht. Wenn unser Unternehmen skaliert, steigt natürlich auch die Anzahl der REST-API-Requests und anderer CPU-intensiver Aktionen. Und damit nimmt die Wahrscheinlichkeit destruktiver Vorfälle signifikant zu, die in der Folge wiederum das gesamte Unternehmen beeinträchtigen.

Mit der Cluster-basierten Infrastruktur und den nativen Failover-Vorkehrungen bedienen die Atlassian-Lösungen der Data-Center-Produktlinie seit jeher die Aspekte Stabilität, Performance und Skalierung. Nun hat Atlassian die Data-Center-Produkte um einige mächtige Selbstschutzmechanismen ergänzt: die Ratenbegrenzung für Jira Software, Jira Service Desk, Confluence und Bitbucket sowie den externen Prozesspool für Confluence. Damit lässt sich die Sicherheit unternehmenskritischer Systeme im Hinblick auf Gefahren und (ob böswillig oder ungewollt) schädliche Akteure erhöhen.

CPU-Spitzen durch REST-API-Abfragen

Es gibt eine ganze Reihe von Bedrohungen und Aktionen, die unsere Instanz beeinträchtigen können. Die häufigste Problemquelle bilden jedoch CPU-Spitzen. Zwar ist es so gut wie unmöglich, sich manuell gegen jedweden negativen Impulsgeber zu schützen, doch dank der neuen Data-Center-Technologie kann das System selbst in die Lage versetzt werden, Vorkehrungen gegen HTTP-REST-API-Requests und -Flooding zu treffen: Die Ratenbegrenzung bietet einen automatischen Schutz gegen diese Bedrohung. Darüber hinaus adressiert der externe Prozesspool für Confluence ein spezifisches Set an Speicher- oder CPU-intensiven Aktionen.

Der Selbstschutz für Atlassian Data Center entschärft diverse Ursachen für Performance-Einbrüche und Ausfälle:

  • zu häufig auftretende REST-API-Abrufe
  • zu häufig auftretende REST-API-Requests, die große Datenmengen auf einzelne Abfragen ausgeben (was an sich schon kritisch ist)
  • schlecht geschriebene Skripte oder externe Automatisierungen, die APIs zu häufig abfragen oder Daten nicht cachen
  • Thumbnail-Generierung, Dateivorschauen und PDF-Exporte für Confluence (externer Prozesspool)

Für große und skalierende Enterprise-Systeme wird es immer Gefahren und Bedrohungen geben, doch Atlassian Data Center stellt sicher, dass Vorfälle im Zusammenhang mit REST-APIs nicht dazugehören.

Wie die Selbstschutzmechanismen funktionieren

Dank des Token Bucket-Algorithmus versetzt die Ratenbegrenzung uns in die Lage, die Rate des ein- und ausgehenden HTTP-Traffics zu kontrollieren und uns so vor API-Flooding zu schützen. Jeder Nutzer erhält einen gefüllten (unikalen) Token Bucket; jedes Mal, wenn er eine HTTP-Abfrage stellt, wird ein Token aus dem "Behältnis" entfernt. Mit der Zeit akkumulieren sich neue Token bei einer konstanten Rate (der Wiederauffüllrate des Token Buckets), bis der Behälter wieder voll ist. Administratoren können global und auf Nutzerbasis Grenzwerte für die erlaubte Zahl an Requests für ein spezifisches Zeitfenster konfigurieren. Das System erlaubt Requests nur dann, wenn der User ausreichend Token in seinem Behälter hat.

Der externe Prozesspool für Confluence minimiert den Einfluss bestimmter Aktionen, die als Speicher- oder CPU-intensiv bekannt sind (beispielsweise die Thumbnail-Generierung, Dateivorschauen und PDF-Exporte). Das System handhabt diese Aktionen in einem separaten Prozesspool, der von Confluence verwaltet wird. Wenn diese Prozesse einfrieren oder abgebrochen werden, startet Confluence sie automatisch neu, ohne dass es zu Beeinträchtigungen für die Confluence-Nutzer oder die Anwendung selbst kommt. Auch der Prozesspool bietet spezifische Konfigurationsmöglichkeiten, die es uns gestatten, die Größe des Pools und die Speichermenge, die ein Prozess beanspruchen kann, festzulegen.

Die Vorteile dieser Vorkehrungen

Die Ratenbegrenzung ist ein mächtiges und robustes Feature, das einigen Mehrwert über die reine Kontrolle von Rate oder Traffic hinaus bietet:

Sichtbarkeit und Informationen: Je mehr wir als Administratoren über unser System wissen, desto eher können wir die Rolle der Feuerwehr ablegen und in die eines strategischen Partners schlüpfen. Wir können sehen, wer von der Ratenbegrenung betroffen ist, wie oft Requests limitiert werden und wann Nutzer zuletzt von dieser Funktion gestoppt werden mussten. Dadurch haben Admins die Chance, auf ein besseres Nutzererlebnis für alle User hinzuarbeiten, Trends zu identifizieren und "Wiederholungstäter" entsprechend zu schulen.

Sicherheit und Kontrolle: Die Ratenbegrenzung erweitert die Unternehmensinstanz um eine zusätzliche Sicherheits- und Kontrollebene, die bisher so nicht verfügbar gewesen ist. Dank spezifischer Konfigurationsoptionen können Administratoren individuellen Anforderungen Rechnung tragen oder User auch einfach auf eine Erlaubnisliste setzen. Dabei bieten Jira und Confluence eine Block-Listing-Option.

Stabilität und Performance: Sowohl die Ratenbegrenzung als auch der externe Prozesspool tragen durch die Regulierung des CPU-Volumens dazu bei, dass unser Enterprise-System sich stabiler, zuverlässiger und performanter verhält. Beide Features wurden außerdem so designt, dass ihre eigenen Einflüsse auf die System-Performance zu vernachlässigen ist.

Die Bedeutung und die Dringlichkeit, unsere Anwendungen vor Bedrohungen zu schützen, steigen mit der Skalierung unseres Enterprise-Unternehmens. Die Selbstschutzmechanismen schließen einige der häufigsten Worst-Case-Vorfälle nativ aus - und die damit einhergehende Vermeidung von Ausfällen nützt allen Teams und Nutzern in der Organisation.

Wir sind Ihr Partner für Atlassian Data Center

Haben Sie Fragen zu den Data-Center-Lösungen von Atlassian? Wir helfen Ihnen gerne dabei, Ihren Bedarf an einer Data-Center-Version statt der klassischen Server-Variante objektiv zu beurteilen: Als Atlassian Platinum Solution Partner mit Erfahrungen aus tausenden Atlassian-Projekten beraten wir Sie bei der Evaluation eines für Sie optimalen Lizenzmodells, kümmern uns um sämtliche Details Ihres Lizenz-Setup und unterstützen Sie bei allen Aspekten der Skalierung Ihrer Atlassian-Produkte. Melden Sie sich bei uns!

Weiterführende Infos

Atlassian Data Center – Möglichkeiten, Herausforderungen, strategische Fragen (Podcast)
Warum stark wachsende Unternehmen Data Center testen sollten
Praktische Indizien, die für Data Center sprechen
Wie Atlassian neue Features für die Data-Center- und Server-Produkte priorisiert