MLchartDataset catalogue

Patent · US11474873B2 · B2 · US

Implementing serverless functions using container orchestration systems and operational technology devices

(11) Publication number
US11474873B2
(21) Application number
17/028,726
(22) Filing date
2020-09-22
(30) Priority date
2020-09-22
(43) Publication date
2022-10-18
(45) Date of grant
2022-10-18
(51) IPC
G06F 9/48; G06F 9/50; G06F 9/54
(52) CPC
  • G06F Electric digital data processing: 9/5077, 2009/45562, 2009/4557, 2009/45575, 8/63, 8/71, 9/45558, 9/4856, 9/5027, 9/5038, 9/5072, 9/542
  • G05B Control or regulating systems in general; functional elements of such systems; monitoring or testing arrangements for such systems or elements: 19/0421, 19/4183, 19/41835
  • Y02P Climate change mitigation technologies in the production or processing of goods: 90/02
(73) Assignee
Rockwell Automation Technologies Inc
(72) Inventors
Tim Biernat; Nathaniel S. Sandler; James J. Kay; David A. Johnston; Karl Staas
(54) Title
Implementing serverless functions using container orchestration systems and operational technology devices
(57) Abstract

A method may include receiving, via a first computing node of a cluster of computing nodes in a container orchestration system, a pod from a second computing node in the cluster of computing nodes. The method may also include retrieving an image file comprising one or more containers from a registry, such that the pod may include an indication of a location of the image file in the registry. The one or more containers may include one or more pre-analytic operations for a control system of a plurality of control systems to perform. The method may then involve generating a package based on the one or more containers and storing the package in a filesystem shared with the control system.

Full text
View on Google Patents

