EP4634774A1 - Orchestrierungssystem zum aktualisieren von containern mit darin enthaltenen applikationen sowie hierauf basiertes orchestrierungsverfahren - Google Patents

Orchestrierungssystem zum aktualisieren von containern mit darin enthaltenen applikationen sowie hierauf basiertes orchestrierungsverfahren

Info

Publication number
EP4634774A1
EP4634774A1 EP23821957.0A EP23821957A EP4634774A1 EP 4634774 A1 EP4634774 A1 EP 4634774A1 EP 23821957 A EP23821957 A EP 23821957A EP 4634774 A1 EP4634774 A1 EP 4634774A1
Authority
EP
European Patent Office
Prior art keywords
automation
updating
container
update
containers
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP23821957.0A
Other languages
English (en)
French (fr)
Inventor
Uwe Thomas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Phoenix Contact GmbH and Co KG
Original Assignee
Phoenix Contact GmbH and Co KG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Phoenix Contact GmbH and Co KG filed Critical Phoenix Contact GmbH and Co KG
Publication of EP4634774A1 publication Critical patent/EP4634774A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order

Definitions

  • Orchestration system for updating containers with applications contained therein and orchestration procedure based on this
  • the invention relates to an orchestration system with at least one automation device connected to an OT network of an automation system, which is intended and configured to host and access at least one application contained within a container using a container runtime system, as well as an orchestration method for updating applications contained in containers.
  • container technology (“information technology”) is quite widespread in the IT world today.
  • automation devices such as a PLC (programmable logic controller) or IO modules (input/output modules), frequency converters, robots, network devices, power supplies or other components used in automation technology, especially network components in a system, for which OPC UA (“Open Platform Communications Unified Architecture”; a standard for data exchange as a platform-independent, service-oriented architecture) is now an established standard for modeling and communication
  • OPC UA Open Platform Communications Unified Architecture
  • container technology has not been an issue for very long, but is increasingly gaining acceptance in the automation market. If both technologies, i.e. OPC UA and container technology, are used in an automation device, this has so far been done independently of each other.
  • a major advantage of container technology is that within a runtime system, individual applications, especially software programs, can be separated from each other in containers and called up for processing, and available system resources, especially hardware resources, can be used for efficient use of all resources. can be assigned individually and flexibly.
  • container engine i.e. administration and management software specifically designed for this purpose.
  • the applications contained in the respective containers therefore usually only represent a small part of a larger application and are then often referred to as microservices.
  • many containers are often needed to fully provide a large application, which in turn can be flexibly combined and managed using simple mechanisms, i.e. can be orchestrated, which is another major advantage of container technology. Since all of this is also useful for the OT world (“Operations Technology” / automation technology), individual automation devices that support container technology already exist.
  • EP 4064637 A1 for example, in order to facilitate the provision of such containers for the user, a way is proposed by which the information required for restarting and executing an application contained in a container can only be provided after the container has been installed in a device designed and configured as an edge device to execute the application and does not have to be known during development.
  • the internationally standardized ISA95 model which divides automation into five levels, is used to differentiate between IT and OT within the scope of the invention.
  • the top two levels include the higher-level corporate level and the operational management level.
  • the digital processes in these levels are assigned to IT and take place in IT networks set up accordingly.
  • Container Orchestrators in the IT world mean disadvantages in the OT world.
  • deterministic behavior is required and automatic stopping/starting and updating prevents the safe operation of a machine or system. Machines often cannot be stopped or restarted at any time.
  • firmware of the devices often has to be updated for cyber security, which often involves restarting the devices and is not supported by container technology.
  • EP 3 998 529 A1 proposes a highly complex container orchestration system for an industrial system with a cluster of computer nodes for updating a plurality of control systems for controlling a plurality of operations of a plurality of OT devices, for shifting operations between control systems and/or OT devices for the update process within a runtime system, so that certain control systems or OT devices can be updated while they are offline and other control systems or OT devices are kept online to perform the respective operations.
  • EP 4 064 045 A1 proposes a real-time update of process software with multiple software containers of a deployment unit deployed on a single physical host node.
  • a first software container for executing a process application for controlling a process device, a second software container as an execution manager for receiving an updated version of the process application and/or the first software container and a third software container in which the updated version is initialized.
  • an application state of the first process application is determined, this is transferred from the first software container to the third software container, then an update is carried out using the received application state by means of the third software container and then the first software container is instructed to stop writing output signals for the process device and the third software container is instructed to stop writing output signals for the process device.
  • the object of the invention is to show a new technical way with which a respective automation process to be controlled can be easily integrated when updating industrial automation devices of an automation system, such as programmable logic controllers, IO modules (input/output modules), frequency converters, robots, network devices, power supplies or other components used in automation technology, in particular in order not to endanger the safe operation of the automation system as a whole by stopping and starting during updates to be carried out.
  • industrial automation devices of an automation system such as programmable logic controllers, IO modules (input/output modules), frequency converters, robots, network devices, power supplies or other components used in automation technology, in particular in order not to endanger the safe operation of the automation system as a whole by stopping and starting during updates to be carried out.
  • the invention proposes an orchestration system, in particular for updating containers with applications contained therein, which comprises a number of automation devices connected to an OT network of an automation system, wherein each automation device of this number of automation devices is intended and set up to host and access an application contained within a container using a container runtime system.
  • the orchestration system comprises a common update device set up to effect an update of the containers, which for this purpose is in communication with the runtime system of each automation device of this number of automation devices and wherein for this purpose each automation device of this number of automation devices further a control device for controlling an automation of the automation device to be effected within the framework of the automation system, as well as a server unit which is in communication with the control device and is additionally connected to a client unit of the updating device via a client/server interface.
  • the update of a large number of containers with applications contained therein, which are housed in the number of automation devices using a respective container runtime system can be coordinated on the one hand, and in particular an update plan stored in the update device can be implemented in a coordinated manner.
  • the process control i.e. in particular operating states and start and stop processes of a respective control device, can be included in the coordination of the update to be carried out.
  • each server unit is also connected to the operating system of the respective Automation device in communication connection, so that not only the updating of containers, but also an updating of firmware of the respective operating system can be carried out in a coordinated and secure manner, in particular in accordance with an update plan stored in the updating device.
  • the configuration of the server unit as an OPC-LIA server, the client/server interface as an OPC-LIA interface and the client unit as an OPC-LIA client has proven particularly suitable for the orchestration system according to the invention.
  • the invention proposes an orchestration method for updating containers with applications contained therein, which are housed in a number of automation devices connected to an OT network of an automation system for accessing them using a container runtime system, for which the runtime system of each automation device of this number of automation devices is placed in communication with a common updating device set up to effect container updates and for this purpose a control device housed in each automation device of this number of automation devices for controlling an automation of the automation device to be effected within the framework of the automation system with a server unit to be additionally housed in each automation device of this number of automation devices in
  • a communication connection is established and connected to a client unit of the common updating device via a client/server interface.
  • a first update signal can be sent from the update device for the control device via the client/server interface to the server unit connected to it before the update is initiated. sent and forwarded by this to the control device, namely to stop the automation to be effected, in particular by controlling the automation of the automation device to be effected within the framework of the automation system to assume a safe state of the automation device or of an area of the automation system extending beyond the automation device, and after feedback to the updating device regarding the successful stopping of the automation to be effected, a second updating signal is sent from the updating device to the runtime system to initiate the updating.
  • Fig. 1 is a highly simplified overview of an exemplary orchestration system according to a preferred embodiment of the invention.
  • Fig. 1 shows a highly simplified overview of an orchestration system with a number of automation devices 4, 4n connected to an OT network 20 of an automation system (not shown in detail for reasons of clarity), with the automation device 4n only being shown in outline. As symbolized by the dots to the right above the automation device, further automation devices can be connected in a preferred embodiment.
  • the number of such automation devices included in the orchestration system The number of automation devices is therefore expediently not just one, but at least two, preferably a greater number.
  • Each automation device 4, 4n of this number of automation devices is, as indicated in the case of the automation device 4, intended and set up to accommodate and access at least one application contained within a container 6, 6m using a container runtime system 5.
  • such automation devices 4, 4n as indicated in the case of the automation device 4, usually accommodate, in particular also application-related, several containers 6, 6m with applications contained therein for access using the container runtime system 5, in particular so that they can be called up individually and efficiently for processing.
  • the orchestration system comprises an update device 1, which is set up to effect an update of the containers 6, 6m and for this purpose is in communication with the runtime system 5 of each automation device 4, 4n of this number of automation devices, as described in more detail below.
  • the container update is therefore initiated or coordinated from outside the automation devices and not by units housed by the automation devices.
  • the update device 1 can in particular comprise a control and evaluation unit, in particular in the form of a microcontroller, and a memory device, which can be arranged externally and/or internally of the microcontroller and can comprise software that can contain several programs, firmware and/or an operating system, whereby various protocols, in particular communication protocols, and/or control and evaluation routines can be implemented.
  • An update plan can also be stored in the memory, for example.
  • each automation device 4, 4n accommodates a control device 11 for controlling a respective causing automation and, within the scope of the invention, a server unit 12 which is in communication with the control device 11 and is also connected to a client unit 1A of the updating device 1 via a client/server interface 2.
  • the update device 1 is expediently set up to effect such an update of containers 6, 6m with the applications contained therein in relation to at least each automation device of this number of automation devices involved here, i.e.
  • the update device 1 in particular the client unit 1A, can be connected to the runtime system 5 via a container interface 14.
  • a second update signal AS2 sent via such an additional container interface 14 is marked with AS2' in Fig. 1.
  • the server unit 12 can also be connected to the runtime system 5 via a container management interface 10.
  • a second update signal AS2 sent via this is marked with "AS2" in Fig. 1.
  • the interfaces set up for a communication connection can include hardware and/or software for implementing the respective communication protocols and transmitting the respective communication signals between the units involved, i.e. in particular between the update device and the runtime system, the client unit and the server unit, and the server unit and the runtime system, and can be wireless, e.g. via radio, or wired, e.g. via copper or fiber optic.
  • the interfaces are suitably set up in such a way that, for example, the updating device can query a container status, the updating device 1 can be provided with a container list including the currently running versions, in response to its query, the updating of containers can be initiated, ie in particular can be initiated, containers to be updated can be stopped, ie in particular access to them can be prevented, and/or updated containers can be restarted, ie in particular access to them can be enabled again.
  • container images or memory images of the containers intended for an update can be provided on a server 8 serving as a source, e.g. a register server with a plurality of registers or memory areas 8A, the server 8 being in communication with the runtime system 5 for this purpose, in particular via a container register interface 7 set up accordingly as outlined in Fig. 1, in order to transfer corresponding container memory images 9 to it in response to an initiated container update.
  • a server 8 serving as a source e.g. a register server with a plurality of registers or memory areas 8A
  • the server 8 being in communication with the runtime system 5 for this purpose, in particular via a container register interface 7 set up accordingly as outlined in Fig. 1, in order to transfer corresponding container memory images 9 to it in response to an initiated container update.
  • a server 8 serving as a source
  • the server 8 being in communication with the runtime system 5 for this purpose, in particular via a container register interface 7 set up accordingly as outlined in Fig. 1, in order to transfer corresponding container memory images
  • the updating device 1 therefore also transmits at least one version designation of a new memory image 9 of at least one container to be updated to the corresponding runtime system 5 in order to effect the update, in particular as part of the updating signal AS2 or by means of a separate communication signal provided for this purpose, but not shown in the figure for reasons of clarity, initiates at least the transmission of the new container memory image 9 of each of the at least one container to be updated to the corresponding runtime system 5, and stops the execution of each of the at least one container 6 to be updated.
  • the updating signal AS2 itself can also already comprise corresponding signal parts for initiation and stopping or At least one further communication signal, which for reasons of clarity is not shown in the figure, may also be provided.
  • each server unit is additionally in communication with the operating system 13 of the respective automation device. Consequently, the updating device 1, which is connected jointly to the automation devices 4, 4n according to the invention, can preferably not only be used to effect an orderly updating of containers, but also a desired or even necessary updating of the firmware of the respective operating system.
  • OPC UA is an established standard for modeling and communication in automation technology and, as is known, the update of device firmware can already be controlled via it, it has proven particularly suitable for the orchestration system according to the invention to set up the server unit 12 as an OPC-UA server, the client/server interface 2 as an OPC-UA interface and the client unit 1A as an OPC-UA client.
  • OPC UA and container technology are thus used jointly or in a complementary manner in a particularly expedient implementation of the present invention.
  • a third updating signal AS3 can thus also be sent from the updating device 1 via the client/server interface 2 to the server unit 12 of at least one of the automation devices 4, 4n connected to the OT network in order to effect an update of its operating system firmware. Consequently, according to the preferred development, a fourth update signal AS4 can be sent from the update device 1 for the control device 11 via the client/server interface 2 to the server unit 12 connected to it and forwarded from there to the control device 11, but expediently only after feedback RM2 regarding the complete completion of all updates to be effected, in order to restart the automation to be effected.
  • the client unit 1A set up in the update device 1 via the server units 12 additionally housed in all of the automation devices 4, 4n accommodated not only can the process control, i.e. in particular operating states and start and stop processes of a respective control device 11, be additionally included in the coordination of the container update to be effected, but preferably also a firmware update can be included in the update process.
  • a list of containers including the currently running versions is made available to the update device 1, in particular, depending on the version, either via the client/server interface 2 and container management interface 10 or via the container interface 14.
  • the updating device 1 stops the machine/system via the client/server interface 2 and then also stops the container 6 to be updated, depending on the version, either via the client/server interface 2 and container management interface 10 or via the container interface 14.
  • the version designation of a new container image 9 is transmitted from the update device 1, in particular from the client unit 1A, to the runtime system 5 of the corresponding automation device 4, 4n. and initiates the transfer of the new image 9 from the storage area 8A of the server 8 to the runtime system 5 of the corresponding automation device 4, 4n.
  • this can be done either via the client/server interface 2 and container management interface 10 or via the container interface 14.
  • it can also be provided that such images 9 can be provided in a storage area of the updating device 1 itself and transferred from there to the respective automation devices 4, 4n to the runtime systems 5, whereby in the alternative case no separate server 8 serving as a source is required.
  • the update device 1 starts the container s with the new image 9, i.e. depending on the version either via the client/server interface 2 and container management interface 10 or via the container interface 14.
  • the update device 1 starts the container s with the new image 9, i.e. depending on the version either via the client/server interface 2 and container management interface 10 or via the container interface 14.
  • several containers s, 6m can also be updated accordingly in several automation devices 4, 4n.
  • the machine/system starts automatically or is explicitly started by the update device 1 via the client/server interface 2.
  • the update device 1 can also perform a firmware update for the operating system 13 of one or more automation devices 4, 4n, e.g. a firmware update necessary for a container to be updated or already updated, expediently via OPC UA mechanisms that are already known per se, before new, i.e. updated containers are started.
  • a firmware update for the operating system 13 of one or more automation devices 4, 4n e.g. a firmware update necessary for a container to be updated or already updated, expediently via OPC UA mechanisms that are already known per se, before new, i.e. updated containers are started.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

