Konfigurationsdrift ist ein wichtiges Anliegen für alle IAAC-Entwickler da draußen. In diesem Beitrag erfahren Sie mehr über Configuration Drift Management, seine Bedeutung, Ursachen und mögliche Lösungen.

What is Configuration Drift?

Anwendungseigentümer müssen ihre Anwendungen und die zugrunde liegende Infrastruktur im Laufe der Zeit ändern, um sie kontinuierlich zu verbessern Kundenerfahrung. Diese Kunden können entweder innerhalb oder außerhalb des Unternehmens sein.

Was ist Konfigurationsdrift

Die Konfiguration der Apps und der Infrastruktur ändert sich infolge dieser Aktualisierungen und Änderungen. Diese Modifikationen können vorteilhaft sein oder den gehärteten Zustand der Systeme verschlechtern. Konfigurationsdrift ist der Fachbegriff dafür.

How Configuration Drift Works

Das Potenzial für Konfigurationsdrift steigt mit der Komplexität von Software-Produktion und Liefersysteme. Der Code wird im Allgemeinen von der Arbeitsstation eines Entwicklers zu einer gemeinsam genutzten Entwicklungsumgebung, zu Test- und QA-Umgebungen und schließlich zu Staging- und Produktionsumgebungen übertragen.

Funktionsweise der Konfigurationsdrift

Die potenziellen Auswirkungen nehmen zu, je weiter entlang der Pipeline die Drift auftritt. Selbst geringfügige Abweichungen zwischen einer auf dem Laptop eines Entwicklers installierten Paketversion und der auf einem Testserver installierten Version können das Problem verzögern Debugging. Typischerweise wird erwartet, dass nur Inszenierung und Produktion Kopien voneinander sind. Die Belastung ist enorm, da viele Unternehmen täglich mehrmals neuen Code bereitstellen.

Common Causes of Configuration Drift

Fehlende Kommunikation

Manchmal kommunizieren die Upstream-Teams nicht mit den Downstream-Partnern über die von ihnen vorgenommenen Änderungen, wodurch das gesamte Downstream-System zusammenbricht.

Hotfixes

Hotfixes sind Änderungen am Code, die vorgenommen werden, um ein kritisches Problem zu beheben, das nicht bis zum nächsten geplanten Update der Anwendung warten kann. Manchmal versäumen es die Techniker, die an der Lösung des Problems arbeiten, Änderungen vorzunehmen oder denselben Fix für andere Umgebungen in der Pipeline zu dokumentieren, was zu Abweichungen führt. Oft wird diese Abweichung durch die Wiedereinführung des ursprünglichen Problems behoben.

Kritische Paketaktualisierungen

Kritische Paketaktualisierungen

Kritische Paketaktualisierungen ähneln in gewisser Weise Hotfixes. Beide werden schnell durchgeführt. Der Hauptunterschied besteht darin, dass kritische Paketaktualisierungen in der Hoffnung angewendet werden, zukünftige Vorfälle zu vermeiden. Solche Updates können also auf die gleiche Weise wie Hotfixes Drift verursachen.

Fehlende Automatisierung

Die Automatisierung wird die Möglichkeit einer Konfigurationsdrift nicht vollständig beseitigen. Es wird nur seine Chancen verringern.

Komfortänderungen

Manchmal sind Änderungen, die von Entwicklern vorgenommen werden, vorübergehend. Drift tritt beispielsweise auf, wenn ein Entwickler ein neues Paket auf einem Testserver installiert, um einige Funktionen zu testen, und vergisst, es in seinen ursprünglichen Zustand zurückzusetzen.

Why is Configuration Management Important?

Einer der Gründe, warum Konfigurationsdrift so schädlich sein kann, ist, dass Drift unentdeckt bleiben kann, wenn niemand ständig danach sucht, da es nach und nach die Basis Ihrer Infrastruktur untergräbt, ähnlich wie ein kleines Leck in einem Haus hinter einer Mauer.

Wenn die Konfigurationsabweichung entdeckt wird, braucht es Zeit, um den zugrunde liegenden Grund für die Konfigurationsabweichung zu finden, die alles verursacht hat, was im Notfall eine wertvolle Ressource ist.

Warum ist Konfigurationsmanagement wichtig?