Claims (20)

  1. A system, comprising: a plurality of control systems for controlling a plurality of operations of a plurality of operational technology (OT) devices; a first computing node of a cluster of computing nodes that are part of a container orchestration system, wherein the first computing node comprises a first processor and is configured to: receive an event-based notification from a second computing node of the cluster of computing nodes, wherein the second computing node comprises a second processor and is associated with a first control system of the plurality of control systems and a first OT device of the plurality of OT devices; determine one or more analytic operations to be performed based on the event- based notification; determine one or more pre-analytic operations to be performed by one or more of the plurality of control systems based on the one or more analytic operations; retrieve a plurality of machine state datasets from the plurality of control systems via a portion of the cluster of computing nodes, wherein each of the plurality of machine state datasets correspond to an operational state associated with each of the plurality of control systems, each of the plurality of OT devices, or both; identify a second control system as a suitable host to perform the one or more pre-analytic operations based on the plurality of machine state datasets; and transmit a pod to a third computing node associated with the second control system, wherein the pod is configured to cause the third computing node to perform the one or more pre-analytic operations, and wherein the third computing node comprises a third processor.
  2. The system of claim 1, wherein the first computing node is configured to coordinate an automatic process for managing or scheduling deployment of one or more containers of a plurality of containers for execution across the plurality of control systems via the cluster of computing nodes.
  3. The system of claim 2, wherein each of the plurality of containers comprises one or more applications and one or more runtime dependencies associated with each of the one or more containers.
  4. The system of claim 1, wherein the event-based notification is generated by an application programming interface (API) of the first control system, wherein the API is configured to monitor one or more events associated with the first OT device.
  5. The system of claim 1, wherein the first computing node is configured to identify the second control system as the suitable host based on the plurality of machine state datasets as compared to a plurality of desired machine states.
  6. The system of claim 1, wherein the one or more pre-analytic operations are used by the first computing node to perform the one or more analytic operations.
  7. The system of claim 1, wherein the first computing node is configured to: receive one or more datasets associated with the one or more pre-analytic operations from the second control system via the third computing node.
  8. The system of claim 7, wherein the third computing node is configured to transmit the one or more datasets via an operational technology (OT) communication protocol.
  9. The system of claim 1, wherein the second computing node is configured to translate the event-based notification into a format that is interpretable by the first processor-based node.
  10. The system of claim 1, wherein, the pod comprises: an indication of a location of an image file in a registry; and executable instructions configured to cause the third computing node to retrieve the image file from the registry.
  11. A method, comprising: receiving, via a first computing node of a cluster of computing nodes in a container orchestration system, a pod from a second computing node in the cluster of computing nodes; retrieving, via the first computing node, an image file comprising one or more containers from a registry, wherein the pod comprises an indication of a location of the image file in the registry, wherein the one or more containers comprise one or more pre-analytic operations for a control system of a plurality of control systems to perform, and wherein the one or more pre-analytic operations are part of one or more analytic operations to be performed by the second computing node; generating, via the first computing node, a package based on the one or more containers; and storing, via the first computing node, the package in a filesystem shared with the control system.
  12. The method of claim 11, comprising sending, via the first computing node, the package directly to the control system.
  13. The method of claim 12, comprising sending the package directly to the control system via an operational technology (OT) communication protocol.
  14. The method of claim 11, wherein the pod is received via an information technology (IT) communication protocol.
  15. The method of claim 11, comprising: receiving, via the first computing node, one or more datasets associated with the pre-analytic operations from the control system via an OT communication protocol; and sending, via the first computing node, the one or more datasets to the second computing node via an IT communication protocol.
  16. A non-transitory computer-readable medium comprising computer-executable instructions that, when executed, are configured to cause a processor to perform operations comprising: receiving an event-based notification from a first computing node of a cluster of computing nodes that are part of a container orchestration system, wherein the first computing node is associated with a first control system of a plurality of control systems and a first OT device of a plurality of operational technology (OT) devices operating in an industrial system; determining a first set of operations to be performed based on the event-based notification; determining a second set of operations to be performed by one or more of the plurality of control systems based on the first set of operations; retrieving a plurality of machine state datasets from the plurality of control systems via a portion of the cluster of computing nodes, wherein each of the plurality of machine state datasets correspond to an operational state associated with each of the plurality of control systems, each of the plurality of OT devices, or both; identifying a second control system as a suitable host to perform the second set of operations based on the plurality of machine state datasets; and transmitting a pod to a second computing node associated with the second control system, wherein the pod is configured to cause the second computing node to perform the second set of operations.
  17. The non-transitory computer-readable medium of claim 16, wherein each of the plurality of machine state datasets correspond to an amount of computing resources available on a respective control system of the plurality of control systems.
  18. The non-transitory computer-readable medium of claim 17, wherein the first control system is configured to control an operational technology (OT) device, wherein the OT device comprises motor control centers, motors, human machine interfaces (HMIs), operator interfaces, contactors, starters, sensors, drives, relays, protection devices, switchgear, compressors, network switches, or any combination thereof that operate in an OT domain.
  19. The non-transitory computer-readable medium of claim 16, wherein the first control system and the second control system are the same.
  20. The non-transitory computer-readable medium of claim 16, wherein the event-based notification is generated by an application programming interface (API) of the first control system, wherein the API is configured to monitor one or more events associated with the first OT device.

Description

This disclosure relates generally to systems and methods for implementing a container orchestration system in an operational technology (OT) or an industrial platform. More particularly, embodiments of the present disclosure are related to systems and methods for leveraging container orchestration systems to coordinate operations of OT devices.

Industrial automation systems are managed and operated using automation control and monitoring systems (e.g., industrial control system), particularly in industrial automation environments. Such applications may include controlling a wide range of components, such as valves, electric motors, and so forth, and the collection of data via sensors. Typical industrial control systems may include one or more components, such as programming terminals, automation controllers, input/output (I/O) modules, communication networks, human-machine interface (HMI) terminals, and the like.

Generally, industrial control systems operate in the OT environment are used to control industrial devices accessible via an OT network. Although the industrial control systems may be used to manage the operations of the devices within the OT network, improved systems and methods for operating devices within the OT network are desirable. For example, certain technologies available in the information technology (IT) environment may provide certain industrial control system users additional management tools that they employ for operating their IT assets.

Citations (8)

  • US20180024537A1
  • US20200311617A1
  • US20190377604A1
  • KR20200027783A
  • US20200278892A1
  • WO2020184362A1
  • US20200136906A1
  • US20220027217A1
