- Logo

CVE killed the DataNode


DataNode: Ein Bug im Fix

Eine im Frühling 2017 entdeckte Sicherheitslücke im Linux-Kernel wurde im Mai 2017 in mehreren Linuxdistributionen gefixt. Allerdings wurde dabei in vielen Distributionen ein Bug eingebaut, der dazu führt, dass unter anderem bestimmte Java-Prozesse (Wenn jsvc.exec als Wrapper verwendet wird) nicht starten können, und mit SIGBUS vom Kernel getötet werden. Dazu gehören neben Octave oder Eclipse auch die HDFS-DataNode. Scheinbar ist der Bug in manchen Distributionen auch schon gefixt.

Falls man aber einen defekten Kernel nicht updaten oder revertieren kann, sind zwei Workarounds denkbar: Entweder spezifisch bei der DataNode Konfiguration die Stack-Size für die JVM auf 1280Kb erhöhen, oder global die hadoop_start_secure_daemon-Funktion überschreiben um diese Einstellung für alle Services zu übernehmen. Erstere Lösung ist in Ambari sicher wartbarer, als pro Node eine user function zu managen.

Das OS gehört auch zur Plattform

Was lerne wir aus dem Thema DataNode? Auch vermeintlich „triviale“ Kernelupgrades können ein Hadoop-Cluster ausschalten! Diese sollte man unbedingt als Teil des Stacks verstehen. Veränderungen am Betriebsystem sollten demnach auch alle betrieblichen Abnahmetests der Hadoop-Plattform auslösen und bestehen. Alternativ kann man OS-Upgrades auch rollierend im Cluster deployen, und den Clusterstatus nach jeder Aktion überprüfen. Ausfälle führen dann hoffentlich lediglich zu leichten Performanceeinbußen, wenn man sie rechtzeitig entdeckt.

Dies ist ein starkes Argument für eine Plattformintegrationsstufe, die sehr klein dimensioniert sein kann (4 Knoten sollten in der Regel reichen), dafür aber alle Hardwarevarianten, die möglich sind abdecken sollte. Dazu gehört eine umfangreiche funktionale Test-Suite und detailliertes Plattformmonitoring. Nur dann kann man Fehler erkennen, und in kritischen Umgebungen vermeiden.


Tags:
Woodmark - Rick Moritz

Rick Moritz

Rick hat sich mit Big Data Technologien und Konzepten beschäftigt und unsere Kunden bis Anfang 2018 als Solution Architect Big Data u.a. in der Entwicklung und mit Big-Data-Schulungen unterstützt. Seine Lieblingstechnologien sind aktuell Spark und Scala, mit einer Prise DevOps.

Interesse am Arbeiten bei Woodmark?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.