In der Softwareentwicklung ist Drift eine wesentliche Ursache für langsame Release-Zyklen. Es kann unnötige Mühe und Behinderung verursachen Entwicklerproduktivität

Geringere Kosten

 Sie können den erforderlichen Gesamtbetrag senken, indem Sie Duplizierungen oder Überbereitstellung identifizieren, wenn Sie ein detailliertes Bild Ihrer IT-Infrastruktur haben.

Höhere Produktivität

 Cluster mit stabilen und bekannten Konfigurationen ermöglichen Batch-Management und Infrastrukturaufbau. Darüber hinaus wird die Notwendigkeit der manuellen Verwaltung individueller Einstellungen verringert, indem eindeutige (oder Snowflake-)Server eingeschränkt werden.

Schnelleres Debuggen

Durch konsistente Konfigurationen können Debugging-Teams Konfigurationsfehler ausschließen. Teams können sich auf andere mögliche Ursachen konzentrieren und Tickets schneller lösen, da sie nicht nach Konfigurationsabweichungen zwischen Servern, Serverclustern oder Umgebungen suchen müssen.

Issues Caused due to Configuration Drift

Probleme aufgrund von Konfigurationsabweichungen

Sicherheitsprobleme

 Unsichere Konfigurationen sind eine der häufigsten Ursachen für Sicherheitsverletzungen. Konfigurationsdrift kann andere Angriffe und Netzwerkverletzungen wahrscheinlicher machen, selbst wenn Sie mit einer geschützten Konfiguration beginnen.

Ausfallzeit

 Aus einem Konfigurationsfehler, der es einem Angreifer ermöglicht, a DoS einen wichtigen Server beschädigen oder kompromittieren. Das ist aber noch nicht alles. Angenommen, Sie ändern die Konfiguration eines Netzwerkgeräts, was sich auf die Leistung auswirkt. Sie können jederzeit zu Ihrer „goldenen Konfiguration“ zurückkehren, richtig? Es dauert viel länger, den Dienst wiederherzustellen, wenn diese Konfiguration fehlerhaft ist.

Verstoß gegen die Compliance

 Strenge Sicherheitskontrollen sind für die Einhaltung von Vorschriften wie z ISO 27001 , PCI-DSS und HIPAA. Die Konfigurationsdrift kann dazu führen, dass Sie die Konformität brechen, wenn sie nicht gestoppt wird.

Beeinträchtigte Leistung

 Eine Konfiguration ist in der Regel in seinem optimalen Zustand, wenn es sich in seinem beabsichtigten Zustand befindet. Ad-hoc-Änderungen können Netzwerkoptimierungsversuche behindern, indem sie Engpässe und Konflikte verursachen.

Verschwendete Zeit 

Es kann lange dauern, ein Netzwerk zu beheben, das Sie nicht gut verstehen oder das nicht mit Ihrer Netzwerkdokumentation übereinstimmt. Dies bedeutet, dass Konfigurationsabweichungen zu IT-Fehlerbehebungsproblemen führen können, die möglicherweise nicht existierten oder einfacher zu lösen gewesen wären, wenn sich das Netzwerk in seinem vorgesehenen Zustand befunden hätte, und außerdem zu Ausfallzeiten für Benutzer führen.

Common Mistakes to watch out for When Monitoring Configuration Drift

Häufige Fehler, auf die Sie beim Überwachen von Konfigurationsabweichungen achten sollten

In einer perfekten Welt hätten alle Umgebungsserver für Entwickler (Dev/QA/Staging/Prod) die gleichen Konfigurationen. Leider funktionieren die Dinge in der „realen“ Welt nicht so. In kommerziellen Umgebungen ändern Anwendungseigentümer häufig die Infrastruktur, wenn neue Funktionen in die Software eingeführt werden. 

Die Überwachung der Konfigurationsdrift ist entscheidend, um sicherzustellen, dass Softwareumgebungen so homogen wie möglich sind. Die Konfiguration der Verwaltung reduziert die Kosten, steigert die Produktivität und die Debugging-Zeit und verbessert User Experience.

Um mit der Überwachung so erfolgreich wie möglich zu sein, müssen Organisationen Fehler vermeiden, selbst wenn sie das Konfigurationsmanagement verwenden, und ihre Konfigurationsdrift überwachen.

