Sichere Integration von Containertechnologien in Steuerungssysteme

Von Softwarecontainern und virtuellen Maschinen

Standard-Containerlösungen haben gegenüber anderen Virtualisierungstechniken den Nachteil, dass sich alle Container innerhalb eines Systems den Kern des Host-Betriebssystems teilen. Das stellt Cloud-Anbieter und Automatisierer vor ähnliche Herausforderungen. Existierende Container-Lösungen mit erhöhter Isolation erfüllen nur bedingt die Anforderungen der Steuerungstechnik. Die Lösung: Eine geeignete Kombination von Containern und virtuellen Maschinen.
 Container vs. virtuelle Maschine
Container vs. virtuelle MaschineBild: ISW Institut für Steuerungstechnik der Werkzeugmaschinen und Fertigungseinrichtungen

Virtualisierung wird bereits seit Jahrzehnten in unterschiedlichen IT-Domänen gewinnbringend eingesetzt – also schon vor der Etablierung des Cloud-Computings. Die gesteigerte Unabhängigkeit von Hardware- und Betriebssystem und die Kostenersparnis durch Hardwarekonsolidierung sind Beispiele für die Vorteile der Virtualisierung. Softwarekomponenten in höheren Ebenen von Automatisierungssystemen lassen sich meist problemlos in virtualisierte Umgebungen integrieren. Dabei angewandte Technologien bieten auch in der prozessnäheren Steuerungstechnik Potenziale. Eine SPS stellt dabei kein statisches System mehr dar, sondern nutzt Schnittstellen nach außen, über die die Interaktion mit dynamisch austauschbaren Software-Komponenten erfolgt. Ein Beispiel für einen solchen Mehrwertdienst, der aufgrund erforderlicher Latenzen innerhalb derselben Hardware-Plattform wie die Soft-SPS ausgeführt werden muss, ist die auf Computer-Vision basierende Objekterkennung aus dem vorherigen Beitrag dieser Artikelreihe (SPS-MAGAZIN 7/2021).

 Softwarecontainer mit erhöhter Isolation
Softwarecontainer mit erhöhter IsolationBild: ISW Institut für Steuerungstechnik der Werkzeugmaschinen und Fertigungseinrichtungen

Formen der Virtualisierung

Die für die hardwarenahe Steuerungstechnik hauptsächlich relevanten Formen der Virtualisierung sind die Hypervisor-basierte Virtualisierung und die Virtualisierung auf Ebene des Betriebssystems (Containervirtualisierung). Die Containervirtualisierung lässt sich gut anhand einer Gegenüberstellung mit der Hypervisor-basierten Virtualisierung vom Typ II erklären. Jede virtuelle Maschine, die auf dem Host-System ausgeführt wird, besitzt dabei ein eigenes Betriebssystem. Bei der Containervirtualisierung hingegen werden Applikationen Laufzeitumgebungen in durch die Linux-Features Control Groups und Namespaces isolierten Bereichen zur Verfügung gestellt. Dabei werden keine zusätzlichen Gastbetriebssysteme betrieben, sondern die benötigten Betriebssystemfunktionen von einem einzelnen Host-Betriebssystem übernommen. Eine Sonderform des Hypervisors ist der partitionierende Hypervisor. Bei diesem werden sämtliche Ressourcen wie CPU-Kerne und Arbeitsspeicher statisch zwischen den Gast-Betriebssystemen aufgeteilt.

Neben der Bereitstellung individueller Sichten auf das Host-System eignen sich diese Methoden zur Virtualisierung auch zur Isolation von Betriebssystemen oder Prozessen. Die für den sicheren Einsatz von Containern in der Steuerungstechnik notwendige Isolation umfasst dabei drei Punkte:

Temporale Isolation: Die Zugriffssteuerung (Scheduling) auf gemeinsam genutzte Ressourcen durch (Echtzeit)-Prozesse erfolgt derart, dass alle zeitlichen Bedingungen, also z. B. Deadlines, eingehalten werden.

Räumliche Isolation: Prozessen werden Ressourcen wie physische bzw. virtuelle CPUs, Arbeitsspeicher oder der Zugriff auf ein Netzwerk exklusiv zur Verfügung gestellt.

Isolation des Host-Kernels: Indem sich Container den Kern des Host-Systems teilen, können Fehler in diesem ausgenutzt werden.

 Tabelle: Isolationstechniken für Container im Vergleich
Tabelle: Isolationstechniken für Container im VergleichBild: ISW Institut für Steuerungstechnik der Werkzeugmaschinen und Fertigungseinrichtungen