Die Erfindung betrifft ein Orchestrierungssystem, insbesondere zum Aktualisieren von Containern mit darin enthaltenen Applikationen, welches eine Anzahl von an ein OT-Netzwerk (20) einer Automatisierungsanlage angeschlossenen Automatisierungsgeräten (4, 4n) umfasst, wobei jedes Automatisierungsgerät dieser Anzahl von Automatisierungsgeräten bestimmt und eingerichtet ist, unter Nutzung eines Container-Laufzeitsystems (5) zumindest eine innerhalb eines Containers (6, 6m) enthaltene Applikation zu beherbergen und darauf zu zugreifen. Das Orchestrierungssystem umfasst ferner ein Aktualisierungsgerät (1), welches zum Bewirken einer Aktualisierung der Container (6) eingerichtet ist und hierzu mit dem Laufzeitsystem (5) jedes Automatisierungsgeräts (4, 4n) dieser Anzahl von Automatisierungsgeräten in Kommunikationsverbindung steht, wobei jedes Automatisierungsgerät (4, 4n) dieser Anzahl von Automatisierungsgeräten ferner eine Steuereinrichtung (11) zur Steuerung einer im Rahmen der Automatisierungsanlage zu bewirkenden Automatisierung des Automatisierungsgeräts (4) beherbergt sowie eine Servereinheit (12), die mit der Steuereinrichtung (11) in Kommunikationsverbindung steht und über eine Client/Server-Schnittstelle (2) an eine Clienteinheit (1A) des Aktualisierungsgerät (1) angeschaltet ist. Die Erfindung betrifft auch ein hierauf basiertes Orchestrierungsverfahren.