Die häufigsten Fehler sind unten aufgeführt:

Keine Pflege einer CMDB

A. Behalten Konfigurationsverwaltungsdatenbank(CMDB) aktuell ist ein wesentlicher Bestandteil des Konfigurationsmanagements. Informationen über die Hardware- und Softwareinstallationen eines Netzwerks können an einem Ort untersucht werden, der von einer Konfigurationsverwaltungsdatenbank bereitgestellt wird. Daten werden für jedes Asset oder Konfigurationselement gesammelt und sorgen für Sichtbarkeit und Transparenz am Arbeitsplatz.

Das Versäumnis, eine CMDB zu pflegen, setzt Unternehmen der Gefahr aus, nicht vollständig zu verstehen, wie sich die Konfiguration eines Elements auf ein anderes Element auswirkt. Unternehmen riskieren, ihre Infrastruktur und Sicherheit zu beschädigen, ohne die Folgen zu verstehen.

Die Verwaltung von CMDBs kann schwierig sein, insbesondere wenn die Anzahl der Assets steigt, aber eine effektive Datenbankorganisation und -verwaltung sind entscheidend für die erfolgreiche Verfolgung von Konfigurationsabweichungen und das Verständnis der Infrastruktur.

Keinen Plan zur Überwachung der Konfigurationsdrift haben

Unternehmen verfügen häufig über massive, komplizierte Infrastrukturen, die überwacht werden müssen. Entscheidend ist, welche Komponenten am meisten überwacht werden müssen. Andernfalls kann das Konfigurationsmanagement schnell unüberschaubar und chaotisch werden.

Organisationen müssen angeben, welche Vermögenswerte für das Unternehmen wesentlich sind Überwachung und bestimmte Geschäftsbereiche. Beobachtet werden die wichtigsten Systeme, die sich von Einheit zu Einheit und Branche zu Branche unterscheiden.

Nicht automatisch überwachen

Organisationen können Konfigurationsabweichungen auf verschiedene Weise überwachen. Einige Ansätze sind jedoch raffinierter und erfolgreicher als andere.

Die manuelle Überwachung der Konfigurationsdrift ist kostspielig und zeitaufwändig. Die manuelle Überwachung deckt auch die Möglichkeit menschlicher Fehler auf. Dies ist nicht die beste Methode, um Konfigurationsdrift zu überwachen, es sei denn, Ihr Unternehmen hat einen sehr geringen Infrastrukturbedarf.

Die automatische Überwachung ist die am weitesten entwickelte und effizienteste Methode, um Konfigurationen im gewünschten Zustand zu halten. Dedizierte Konfigurationsüberwachungssysteme können Abweichungen sofort erkennen und häufig Lösungen anbieten, einschließlich einer schnellen Korrektur. Dies garantiert, dass die Infrastruktur des Unternehmens so schnell wie möglich und mit minimalen Auswirkungen wieder in den gewünschten Zustand versetzt wird.

How to Monitor Configuration Drift: 

So überwachen Sie die Konfigurationsdrift

Es wird offensichtlich, warum das Erkennen von Configuration Drift ein Hauptanliegen sein sollte, wenn Sie den Schaden erkennen, den es verursachen kann. Zu wissen, was zu bewahren ist und warum es als Veränderung präsentiert wurde, die Drift verursacht hat, ist der erste Schritt in diesem Prozess.

Wissen, wonach Sie suchen

Sie können Ihre Organisation separieren, indem Sie die Komponenten identifizieren, die für die Organisation als Ganzes und die für jede Geschäftseinheit entscheidend sind.

Dies variiert je nach Einheit und kann in stark regulierten Branchen umfangreich sein oder sich ausschließlich auf engere systemkritische Dateien/Anwendungen konzentrieren. Die Bedeutung des Systems bestimmt die Häufigkeit und Ernsthaftigkeit von Überwachungssystemen.

Legen Sie eine Grundlinie fest  

Aufgrund der verschiedenen Einstellungen wird es immer Abweichungen zwischen einer Produktionsumgebung und Testphasen geben. Die Grundlage für die Driftprüfung wird erstellt, indem definiert wird, was jeder Schritt sein sollte und welche Arten von Abweichungen zulässig sind.