Record as JSON
{
  "publication_number": "US11474873B2",
  "country": "US",
  "kind": "B2",
  "title": "Implementing serverless functions using container orchestration systems and operational technology devices",
  "abstract": "A method may include receiving, via a first computing node of a cluster of computing nodes in a container orchestration system, a pod from a second computing node in the cluster of computing nodes. The method may also include retrieving an image file comprising one or more containers from a registry, such that the pod may include an indication of a location of the image file in the registry. The one or more containers may include one or more pre-analytic operations for a control system of a plurality of control systems to perform. The method may then involve generating a package based on the one or more containers and storing the package in a filesystem shared with the control system.",
  "claims": [
    "1. A system, comprising: a plurality of control systems for controlling a plurality of operations of a plurality of operational technology (OT) devices; a first computing node of a cluster of computing nodes that are part of a container orchestration system, wherein the first computing node comprises a first processor and is configured to: receive an event-based notification from a second computing node of the cluster of computing nodes, wherein the second computing node comprises a second processor and is associated with a first control system of the plurality of control systems and a first OT device of the plurality of OT devices; determine one or more analytic operations to be performed based on the event- based notification; determine one or more pre-analytic operations to be performed by one or more of the plurality of control systems based on the one or more analytic operations; retrieve a plurality of machine state datasets from the plurality of control systems via a portion of the cluster of computing nodes, wherein each of the plurality of machine state datasets correspond to an operational state associated with each of the plurality of control systems, each of the plurality of OT devices, or both; identify a second control system as a suitable host to perform the one or more pre-analytic operations based on the plurality of machine state datasets; and transmit a pod to a third computing node associated with the second control system, wherein the pod is configured to cause the third computing node to perform the one or more pre-analytic operations, and wherein the third computing node comprises a third processor.",
    "2. The system of claim 1, wherein the first computing node is configured to coordinate an automatic process for managing or scheduling deployment of one or more containers of a plurality of containers for execution across the plurality of control systems via the cluster of computing nodes.",
    "3. The system of claim 2, wherein each of the plurality of containers comprises one or more applications and one or more runtime dependencies associated with each of the one or more containers.",
    "4. The system of claim 1, wherein the event-based notification is generated by an application programming interface (API) of the first control system, wherein the API is configured to monitor one or more events associated with the first OT device.",
    "5. The system of claim 1, wherein the first computing node is configured to identify the second control system as the suitable host based on the plurality of machine state datasets as compared to a plurality of desired machine states.",
    "6. The system of claim 1, wherein the one or more pre-analytic operations are used by the first computing node to perform the one or more analytic operations.",
    "7. The system of claim 1, wherein the first computing node is configured to: receive one or more datasets associated with the one or more pre-analytic operations from the second control system via the third computing node.",
    "8. The system of claim 7, wherein the third computing node is configured to transmit the one or more datasets via an operational technology (OT) communication protocol.",
    "9. The system of claim 1, wherein the second computing node is configured to translate the event-based notification into a format that is interpretable by the first processor-based node.",
    "10. The system of claim 1, wherein, the pod comprises: an indication of a location of an image file in a registry; and executable instructions configured to cause the third computing node to retrieve the image file from the registry.",
    "11. A method, comprising: receiving, via a first computing node of a cluster of computing nodes in a container orchestration system, a pod from a second computing node in the cluster of computing nodes; retrieving, via the first computing node, an image file comprising one or more containers from a registry, wherein the pod comprises an indication of a location of the image file in the registry, wherein the one or more containers comprise one or more pre-analytic operations for a control system of a plurality of control systems to perform, and wherein the one or more pre-analytic operations are part of one or more analytic operations to be performed by the second computing node; generating, via the first computing node, a package based on the one or more containers; and storing, via the first computing node, the package in a filesystem shared with the control system.",
    "12. The method of claim 11, comprising sending, via the first computing node, the package directly to the control system.",
    "13. The method of claim 12, comprising sending the package directly to the control system via an operational technology (OT) communication protocol.",
    "14. The method of claim 11, wherein the pod is received via an information technology (IT) communication protocol.",
    "15. The method of claim 11, comprising: receiving, via the first computing node, one or more datasets associated with the pre-analytic operations from the control system via an OT communication protocol; and sending, via the first computing node, the one or more datasets to the second computing node via an IT communication protocol.",
    "16. A non-transitory computer-readable medium comprising computer-executable instructions that, when executed, are configured to cause a processor to perform operations comprising: receiving an event-based notification from a first computing node of a cluster of computing nodes that are part of a container orchestration system, wherein the first computing node is associated with a first control system of a plurality of control systems and a first OT device of a plurality of operational technology (OT) devices operating in an industrial system; determining a first set of operations to be performed based on the event-based notification; determining a second set of operations to be performed by one or more of the plurality of control systems based on the first set of operations; retrieving a plurality of machine state datasets from the plurality of control systems via a portion of the cluster of computing nodes, wherein each of the plurality of machine state datasets correspond to an operational state associated with each of the plurality of control systems, each of the plurality of OT devices, or both; identifying a second control system as a suitable host to perform the second set of operations based on the plurality of machine state datasets; and transmitting a pod to a second computing node associated with the second control system, wherein the pod is configured to cause the second computing node to perform the second set of operations.",
    "17. The non-transitory computer-readable medium of claim 16, wherein each of the plurality of machine state datasets correspond to an amount of computing resources available on a respective control system of the plurality of control systems.",
    "18. The non-transitory computer-readable medium of claim 17, wherein the first control system is configured to control an operational technology (OT) device, wherein the OT device comprises motor control centers, motors, human machine interfaces (HMIs), operator interfaces, contactors, starters, sensors, drives, relays, protection devices, switchgear, compressors, network switches, or any combination thereof that operate in an OT domain.",
    "19. The non-transitory computer-readable medium of claim 16, wherein the first control system and the second control system are the same.",
    "20. The non-transitory computer-readable medium of claim 16, wherein the event-based notification is generated by an application programming interface (API) of the first control system, wherein the API is configured to monitor one or more events associated with the first OT device."
  ],
  "description_excerpt": "This disclosure relates generally to systems and methods for implementing a container orchestration system in an operational technology (OT) or an industrial platform. More particularly, embodiments of the present disclosure are related to systems and methods for leveraging container orchestration systems to coordinate operations of OT devices.\n\nIndustrial automation systems are managed and operated using automation control and monitoring systems (e.g., industrial control system), particularly in industrial automation environments. Such applications may include controlling a wide range of components, such as valves, electric motors, and so forth, and the collection of data via sensors. Typical industrial control systems may include one or more components, such as programming terminals, automation controllers, input/output (I/O) modules, communication networks, human-machine interface (HMI) terminals, and the like.\n\nGenerally, industrial control systems operate in the OT environment are used to control industrial devices accessible via an OT network. Although the industrial control systems may be used to manage the operations of the devices within the OT network, improved systems and methods for operating devices within the OT network are desirable. For example, certain technologies available in the information technology (IT) environment may provide certain industrial control system users additional management tools that they employ for operating their IT assets.",
  "cpc": [
    "G06F 9/5077",
    "G05B 19/0421",
    "G05B 19/4183",
    "G05B 19/41835",
    "G06F 2009/45562",
    "G06F 2009/4557",
    "G06F 2009/45575",
    "G06F 8/63",
    "G06F 8/71",
    "G06F 9/45558",
    "G06F 9/4856",
    "G06F 9/5027",
    "G06F 9/5038",
    "G06F 9/5072",
    "G06F 9/542",
    "Y02P 90/02"
  ],
  "ipc": [
    "G06F 9/48",
    "G06F 9/50",
    "G06F 9/54"
  ],
  "assignees": [
    "Rockwell Automation Technologies Inc"
  ],
  "inventors": [
    "Tim Biernat",
    "Nathaniel S. Sandler",
    "James J. Kay",
    "David A. Johnston",
    "Karl Staas"
  ],
  "filing_date": "2020-09-22",
  "publication_date": "2022-10-18",
  "grant_date": "2022-10-18",
  "priority_date": "2020-09-22",
  "application_number": "US-202017028726-A",
  "family_id": "76807492",
  "cited_by_count": 26,
  "citations": [
    "US20180024537A1",
    "US20200311617A1",
    "US20190377604A1",
    "KR20200027783A",
    "US20200278892A1",
    "WO2020184362A1",
    "US20200136906A1",
    "US20220027217A1"
  ]
}

Record 994 of 8,000 in Patents full text (MLC-0201). Request the full dataset.