Description

Orchestrierungssystem zum Aktualisieren von Containern mit darin enthaltenen Applikationen sowie hierauf basiertes Orchestrierungsverfahren
Beschreibung
Die Erfindung betrifft ein Orchestrierungssystem mit wenigstens einem, an ein OT-Netzwerk einer Automatisierungsanlage angeschlossenen Automatisierungsgerät, welches bestimmt und eingerichtet ist, unter Nutzung eines Container-Laufzeitsystems zumindest eine innerhalb eines Containers enthaltene Applikation zu beherbergen und darauf zu zugreifen sowie ein Orchestrierungsverfahren zum Aktualisieren von in Containern enthaltenen Applikationen.
Bekanntermaßen ist heute in der IT-Welt die Container Technologie („Information Technology“) recht verbreitet. Für Automatisierungsgeräte wie z.B. eine SPS (Speicher programmierbare Steuerung) oder auch IO-Module (Eingangs-ZAusgangs-Module), Frequenzumrichter, Roboter, Netzwerkgeräte, Spannungsversorgungen oder weitere in der Automatisierungstechnik eingesetzte Komponenten, insbesondere Netzwerkkomponente in einer Anlage, für welche inzwischen zwar OPC UA („Open Platform Communications Unified Architecture“; ein Standard für den Datenaustausch als plattformunabhängige, service-orientierte Architektur) ein etablierter Standard für die Modellierung und Kommunikation ist, ist diese Container Technologie hingegen noch nicht so lange ein Thema, findet aber zunehmend auch für den Automatisierungsmarkt verstärkt Zustimmung. Werden beide Technologien, d.h. OPC UA und Container Technologie, in einem Automatisierungsgerät genutzt, so geschieht dies bisher unabhängig voneinander.
Ein großer Vorteil der Container Technologie ist insbesondere, dass innerhalb eines Laufzeitsystems einzelne Applikationen, insbesondere Softwareprogramme, in Containern voneinander isoliert aufgeteilt und zur Abarbeitung aufgerufen sowie verfügbare Systemressourcen, insbesondere Hardware-Ressourcen, zur effizienten Nutzung aller Ressourcen jeweils individuell und flexibel zugewiesen werden können. Für den isolierten Zugriff und die individuelle Zuweisung beinhalten solche Systeme übelicherweise eine sogenannte Container Engine, d.h. eine speziell hierfür vorgesehene Verwaltungs- und Managementsoftware. Die in den jeweiligen Containern enthaltenen Applikationen stellen somit in der Regel lediglich jeweils einen kleinen Teil einer größeren Anwendung dar und werden dann häufig auch als Microservice bezeichnet. Folglich braucht es oftmals viele Container, um eine große Anwendung auch vollständig bereitzustellen, welche jedoch wiederum über einfache Mechanismen flexibel kombiniert und verwaltet werden können, d.h. orchestriert werden können, was ein weiterer großer Vorteil der Container Technologie ist. Da all dies folglich auch für die OT-Welt („Operations Technology“ / Automatisierungstechnik) nützlich ist, existieren bereits einzelne Automatisierungsgeräte, die Container Technologie unterstützen.
In der EP 4064637 A1 wird beispielsweise zur Erleichterung der Bereitstellung solcher Container für den Anwender ein Weg vorgeschlagen, mittels welchem für das Neustarten und Ausführen einer in einem Container enthaltenen Applikation hierfür benötigte Informationen erst nach Installation des Containers in einem zur Ausführung der Applikation als Edge-Gerät bestimmten und eingerichteten Gerät bereitgestellt werden können und nicht bereits bei der Entwicklung bekannt sein müssen.
Zur Abgrenzung zwischen IT und OT dient im Rahmen der Erfindung das international genormte ISA95-Modell, welches die Automatisierung in fünf Ebenen gliedert. Die obersten beiden Ebenen umfassen die übergeordnete Unternehmensebene und Betriebsleitebene. Die digitalen Abläufe in diesen Ebenen werden der IT zugeordnet und finden in hierfür entsprechend eingerichteten IT-Netzwerken statt. Die Steuerung der Automatisierungsprozesse auf den unteren drei Ebenen, d.h. der Prozessleitebene, der Steuerungsebene und der Feldebene, erfolgt hingegen über entsprechend eingerichtete OT-Netzwerke.
Reine Container Technologie ist folglich nicht optimal für Automatisierungstechnik geeignet. Auch können Vorteile von Container Orchestratoren in der IT-Welt Nachteile in OT-Welt bedeuten. So ist in der OT- Welt deterministisches Verhalten gefordert und ein automatisches Stoppen/Starten und Aktualisieren verhindert ein sicheres Betreiben einer Maschine oder Anlage. Maschinen können häufig nicht zu beliebigen Zeitpunkten angehalten oder neu gestartet werden. Zusätzlich muss in der OT Welt für die Cyber Security oft auch die Firmware der Geräte aktualisiert werden, was oft mit einem Neustart der Geräte einhergeht und von der Container Technologie nicht unterstützt wird.
In der EP 3 998 529 A1 wird für ein Industriesystem ein äußerst komplexes Container-Orchestrierungssystem mit einem Cluster von Rechnerknoten zur Aktualisierung einer Vielzahl von Steuersystemen zum Steuern einer Vielzahl von Operationen einer Vielzahl von OT-Geräten vorgeschlagen, um für den Aktualisierungsprozess innerhalb eines Laufzeitsystems Operationen zwischen Steuersystemen und/oder OT-Geräten zu verschieben, sodass bestimmte Steuersysteme bzw. OT-Geräte aktualisiert werden können, während diese offline sind, und andere Steuersysteme bzw. OT-Geräte online gehalten werden, um die jeweiligen Operationen durchzuführen.
Die EP 4 064 045 A1 schlägt eine Echtzeitaktualisierung von Prozesssoftware mit mehrere, auf einem einzigen physikalischen Host-Knoten bereitgestellten Softwarecontainern einer Bereitstellungseinheit vor.
Hierbei ist ein erster Softwarecontainer für das Ausführen einer Prozessanwendung zur Steuerung einer Prozessvorrichtung vorgesehen, ein zweiter Softwarecontainer als Ausführungsmanager für das Empfangen einer aktualisierten Version der Prozessanwendung und/oder des ersten Softwarecontainers und ein dritter Softwarecontainer, in dem die aktualisierte Version initialisiert wird.
Anschließend wird unter Steuerung des Ausführungsmanagers ein Anwendungszustand der ersten Prozessanwendung bestimmt, dieser vom ersten Softwarecontainer zum dritten Softwarecontainer übertragen, daraufhin mittels des dritten Softwarecontainers ferner eine Aktualisierung unter Verwendung des empfangenen Anwendungszustands ausgeführt und daraufhin der erste Softwarecontainer angewiesen, das Schreiben von Ausgabesignalen für die Prozessvorrichtung zu stoppen, sowie der dritte Softwarecontainer angewiesen, Ausgabesignale für das Prozessvorrichtung zu schreiben.
Aufgabe der Erfindung ist es, einen neuen technischen Weg aufzuzeigen, mit welchem auf einfache Weise bei der Aktualisierung von industriellen Automatisierungsgeräten einer Automatisierungsanlage, wie z.B. von Speicher programmierbaren Steuerungen, IO-Modulen (Eingangs-ZAusgangs-Module), Frequenzumrichtern, Robotern, Netzwerkgeräten, Spannungsversorgungen oder weiteren in der Automatisierungstechnik eingesetzten Komponenten, ein jeweiliger, zu steuernder Automatisierungsprozess mit eingebunden werden kann, insbesondere, um durch ein Stoppen und Starten im Zuge von durchzuführenden Aktualisierungen ein sicheres Betreiben der Automatisierungsanlage insgesamt nicht zu gefährden.
Die Lösung gemäß der Erfindung ist durch ein System mit den Merkmalen des Anspruchs 1 sowie ein Verfahren gemäß Anspruch 6 gegeben. Zweckmäßige Ausgestaltungen der Erfindung sind Gegenstand der abhängigen Ansprüche.
Zweckmäßige und vorteilhafte Weiterbildungen sind Gegenstand der jeweils abhängigen Ansprüche.
Demgemäß schlägt die Erfindung ein Orchestrierungssystem, insbesondere zum Aktualisieren von Containern mit darin enthaltenen Applikationen, vor, welches eine Anzahl von an ein OT-Netzwerk einer Automatisierungsanlage angeschlossenen Automatisierungsgeräten umfasst, wobei jedes Automatisierungsgerät dieser Anzahl von Automatisierungsgeräten bestimmt und eingerichtet ist, unter Nutzung eines Container-Laufzeitsystems eine innerhalb eines Containers enthaltene Applikation zu beherbergen und darauf zu zugreifen. Ferner umfasst das Orchestrierungssystem gemäß der Erfindung ein zum Bewirken einer Aktualisierung der Container eingerichtetes, gemeinsames Aktualisierungsgerät, welches hierzu mit dem Laufzeitsystem jedes Automatisierungsgeräts dieser Anzahl von Automatisierungsgeräten in Kommunikationsverbindung steht und wobei hierzu ferner jedes Automatisierungsgerät von dieser Anzahl von Automatisierungsgeräten ferner eine Steuereinrichtung zur Steuerung einer im Rahmen der Automatisierungsanlage jeweils zu bewirkenden Automatisierung des Automatisierungsgeräts beherbergt sowie eine Servereinheit, die mit der Steuereinrichtung in Kommunikationsverbindung steht und zusätzlich über eine Client/Server-Schnittstelle an eine Clienteinheit des Aktualisierungsgerät angeschaltet ist.
Mittels eines solchen Aktualisierungsgeräts, das nicht auf einem jeweiligen Automatisierungsgerät selbst, sondern als ein gemeinsames Aktualisierungsgerät für alle der von dem Orchestrierungssystem umfassten Anzahl von an das OT-Netzwerk einer Automatisierungsanlage angeschlossenen Automatisierungsgeräten realisiert ist, kann einerseits koordiniert die Aktualisierung von einer Vielzahl von Containern mit darin enthaltenen Applikationen, welche in der Anzahl von Automatisierungsgeräten unter Nutzung eines jeweiligen Container-Laufzeitsystems beherbergt sind, bewirkt werden, insbesondere auch einen in dem Aktualisierungsgerät hinterlegten Aktualisierungsplan entsprechend koordiniert umsetzen. Andererseits kann mittels der im Aktualisierungsgerät eingerichteten Clienteinheit über die zusätzlich in allen beherbergten Automatisierungsgeräte beherbergten Servereinheiten ergänzend die Prozesssteuerung, d.h. insbesondere Betriebszustände sowie Start- und Stoppvorgänge einer jeweiligen Steuereinrichtung, in die Koordination der zu bewirkenden Aktualisierung mit einbezogen werden. So kann folglich insbesondere ein Zeitpunkt abgewartet werden, an dem eine Aktualisierung möglich ist, ohne den sicheren Betrieb zu gefährden und/oder in die Steuerung von im Rahmen der Automatisierungsanlage jeweils zu bewirkenden Automatisierungen aktiv eingegriffen werden, beispielsweise um den Prozess bzw. die Automatisierungsanlage insgesamt oder auch einen Teilprozess bzw. einzelne Automatisierungsgeräte hiervon in einen sicheren Betriebszustand zu überführen bevor eine Aktualisierung eingeleitet und also in Folge bewirkt wird.
Bevorzugt steht in einem solchem Orchestrierungssystem gemäß der Erfindung ferner jede Servereinheit mit dem Betriebssystem des jeweiligen Automatisierungsgeräts in Kommunikationsverbindung, sodass nicht nur die Aktualisierung von Containern, sondern auch eine Aktualisierung von Firmware des jeweiligen Betriebssystems koordiniert und sicher, insbesondere entsprechend eines in dem Aktualisierungsgerät hinterlegten Aktualisierungsplans, bewirkt werden kann.
Als besonders geeignet hat sich für das Orchestrierungssystem gemäß der Erfindung ferner die Einrichtung der Servereinheit als OPC-LIA Server, der Client/Server-Schnittstelle als OPC-LIA Schnittstelle und der Clienteinheit als OPC-LIA Client gezeigt.
Demgemäß schlägt die Erfindung ein Orchestrierungsverfahren zum Aktualisieren von Containern mit darin enthaltenen Applikationen, die in einer Anzahl von an ein OT-Netzwerk einer Automatisierungsanlage angeschlossenen Automatisierungsgeräten zum Zugreifen darauf unter Nutzung eines Container-Laufzeitsystems beherbergt sind, vor, für welches das Laufzeitsystem jedes Automatisierungsgeräts dieser Anzahl von Automatisierungsgerätes mit einem gemeinsamen, zum Bewirken von Container-Aktualisierungen eingerichteten Aktualisierungsgerät in Kommunikationsverbindung gestellt wird und hierzu ferner eine in jedem Automatisierungsgerät dieser Anzahl von Automatisierungsgeräten beherbergte Steuereinrichtung zur Steuerung einer im Rahmen der Automatisierungsanlage zu bewirkenden Automatisierung des Automatisierungsgeräts mit einer zusätzlich in jedem Automatisierungsgerät dieser Anzahl von Automatisierungsgeräten zu beherbergenden Servereinheit in
Kommunikationsverbindung gestellt und über eine Client/Server-Schnittstelle an eine Clienteinheit des gemeinsamen Aktualisierungsgerät angeschaltet wird.
Erfindungsgemäß kann somit zum Bewirken einer Aktualisierung von Containern mit den darin enthaltenen Applikationen in Bezug auf zumindest jedes hierbei involvierte Automatisierungsgerät dieser Anzahl von Automatisierungsgeräten vor dem Einleiten der Aktualisierung ein erstes Aktualisierungssignal von dem Aktualisierungsgerät für die Steuereinrichtung über die Client/Server-Schnittstelle an die daran angeschaltete Servereinheit gesandt und von dieser an die Steuereinrichtung weitergeleitet werden, und zwar zum Anhalten der zu bewirkenden Automatisierung, insbesondere durch Steuerung der im Rahmen der Automatisierungsanlage zu bewirkenden Automatisierung des Automatisierungsgeräts zum Einnehmen eines sicheren Zustandes des Automatisierungsgeräts oder eines über das Automatisierungsgerät hinausgehenden Bereichs der Automatisierungsanlage, und nach Rückmeldung an das Aktualisierungsgerät betreffend das erfolgte Anhalten der zu bewirkenden Automatisierung ein zweites Aktualisierungssignal von dem Aktualisierungsgerät an das Laufzeitsystem zum Einleiten der Aktualisierung gesandt wird.
Vorstehend bereits umrissene sowie weitere Merkmale und Vorteile der Erfindung werden anhand der nachfolgend Beschreibung anhand von Beispielen bevorzugter Aus- und Weiterbildungen näher ersichtlich, wobei auf die beigefügten Zeichnungen Bezug genommen wird, in welchen zeigen:
Fig. 1 eine stark vereinfachte Übersicht eines beispielhaften Orchestrierungssystems gemäß einer bevorzugten Ausführungsform der Erfindung.
Nachfolgend wird auf die Fig. 1 Bezug genommen, anhand welcher Beispiele von bevorzugten Aus- und Weiterbildungen eines erfindungsgemäßen Orchestrierungssystems, insbesondere zum Aktualisieren von Containern mit darin enthaltenen Applikationen, und auch hierauf basierte Orchestrierungsverfahren skizziert und aus Gründen der Übersichtlichkeit stark vereinfacht dargestellt sind.
In Fig. 1 dargestellt ist in stark vereinfachter Übersicht ein Orchestrierungssystem mit einer Anzahl von an ein OT-Netzwerk 20 einer aus Gründen der Übersichtlichkeit nicht näher gezeigten Automatisierungsanlage angeschlossenen Automatisierungsgeräten 4, 4n, wobei das Automatisierungsgerät 4n lediglich ansatzweise gezeigt ist. Wie mit den Punkten rechts oberhalb des Automatisierungsgerätes symbolisiert können in bevorzugter Ausführung weitere Automatisierungsgeräte angeschlossen sein. Die vom Orchestrierungssystem umfasste Anzahl von solchen Automatisierungsgeräten beträgt somit zweckmäßig nicht nur eins, sondern wenigstens zwei, bevorzugt eine darüber hinausgehende Vielzahl. Jedes Automatisierungsgerät 4, 4n dieser Anzahl von Automatisierungsgeräten ist, wie beim Automatisierungsgerät 4 angedeutet, bestimmt und eingerichtet, unter Nutzung eines Container-Laufzeitsystems 5 zumindest eine innerhalb eines Containers 6, 6m enthaltene Applikation zu beherbergen und darauf zu zugreifen. Da, wie eingangs beschrieben, es oftmals viele Container braucht, um eine große Anwendung auch vollständig bereitzustellen, beherbergen solche Automatisierungsgeräte 4, 4n, wie beim Automatisierungsgerät 4 angedeutet, in der Regel, insbesondere auch Anwendungsbezogen, unter Nutzung des Container-Laufzeitsystems 5 mehre Container 6, 6m mit darin für den Zugriff enthaltenen Applikationen, insbesondere um individuell und effizient zur Abarbeitung aufgerufen werden können.
Ferner umfasst das Orchestrierungssystem zusätzlich zu der Anzahl von Automatisierungsgeräten 4, 4n ein Aktualisierungsgerät 1 , welches zum Bewirken einer Aktualisierung der Container 6, 6m eingerichtet ist und hierzu mit dem Laufzeitsystem 5 jedes Automatisierungsgeräts 4, 4n dieser Anzahl von Automatisierungsgeräten in Kommunikationsverbindung steht, wie nachfolgend noch näher beschrieben. Die Container-Aktualisierung wird folglich von außerhalb der Automatisierungsgeräte angestoßen bzw. koordiniert und nicht durch von den Automatisierungsgeräten beherbergten Einheiten. Das Aktualisierungsgerät 1 kann hierbei insbesondere eine Steuer- und Auswerteeinheit, insbesondere in Art eines Mikrocontrollers, und eine Speichereinrichtung umfassen, die extern und/oder intern vom Mikrocontroller angeordnet sein kann und Software umfassen kann, die mehrere Programme, Firmware und/oder ein Betriebssystem beinhalten kann, wodurch verschiedene Protokolle, insbesondere Kommunikationsprotokolle, und/oder Steuer- und Auswerteroutinen implementiert werden können. Auch kann im Speicher beispielsweise ein Aktualisierungsplan hinterlegt sein.
Jedes Automatisierungsgerät 4, 4n beherbergt allerdings eine Steuereinrichtung 11 zur Steuerung einer im Rahmen der Automatisierungsanlage jeweils zu bewirkenden Automatisierung sowie im Rahmen der Erfindung eine Servereinheit 12, die sowohl mit der Steuereinrichtung 11 in Kommunikationsverbindung steht als auch über eine Client/Server-Schnittstelle 2 an eine Clienteinheit 1A des Aktualisierungsgeräts 1 angeschaltet ist.
Soll nunmehr eine Aktualisierung von einem Container oder auch mehreren Containern vorgenommen werden, welches insbesondere manuell durch einen Anwender oder auch automatisch, z.B. nach bestimmten Zeitzyklen und/oder entsprechend einem hinterlegten Aktualisierungsplan, oder auch dem Aktualisierungsgerät durch anderweitige Signalisierung vorgegeben werden kann, wobei die Art der Vorgabe jedoch nicht Gegenstand der Erfindung ist, ist das Aktualisierungsgerät 1 zweckmäßig eingerichtet, zum Bewirken einer solchen Aktualisierung von Containern 6, 6m mit den darin enthaltenen Applikationen in Bezug auf zumindest jedes hierbei involvierte, d.h. insbesondere im Rahmen dieser Aktualisierung grundsätzlich betroffene, Automatisierungsgerät dieser Anzahl von Automatisierungsgeräten vor dem Einleiten der Aktualisierung ein erstes Aktualisierungssignal AS1 von dem Aktualisierungsgerät 1 für die jeweilige Steuereinrichtung 11 über die jeweilige Client/Server-Schnittstelle 2 an die jeweils daran angeschaltete Servereinheit 12 zu senden, welches dann von dieser an die Steuereinrichtung 11 weitergeleitet wird, und zwar zum Anhalten der zu bewirkenden Automatisierung, d.h. insbesondere durch Steuerung der im Rahmen der Automatisierungsanlage zu bewirkenden Automatisierung des Automatisierungsgeräts zum Einnehmen eines sicheren Zustandes des Automatisierungsgeräts oder, insbesondere je nach Anwendung, eines über das Automatisierungsgerät hinausgehenden Bereichs der Automatisierungsanlage.
Nach Rückmeldung RM1 an das Aktualisierungsgerät 1 , d.h. insbesondere von jedem hierbei involvierten Automatisierungsgerät ausgehend von der jeweiligen Steuereinrichtung 11 an die jeweils daran angeschaltete Servereinheit 12 und von dort über die jeweilige Client/Server-Schnittstelle 2 an das Aktualisierungsgerät 1 ; betreffend das erfolgte Anhalten der zu bewirkenden Automatisierung wird daraufhin ein zweites Aktualisierungssignal AS2 von dem Aktualisierungsgerät 1 an das jeweilige Laufzeitsystem 5 zum Einleiten der Aktualisierung gesandt.
Wie bei Fig. 1 zu sehen, kommen zur Herstellung der Kommunikationsverbindungen zwischen dem Aktualisierungsgerät 1 und jedem Laufzeitsystem 5 im Rahmen der Erfindung grundsätzlich zwei unterschiedliche, einander ergänzende oder auch alternative Kommunikationsverbindung in Betracht.
Einerseits kann das Aktualisierungsgerät 1 , insbesondere die Clienteinheit 1A, an das Laufzeitsystem 5 über eine Container Schnittstelle 14 angeschaltet sein. Ein über eine solche zusätzliche Container Schnittstelle 14 ausgesandtes zweites Aktualisierungssignal AS2 ist bei Fig. 1 mit AS2‘ gekennzeichnet.
Andererseits kann auch die Servereinheit 12 jeweils an das Laufzeitsystem 5 über eine Container Management Schnittstelle 10 angeschaltet sein. Ein hierrüber ausgesandtes zweites Aktualisierungssignal AS2 ist bei Fig. 1 mit AS2“ gekennzeichnet.
Die für eine Kommunikationsverbindung jeweils eingerichteten Schnittstellen können hierbei zur Umsetzung jeweiliger Kommunikationsprotokolle sowie Übertragen jeweiliger Kommunikationssignale zwischen den jeweils beteiligten Einheiten, d.h. insbesondere zwischen Aktualisierungsgerät und Laufzeitsystem, Clienteinheit und Servereinheit, und Servereinheit und Laufzeitsystem, Hardware und/oder Software umfassen sowie Leitungslos, z.B. via Funk, oder auch Leitungsgebunden, z.B. via Kupfer oder Glasfaser, aufgebaut sein.
Hierbei sind die Schnittstellen zweckmäßig so eingerichtet, dass über diese beispielsweise das Aktualisierungsgerät einen Containerstatus abfragen kann, dem Aktualisierungsgerät 1 , zweckmäßig auf dessen Abfrage hin, eine Containerliste inclusive der aktuell laufenden Versionen zur Verfügung gestellt werden kann, die Aktualisierung von Containern angestoßen, d.h. insbesondere eingeleitet werden kann, zu aktualisierende Container gestoppt werden können, d.h. insbesondere der Zugriff hierauf unterbunden werden kann, und/oder aktualisierte Container wieder gestartet werden können, d.h. insbesondere der Zugriff hierauf wieder freigegeben werden kann.
Für die Aktualisierung selbst, können, wie an und für sich bekannt, zweckmäßig für eine Aktualisierung vorgesehen Container Images bzw. Speicherabbilder der Container auf einem als Quelle dienenden Server 8, z.B. einem Register-Server mit einer Mehrzahl an Registern oder Speicherbereichen 8A, bereitgestellt werden, wobei der Server 8 hierzu mit dem Laufzeitsystem 5 in Kommunikationsverbindung steht, insbesondere über eine wie bei Fig. 1 skizziert entsprechend eingerichtete Container Register Schnittstelle 7, um entsprechende Container Speicherabbilder 9 in Reaktion auf eine initiierte Containeraktualisierung an dies zu übertragen. Ergänzend oder alternativ hierzu kann auch vorgesehen sein, dass in einem Speicherbereich des Aktualisierungsgeräts 1 selbst solche Images bereitgestellt werden können und von dort auf die jeweiligen Automatisierungsgeräte 4, 4n zu den Laufzeitsystemen 5 übertragen werden, wobei im alternativen Fall kein separater, als Quelle dienender Server 8 erforderlich ist.
In bevorzugter Ausführung überträgt das Aktualisierungsgerät 1 zum Bewirken der Aktualisierung folglich ferner zumindest eine Versionsbezeichnung eines neuen Speicherabbildes 9 wenigstens eines zu aktualisierenden Containers an das entsprechende Laufzeitsystem 5, insbesondere als Teil des Aktualisierungssignals AS2 oder mittels eines separaten hierzu vorgesehenen, aus Gründen der Überschaubarkeit in der Figur jedoch nicht dargestellten Kommunikationssignals, initiiert zumindest die Übertragung des neuen Container Speicherabbildes 9 jedes des wenigstens eines zu aktualisierenden Containers an das entsprechende Laufzeitsystem 5, und stoppt die Ausführung jedes des wenigstens einen zu aktualisierenden Containers 6. Auch zur Initiierung und zum Stoppen kann je nach Ausführung bereits das Aktualisierungssignal AS2 selbst entsprechende Signalteile umfassen oder auch wenigstens ein weiteres, aus Gründen der Überschaubarkeit in der Figur jedoch nicht dargestelltes Kommunikationssignal vorgesehen sein.
Entsprechendes gilt für ein bevorzugtes Starten des wenigstens einen, mit neuem Speicherabbild aktualisierten Containers 6 durch das Aktualisierungsgerät 1 nach Bewirken der Aktualisierung, d.h. insbesondere nach entsprechender Rückmeldung vom Laufzeitsystem 5 an das Aktualisierungsgerät.
Wie bei Fig. 1 ferner skizziert, steht in bevorzugter Ausführung der Erfindung jede Servereinheit zusätzlich mit dem Betriebssystem 13 des jeweiligen Automatisierungsgeräts in Kommunikationsverbindung. Folglich kann über das gemäß Erfindung gemeinsam an die Automatisierungsgeräte 4, 4n angebundene Aktualisierungsgerät 1 bevorzugt nicht nur eine geordnete Aktualisierung von Containern bewirkt werden, sondern auch eine erwünschte oder auch notwendige Aktualisierung der Firmware des jeweiligen Betriebssystems. Insbesondere da, wie eingangs erwähnt, in der Automatisierungstechnik OPC UA ein etablierter Standard für die Modellierung und Kommunikation ist und sich darüber bekanntermaßen auch bereits das Update von Geräte Firmware steuern lässt, hat es sich für das Orchestrierungssystem gemäß der Erfindung als besonders geeignet gezeigt, die Servereinheit 12 als OPC-UA Server, die Client/Server-Schnittstelle 2 als OPC-UA Schnittstelle und der Clienteinheit 1A als OPC-UA Client einzurichten. OPC UA und Container Technologie werden somit in besonders zweckmäßiger Umsetzung der vorliegenden Erfindung gemeinschaftlich bzw. einander ergänzend genutzt.
Nach vorbeschriebener Rückmeldung RM1 an das Aktualisierungsgerät 1 betreffend das erfolgte Anhalten der zu bewirkenden Automatisierung kann somit z.B. auch ein drittes Aktualisierungssignal AS3 von dem Aktualisierungsgerät 1 über die Client/Server-Schnittstelle 2 an die Servereinheit 12 wenigstens eines der an das OT-Netzwerk angeschlossenen Automatisierungsgeräte 4, 4n zum Bewirken einer Aktualisierung von dessen Betriebssystem-Firmware gesandt werden. Folglich kann, jedoch zweckmäßig erst nach Rückmeldung RM2 betreffend das vollständige Erfolgen aller zu bewirkenden Aktualisierungen, gemäß bevorzugt Weiterbildung ein viertes Aktualisierungssignal AS4 von dem Aktualisierungsgerät 1 für die Steuereinrichtung 11 über die Client/Server- Schnittstelle 2 an die daran angeschaltete Servereinheit 12 gesandt und von dieser an die Steuereinrichtung 11 weitergeleitet werden, und zwar zum Neustarten der zu bewirkenden Automatisierung.
Folglich kann mittels der im Aktualisierungsgerät 1 eingerichteten Clienteinheit 1A über die zusätzlich in allen beherbergten Automatisierungsgeräten 4, 4n beherbergten Servereinheiten 12 nicht nur ergänzend die Prozesssteuerung, d.h. insbesondere Betriebszustände sowie Start- und Stoppvorgänge einer jeweiligen Steuereinrichtung 11 , in die Koordination der zu bewirkenden Container-Aktualisierung mit einbezogen werden, sondern bevorzugt auch eine Firmware-Aktualisierung in den Aktualisierungsprozess mit einbezogen werden.
Zusammenfassend kann unter verständiger Würdigung vorstehender Beschreibung ein möglicher Ablauf unter Nutzung eines Orchestrierungssystems gemäß der Erfindung verkürzt beispielsweise wie folgt skizziert werden.
Dem Aktualisierungsgerät 1 wird eine Liste der Container inclusive der aktuell laufenden Versionen zur Verfügung gestellt, insbesondere je nach Ausführung entweder über die Client/Server-Schnittstelle 2 und Container-Management- Schnittstelle 10 oder über die Container-Schnittstelle 14.
Soll nunmehr eine Aktualisierung vorgenommen werden, stoppt das Aktualisierungsgerät 1 die Maschine/Anlage über die Client/Server-Schnittstelle 2 und stoppt anschließend ferner den zu aktualisierenden Container 6 je nach Ausführung entweder über die Client/Server-Schnittstelle 2 und Container- Management-Schnittstelle 10 oder über die Container-Schnittstelle 14.
Je nach Implementierung werden vor oder auch erst nach diesem Stoppen, vom Aktualisierungsgerät 1 ausgehend, insbesondere von der Clienteinheit 1A, die Versionsbezeichnung eines neuen Container Images 9 an das Laufzeitsystem 5 des entsprechenden Automatisierungsgeräts 4, 4n übertragen und die Übertragung des neuen Images 9 von dem Speicherbereich 8A des Servers 8 an das Laufzeitsystem 5 des entsprechenden Automatisierungsgeräts 4, 4n initiiert. Dies kann je nach Ausführung entweder über die Client/Server-Schnittstelle 2 und Container-Management-Schnittstelle 10 oder über die Container-Schnittstelle 14 erfolgen. Wie zuvor angesprochen, kann ergänzend oder alternativ hierzu auch vorgesehen sein, dass in einem Speicherbereich des Aktualisierungsgeräts 1 selbst solche Images 9 bereitgestellt werden können und von dort auf die jeweiligen Automatisierungsgeräte 4, 4n zu den Laufzeitsystemen 5 übertragen werden, wobei im alternativen Fall kein separater, als Quelle dienender Server 8 erforderlich ist.
Das Aktualisierungsgerät 1 startet den Container s mit dem neuen Image 9, d.h. je nach Ausführung entweder über die Client/Server-Schnittstelle 2 und Container-Management-Schnittstelle 10 oder über die Container-Schnittstelle 14. Selbstverständlich können auch mehrere Container s, 6m, auch in mehreren Automatisierungsgeräten 4, 4n, entsprechend aktualisiert werden.
Die Maschine/Anlage startet automatisch oder wird explizit vom Aktualisierungsgerät 1 über die Client/Server-Schnittstelle 2 gestartet.
Zusätzlich kann das Aktualisierungsgerät 1 auch eine Firmware-Aktualisierung für das Betriebssystem 13 eines oder mehrerer Automatisierungsgeräte 4, 4n durchführen, z.B. eine für einen zu aktualisierenden oder bereits aktualisierten Container notwendige Firmware Aktualisierung, zweckmäßig über an und für sich bereits bekannte OPC UA Mechanismen, bevor neue, d.h. aktualisierte Container gestartet werden.
Aus vorgehender Beschreibung ist ferner ersichtlich, dass das erfindungsgemäße Vorgehen insbesondere durch eine Kombination geeigneter Hard- und Software gegeben ist, wobei erforderliche Software z.B. auch auf ohnehin vorhandener Hardware, beispielsweis einem vorhandenen Prozessor, laufen kann. Die Programmtechnische Umsetzung, insbesondere auch programmtechnische Einrichtung der im Rahmen der Erfindung beteiligten Geräte und Schnittstellen, liegt jedoch nach verständiger Würdigung vorstehender Beschreibung im Rahmen des Wissens und Könnens eines hiermit beauftragten Programmierers.