Frühe Testphasen sind möglicherweise besser geeignet für eine höhere Abweichungszulage als eine Benutzerabnahme Testen Einstellung oder eine Nulldrift-Fertigungsphase.

Überwachen Sie Ihr System  

Das erforderliche Überwachungsniveau hängt vom Reifegrad der Organisation, ihren aktuellen Systemen, Werkzeugen, der Gesamtzahl der zu überprüfenden Konfigurationen und dem erforderlichen Prüfungsniveau ab. Je nach Anforderungen und Compliance kann die Überwachung für jede Einheit innerhalb einer Organisation unterschiedlich sein.

How to Prevent Configuration Drift

Die Überwachung muss sicherstellen, dass die Infrastruktur in der angemessenen Konfiguration gehalten wird, nachdem eine Grundlinie von Konfigurationen und zulässigen Lücken definiert wurde. Ohne eine Überwachungsstrategie ist die Erstellung von Konfigurationsplänen und Dokumentation Zeitverschwendung.

Zur Überwachung der Konfigurationsdrift können verschiedene Ansätze eingesetzt werden, und viele Unternehmen kombinieren Methoden und Tools je nach Reife und Reifegrad Compliance Anforderungen.

YouTube-Video

Ständige manuelle Überwachung 

Einzelne Maschinenkonfigurationen können manuell überprüft und mit einer bekannten Konfigurationsdatei verglichen werden. Aufgrund des menschlichen Aspekts ist dieser Prozess immer noch fehleranfällig und teuer in Bezug auf Mitarbeiterstunden. Ich sollte nur in geringem Umfang für einige wenige bestimmte Server-Cluster oder ein Unternehmen mit einer bescheidenen Infrastruktur verwendet werden.

Audits

Ein Team untersucht Serverkonfigurationen im Rahmen von Konfigurationsprüfungen manuell und vergleicht sie mit einem bestimmten Modell. Diese Audits können kostspielig sein, da sie Fachwissen erfordern, um zu bestimmen, wie ein System aufgebaut werden sollte, und dann eine gründliche Untersuchung jeder undokumentierten Chance, um zu entscheiden, ob es erhalten werden soll oder nicht.

Das Auditteam nimmt auch notwendige Anpassungen an den Konfigurationsdokumenten vor, die beim nächsten Audit angewendet werden. Audits werden in der Regel für hochwertige oder Compliance-lastige Cluster beibehalten und aus Zeit- und Kostengründen regelmäßig durchgeführt, in der Regel mehrmals im Jahr.

Auditing garantiert eine konsistente und wiederholbare Serverkonfiguration nach einem festgelegten Zeitplan.

Bis zum nächsten Audit driften die Einstellungen jedoch immer mehr ab und bleiben bestehen.

Automatisierte Überwachung in Echtzeit 

Automatisierte Echtzeitüberwachung ist die raffinierteste Methode, um Konfigurationen im gewünschten Zustand zu halten. Dazu müssen Server oder Gruppen von Servern erstellt werden, zusammen mit einer Beschreibung, wie sie konfiguriert werden sollen dedizierten Server Setup-Tools.

Diese Programme verwenden einen leichtgewichtigen Agenten, um die Konfiguration eines Servers innerhalb dieser Gruppe zu überwachen und mit seiner Definition zu vergleichen.

Dieser automatisierte Prozess warnt sofort vor Abweichungen und bietet in der Regel mehrere Möglichkeiten, um die Abweichung des Servers zu korrigieren.

Letzte Worte:

Inkonsistente Configuration Items (CIs) zwischen Computern oder Geräten sind die Hauptursache für Konfigurationsabweichungen. Konfigurationsabweichungen treten ganz natürlich in Rechenzentrumsumgebungen auf, wenn Software- und Hardwareänderungen im laufenden Betrieb vorgenommen werden, ohne gründlich dokumentiert oder nachverfolgt zu werden.

Viele Hochverfügbarkeit und katastrophale Erholung Systemausfälle werden Konfigurationsabweichungen zugeschrieben. Administratoren sollten die Netzwerkadressen von Hardwaregeräten zusammen mit den darauf installierten Softwareversionen und den durchgeführten Upgrades sorgfältig aufzeichnen, um Konfigurationsabweichungen zu minimieren.