Isolierte Softwarecontainer im Vergleich

Zur Erhöhung der Host-Gast-Isolation zwischen Softwarecontainern existieren verschiedene Ansätze. Die Tabelle in diesem Artikel stellt die Mechanismen gegenüber, die von gVisor, Nabla-containers, Docker und Kata-Containers implementiert sind. Ein fünfter Ansatz besteht in der Kombination eines partitionierenden Hypervisors (Jailhouse) und der Container-Runtime Docker. Die Analyse erfolgt hinsichtlich folgender Punkte: Der Host-Gast-Isolationsmechanismus beschreibt, welcher Mechanismus zur Einschränkung des Zugriffs auf das Host-Betriebssystem verwendet wird. Innerhalb der Container und auf dem Host-System werden unterschiedliche Scheduling-Verfahren eingesetzt. Die Messung der Scheduling-Latenz wurde unter Linux 5.4.20 mit PREEMPT_RT-Patch durchgeführt. Eine Kompatibilität zu Spezifikationen der OCI (Open Container Initiative) und Kompatibilität zu Linux-Anwendungen erleichtert die Entwicklung von Mehrwertdiensten. Je nach Containerlösung erfolgt die Kommunikation zwischen Containern auf unterschiedliche Art.

Fazit

Bestehende Containerlösungen bieten zwar eine erhöhte Isolation, allerdings zu Lasten einer geminderten Performanz, insbesondere einer erhöhten Scheduling-Latenz. Ist diese für die Anwendung relevant, können Mehrwertdienste und Soft-SPS in sowohl räumlich als auch temporal gänzlich isolierten Partitionen ausführt werden. Hierfür kann ein partitionierender Hypervisor eingesetzt werden (DFG-gefördert/Projektnummer 420528256).

Seiten: 1 2Auf einer Seite lesen

ISW Institut für Steuerungstechnik der

Das könnte Sie auch Interessieren

Weitere Beiträge

Roboter über die SPS programmieren

Die neue SRCI-Schnittstelle soll SPSen und Roboter-Controller verbinden, um Anwendern eine einfachere Programmierung von Robotikfunktionen im gewohnten SPS-Umfeld zu ermöglichen. Wie hoch wird ihr Potenzial eingeschätzt? Und hat SRCI das Zeug, sich wirklich im Markt zu etablieren? Eine Trendumfrage in der Schwesterzeitschrift ROBOTIK UND PRODUKTION hat Roboterhersteller und Automatisierer um ihre Einschätzung gebeten.

mehr lesen
Bild: Grenzebach
Bild: Grenzebach
Lernen beim Schweißen

Lernen beim Schweißen

Die Grenzebach Gruppe und Weidmüller arbeiten auf dem Gebiet der Datenanalyse und Predictive Maintenance zusammen. Schwerpunkt der Forschung ist die Zustands- und Qualitätsüberwachung der Rührreibschweißtechnologie. Eine individuell angepasste Analysesoftware von Weidmüller monitort dabei den Schweißvorgang und soll in Zukunft Anomalien des Schweißprozesses automatisch erkennen und erfassen.

mehr lesen
Bild: Erema Engineering Recycling Maschinen und Anlagen Ges.m.b.H.
Bild: Erema Engineering Recycling Maschinen und Anlagen Ges.m.b.H.
Blinde 
Flecken

Blinde Flecken

Erema ist Weltmarktführer in der Herstellung von Kunststoffrecyclinganlagen. Weltweit verarbeiten die rund 7.500 in Betrieb befindlichen Anlagen mehr als 20 Mio. Tonnen hochwertigem Granulat pro Jahr. Die Anlagen, Maschinen und Systemkomponenten benötigen dafür modernste Hard- und Softwarekonzepte, die den Recycling-Prozess auf ein neues Niveau bringen. Und da kommt Keba ins Spiel.

mehr lesen
Bild: Ing. Büro Roth GmbH
Bild: Ing. Büro Roth GmbH
KI und Siemens Industial Edge bei Krombacher

KI und Siemens Industial Edge bei Krombacher

Die Einsatzmöglichkeiten von KI sind enorm und betreffen viele Bereiche unseres Lebens. Entsprechend sind die Erwartungen im industriellen Sektor ebenfalls sehr hoch. Gleichzeitig steigen nicht nur die Einsatzmöglichkeiten, sondern auch die Anzahl der umgesetzten Projekte. Das solche Lösungen sehr zuverlässig und flexibel eingesetzt werden können, zeigt eine Anwendung aus der Abfüllung der Krombacher Brauerei.

mehr lesen