Claims

Orchestrierungssystem, insbesondere zum Aktualisieren von Containern mit darin enthaltenen Applikationen, umfassend eine Anzahl von an ein OT-Netzwerk (20) einer Automatisierungsanlage angeschlossenen Automatisierungsgeräten (4, 4n), wobei jedes Automatisierungsgerät dieser Anzahl von Automatisierungsgeräten bestimmt und eingerichtet ist, unter Nutzung eines Container- Laufzeitsystems (5) zumindest eine innerhalb eines Containers (6,6m) enthaltene Applikation zu beherbergen und darauf zu zugreifen, und ein Aktualisierungsgerät (1 ), welches zum Bewirken einer Aktualisierung der Container (6) eingerichtet ist und hierzu mit dem Laufzeitsystem (5) jedes Automatisierungsgeräts (4, 4n) dieser Anzahl von Automatisierungsgeräten in Kommunikationsverbindung steht, wobei jedes Automatisierungsgerät (4, 4n) dieser Anzahl von Automatisierungsgeräten ferner eine Steuereinrichtung (11) zur Steuerung einer im Rahmen der Automatisierungsanlage zu bewirkenden Automatisierung des Automatisierungsgeräts (4) beherbergt sowie eine Servereinheit (12), die mit der Steuereinrichtung (11 ) in Kommunikationsverbindung steht und über eine Client/Server-Schnittstelle (2) an eine Clienteinheit (1 A) des Aktualisierungsgerät (1 ) angeschaltet ist. Orchestrierungssystem nach Anspruch 1 , wobei jede Servereinheit ferner mit dem Betriebssystem (13) des jeweiligen Automatisierungsgeräts in Kommunikationsverbindung steht. Orchestrierungssystem nach Anspruch 1 oder 2, wobei die Servereinheit (12) als OPC-UA Server, die Client/Server-Schnittstelle (2) als OPC-UA Schnittstelle und die Clienteinheit (1 A) als OPC-UA Client eingerichtet sind. Orchestrierungssystem nach einem der vorstehenden Ansprüche, wobei zur Herstellung der Kommunikationsverbindung zwischen dem Aktualisierungsgerät (1 ) und jedem Laufzeitsystem (5), - die Servereinheit (12) an das jeweilige Laufzeitsystem (5) über eine Container Management Schnittstelle (10) angeschaltet ist, die für eine Kommunikationsverbindung zwischen dem Aktualisierungsgerät (1) und dem jeweiligen Laufzeitsystem eingerichtet ist, zum Verfügung stellen einer Liste der Container inclusive der aktuell laufenden Versionen, zum Abfragen des Container Status, zum Anstoßen des Aktualisierens von Containern, zum Stoppen von zu aktualisierenden Containern und/oder zum Starten von aktualisierten Containern, und/oder
- das Aktualisierungsgerät (1 ) an das jeweilige Laufzeitsystem (5) über eine Container Schnittstelle (14) angeschaltet ist, welche für eine Kommunikationsverbindung zwischen dem Aktualisierungsgerät und dem jeweiligen Laufzeitsystem eingerichtet ist, zum Verfügung stellen einer Liste der Container inclusive der aktuell laufenden Versionen, zum Abfragen des Container Status, zum Anstoßen des Aktualisierens von Containern, zum Stoppen von zu aktualisierenden Containern und/oder zum Starten von aktualisierten Containern. Orchestrierungssystem nach einem der vorstehenden Ansprüche, welches ferner wenigstens einen, mit dem jeweiligen Laufzeitsystem (5) in Kommunikationsverbindung stehenden Server (8) zur Bereitstellung von Container Speicherabbildern (9, 9k) umfasst. Orchestrierungsverfahren zum Aktualisieren von Containern (6, 6m) mit darin enthaltenen Applikationen, die in einer Anzahl von an ein OT- Netzwerk (20) einer Automatisierungsanlage angeschlossenen Automatisierungsgeräten (4, 4n) zum Zugreifen darauf unter Nutzung eines Container-Laufzeitsystems (5) beherbergt sind, wobei ein Aktualisierungsgerät (1 ) zum Bewirken einer Aktualisierung von Containern (6, 6m) mit darin enthaltenen, in dieser Anzahl von wenigstens einem Automatisierungsgerät beherbergten Applikationen eingerichtet und mit dem Laufzeitsystem (5) jedes Automatisierungsgeräts (4, 4n) von dieser Anzahl von Automatisierungsgeräten in Kommunikationsverbindung gestellt wird, und wobei in jedem Automatisierungsgerät (4, 4n) von dieser Anzahl von wenigstens einem Automatisierungsgerät ferner eine Steuereinrichtung (11) zur Steuerung einer im Rahmen der Automatisierungsanlage zu bewirkenden Automatisierung des Automatisierungsgeräts (4) sowie eine Servereinheit (12) beherbergt wird, die mit der Steuereinrichtung (11 ) in Kommunikationsverbindung gestellt wird und über eine Client/Server- Schnittstelle (2) an eine Clienteinheit (1A) des Aktualisierungsgerät (1 ) angeschaltet wird, wobei das Verfahren ferner die Schritte umfasst, dass zum Bewirken einer Aktualisierung in Bezug auf zumindest jedes hierbei involvierte Automatisierungsgerät (4, 4n) dieser Anzahl von Automatisierungsgeräten und vor dem Einleiten der Aktualisierung ein erstes Aktualisierungssignal (AS1 ) von dem Aktualisierungsgerät (1 ) für die Steuereinrichtung (11 ) über die Client/Server-Schnittstelle (2) an die daran angeschaltete Servereinheit (12) gesandt und von dieser an die Steuereinrichtung (11) weitergeleitet wird, und zwar zum Anhalten der zu bewirkenden Automatisierung, insbesondere durch Steuerung der im Rahmen der Automatisierungsanlage zu bewirkenden Automatisierung des Automatisierungsgeräts (4, 4n) zum Einnehmen eines sicheren Zustandes zumindest des Automatisierungsgeräts (4, 4n) oder eines über das Automatisierungsgerät (4, 4n) hinausgehenden Bereichs der Automatisierungsanlage, und, dass nach Rückmeldung (RM1 ) an das Aktualisierungsgerät (1 ) betreffend das erfolgte Anhalten der zu bewirkenden Automatisierung ein zweites Aktualisierungssignal (AS2‘, AS2“) von dem Aktualisierungsgerät (1) an das Laufzeitsystem (5) zum Einleiten der Aktualisierung gesandt wird.
7. Orchestrierungsverfahren nach Anspruch 6, wobei das Aktualisierungsgerät (1) zum Bewirken der Aktualisierung ferner
- eine Versionsbezeichnung eines neuen Speicherabbildes (9) wenigstens eines zu aktualisierenden Containers an das entsprechende Laufzeitsystem (5) überträgt,
- die Übertragung des neuen Container Speicherabbildes (9) jedes des wenigstens eines zu aktualisierenden Containers an das entsprechende Laufzeitsystem (5) initiiert, und
- die Ausführung jedes des wenigstens einen zu aktualisierenden Containers (6) stoppt. Orchestrierungsverfahren nach Anspruch 7, wobei das Aktualisierungsgerät (1 ) nach Bewirken der Aktualisierung ferner den wenigstens einen, mit neuem Speicherabbild aktualisierten Container (6) startet. Orchestrierungsverfahren nach einem der Ansprüche 6 bis 8, wobei nach Rückmeldung (RM1 ) an das Aktualisierungsgerät (1) betreffend das erfolgte Anhalten der zu bewirkenden Automatisierung ein drittes Aktualisierungssignal (AS3) von dem Aktualisierungsgerät (1 ) über die Client/Server-Schnittstelle (2) an die Servereinheit (12) wenigstens eines der an das OT-Netzwerk (12) angeschlossenen Automatisierungsgeräte (4) zum Bewirken einer Aktualisierung von Firmware dessen Betriebssystems gesandt wird. Orchestrierungsverfahren nach einem der Ansprüche 6 bis 9, wobei nach Rückmeldung (RM2) betreffend das vollständige Erfolgen aller zu bewirkenden Aktualisierungen ein viertes Aktualisierungssignal (AS4) von dem Aktualisierungsgerät (1 ) für die Steuereinrichtung (11 ) über die Client/Server-Schnittstelle (2) an die daran angeschaltete Servereinheit (12) gesandt und von dieser an die Steuereinrichtung (11) weitergeleitet wird, und zwar zum Neustarten der zu bewirkenden Automatisierung.
EP23821957.0A 2022-12-12 2023-12-07 Orchestrierungssystem zum aktualisieren von containern mit darin enthaltenen applikationen sowie hierauf basiertes orchestrierungsverfahren Pending EP4634774A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
LU503173A LU503173B1 (de) 2022-12-12 2022-12-12 Orchestrierungssystem zum Aktualisieren von Containern mit darin enthaltenen Applikationen sowie hierauf basiertes Orchestrierungsverfahren
PCT/EP2023/084787 WO2024126262A1 (de) 2022-12-12 2023-12-07 Orchestrierungssystem zum aktualisieren von containern mit darin enthaltenen applikationen sowie hierauf basiertes orchestrierungsverfahren

