Splunk Upgrade in großen Umgebungen – Best Practices

Michel Schulz  /  26.02.24  /  IT Security

 

„Warum solln wa denn unser Splunk upgraden? Das läuft doch stabil – Never Change a running System und so“, kommt aus der Ecke des Admins. So einfach ist das heutzutage, besonders bei On-Prem-Systemen, nicht mehr. Es gibt mehrere Gründe, sein Splunk aktuell zu halten. Die wichtigsten sind:

  • Sicherheit und Compliance: Mit jedem Upgrade werden in der Regel Sicherheitslücken geschlossen und Compliance-Standards verbessert. Ein Upgrade stellt sicher, dass die Splunk-Systeme geschützt sind und den aktuellen Sicherheitsanforderungen entsprechen.
  • Bugfixes und Stabilität: Durch ein Upgrade können bekannte Fehler behoben werden, die möglicherweise in früheren Versionen vorhanden waren. Dies trägt zur Stabilität der Splunk-Systeme bei und reduziert potenzielle Ausfallzeiten oder Störungen.
  • Neue Funktionen und Verbesserungen: Jede neue Version von Splunk bringt in der Regel neue Funktionen, Verbesserungen und Leistungssteigerungen mit sich.
  • Support und Kompatibilität: Aktualisierungen sind oft Voraussetzung für den fortgesetzten Support von Splunk. Durch das Halten der Umgebung auf dem neuesten Stand wird sichergestellt, dass man weiterhin den vollen Support von Splunk erhält und dass die Umgebung mit anderen Systemen und Plattformen kompatibel bleibt.

Das Upgrade von großen Splunk-Umgebungen erfordert eine sorgfältige Planung und Durchführung, um einen reibungslosen Prozess zu gewährleisten. Hier steht die Vorbereitung im Vordergrund. Beginnend mit einer gründlichen Überprüfung der aktuellen Splunk-Umgebung, einschließlich der installierten Version, der Konfigurationen, Apps und Add-ons sowie eventueller benutzerdefinierter Anpassungen. Im besten Falle entsteht daraus ein detaillierter Aktualisierungsplan, der die Schritte für das Upgrade sowie eventuelle Vorbereitungs- und Testaktivitäten umfasst. Steht dieser, kann es mit den Vorbereitungen weiter gehen.

Als nächstes sollte ein Backup aller wichtigen Daten, Konfigurationen und Inhalte sämtlicher Splunk-Instanzen erstellt werden, so dass im Falle eines Problems auf eine funktionierende Version zurückgerollt werden kann. Für die Sicherstellung der Versionskompatibilität zwischen den Apps, Add-ons und benutzerdefinierten Erweiterungen und der neuen Splunk-Version ist ein Blick in die meist sehr hilfreiche Splunk-Dokumentation sinnvoll. Hier sind ebenfalls die release notes des jeweiligen Upgrades zu finden, in denen wichtige Informationen wie „known issues“, „fixed issues“ oder neue Funktionen gelistet sind.

Anschließend wird das Upgrade zunächst auf einer Test-Umgebung durchgeführt, um alle relevanten Szenarien testen zu können (Funktionalitätstest, Performancetest, Sicherheitstest, Failover-Tests etc.). Dies ermöglicht es, potenzielle Probleme frühzeitig zu identifizieren und zu beheben, bevor das Upgrade auf die Produktionsumgebung angewendet wird. Sind diese Tests erfolgreich verlaufen, kann das Upgrade stufenweise auf die Produktivumgebung ausgerollt werden.

Im Splunk-Kontext gibt es hierfür eine bestimmte Reihenfolge, welche sich bei großen Systemen bewährt hat. Diese ist ebenfalls in der Splunk-Dokumentation zu finden (ganz grob: 1. Management-Tiers, 2. Searchheads, 3. Indexers). In der Praxis ist die Erfahrung gemacht worden, dass ein Splunk-Upgrade in großen Umgebungen ein sehr zeitintensiver Prozess ist. In geclusterten Umgebungen mit mehreren Sites und somit hoher Verfügbarkeit (High Availability, HA) besteht jedoch die Möglichkeit, das Upgrade simultan auf einer Site durchzuführen. Dieses bringt eine Zeitersparnis mit sich.

Nach der Durchführung des Upgrades auf der Produktionsumgebung geht es erneut in die Test- und Validierungsphase, in der sichergestellt wird, dass die Funktionalitäten der Splunk-Instanz ordnungsgemäß laufen. Ist dieses nicht gegeben und es sind keine Fehler auffindbar, sollte auf ein Fallback-Szenario zurückgegriffen werden, in dem das vorher erstellte Backup zurückgespielt wird, um den korrekten Betrieb der Splunk-Umgebung sicherzustellen. Wenn Splunk in geschäftskritischen Bereichen im Einsatz ist, ist diese Entscheidung umgehend zu treffen. Durch eine gute Vorbereitung (s.o.) können viele Fehler von vornherein ausgeschlossen werden.

Natürlich muss der erfolgreiche oder nicht-erfolgreiche Upgrade-Prozess dokumentiert und nachbereitet werden. Es bietet sich an, den gesamten Upgrade-Prozess zu dokumentieren und in einer Nachbesprechung wichtige Erkenntnisse zu sammeln und Verbesserungsmöglichkeiten für zukünftige Upgrades zu identifizieren.

Ein Splunk-Upgrade in großen Umgebungen erfordert eine sorgfältige Planung, Durchführung und Überwachung, um sicherzustellen, dass es reibungslos verläuft und keine unerwünschten Auswirkungen auf den Geschäftsbetrieb hat.