Publications (1)

Publication Number Publication Date
EP4634774A1 true EP4634774A1 (de) 2025-10-22

Family

ID=84887600

Family Applications (1)

Application Number Title Priority Date Filing Date
EP23821957.0A Pending EP4634774A1 (de) 2022-12-12 2023-12-07 Orchestrierungssystem zum aktualisieren von containern mit darin enthaltenen applikationen sowie hierauf basiertes orchestrierungsverfahren

Country Status (4)

Country Link
EP (1) EP4634774A1 (de)
CN (1) CN120457416A (de)
LU (1) LU503173B1 (de)
WO (1) WO2024126262A1 (de)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11513877B2 (en) 2020-09-22 2022-11-29 Rockwell Automation Technologies, Inc. Updating operational technology devices using container orchestration systems
EP4064637A1 (de) 2021-03-24 2022-09-28 Siemens Aktiengesellschaft Verfahren und vorrichtung zur konfiguration einer applikation
EP4064045A1 (de) 2021-03-25 2022-09-28 ABB Schweiz AG Verfahren zur echtzeitaktualisierung von prozess-software
US12032985B2 (en) * 2021-04-30 2024-07-09 VMware LLC Managed virtual machines

Also Published As

Publication number Publication date
LU503173B1 (de) 2024-06-12
WO2024126262A1 (de) 2024-06-20
CN120457416A (zh) 2025-08-08

Similar Documents

Publication Publication Date Title
DE60200210T2 (de) Über das World-Wide-Web zugängliche, eingebettete Programmier-Software
EP4091050B1 (de) Verfahren und anordnung zum verwalten von automatisierungs-programmen für industrielle automatisierungsplattformen
EP2182418A2 (de) Verfahren und Vorrichtung zum Zugreifen auf ein Funktionsmodul eines Automatiersierungssystems
DE10031670A1 (de) Automatisch heruntergeladener verbindungsaktiver Plan
WO2016092003A1 (de) Verfahren zum update von firmware von geräten
EP0807883A2 (de) Kommunikationssystem mit Mitteln zum Austausch von Softwareprozessen
EP4049129B1 (de) Verfahren zum verknüpfen von objekten eines steuerprogramms einer steuereinheit eines automatisierungssystems und entwicklungsumgebung
WO2018087314A1 (de) Ablaufsteuerung von programmmodulen
WO2019068391A1 (de) Cloud–zentralmodul für eine speicherprogrammierbare steuerung
DE112010005509T5 (de) Robotersystemsteuerverfahren und eine Vorrichtung davon
EP2662738A1 (de) Verfahren und Applikation zur Konfigurierung einer Komponente einer industriellen Automatisierungsanordnung mittels eines mobilen Geräts
EP3200034B1 (de) Zugriff auf daten oder funktionen einer speicherprogrammierbaren steuerung mittels eines webdienstes
EP1828886A1 (de) Verfahren zum initialisieren eines elektronischen systems umfassend mehrere plug-ins
LU503173B1 (de) Orchestrierungssystem zum Aktualisieren von Containern mit darin enthaltenen Applikationen sowie hierauf basiertes Orchestrierungsverfahren
WO2023117593A1 (de) Software-update reihenfolge mittels link layer discovery protocol (lldp)
EP2090948B1 (de) Verfahren zum Betrieb eines Automatisierungssystems
EP2456124A1 (de) Geberschnittstellenengineering
DE102022132909A1 (de) Orchestrierungssystem zum Aktualisieren von Containern mit darin enthaltenen Applikationen sowie hierauf basiertes Orchestrierungsverfahren
EP4289123A1 (de) Verfahren und vorrichtung zur konfiguration einer applikation
DE102004007231A1 (de) Verfahren zum Konfigurieren einer Automatisierungskomponente eines Automatisierungssystems und entsprechendes Automatisierungssystem
WO2021001376A1 (de) Laufzeitserver zum gleichzeitigen ausführen mehrerer laufzeitsysteme einer automatisierungsanlage
EP4390581A1 (de) Verfahren und engineeringsystem zur projektierung und programmierung einer industriellen automatisierungsanordnung mit einer anzahl automatisierungskomponenten
EP1536328B1 (de) Datenverarbeitungssystem mit automatisierbarer Verwaltung und Verfahren zur automatisierten Verwaltung eines Datenverarbeitungssystems
WO2022238482A1 (de) Verwaltung von laufzeitcontainern für ein industrielles automatisierungssystem
WO2016092006A1 (de) Firmware-management-system sowie firmware-management-verfahren zum update von firmware von geräten

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20250701

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)