User Tools

Site Tools


alarm_analysis:resilient_data_transfer

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
alarm_analysis:resilient_data_transfer [2018/02/08 12:36] – [1. PIN: Data Core Node] sualarm_analysis:resilient_data_transfer [2023/12/29 13:41] (current) su
Line 3: Line 3:
 ===== Overview ===== ===== Overview =====
  
-Intelligent Plant produces highly configurable tools for capturing and analyzing data.+Before reading this guide, you should be familiar with [[alarm_analysis:alarm_analysis_network_architectures|Alarm Analysis Network Architecture]] document. This illustrates possible network installations including scenarios where Alarms & Events are collected from a militarized zone and transferred to another network for processing.
  
-We provide solutions that can be deployed in high-security/militarized network zones and reliably move data across networkswithout compromising security.+In these scenarios, it is necessary to configure Data Core installations to act as a data relay. Moreoverif the connectivity between relays is unreliable, further configuration is required to guarantee resilient data transfer.
  
-This document describes best practice for particular use-case: +This guide focuses on such scenario
  
-//How to collect Alarm & Event data from a Process Control Network and make available to Alarm Analysis on the Industrial App Store. +Data is gathered from serial feed and relayed via Data Core Node from the Process Information Network to an App Store Connect on the Business Network. The relay is configured for Resilient Data Transfer.
-//+
  
-===== Terminology =====+{{ :alarm_analysis:alarmanalysisresilientdatatransfer.png |}}
  
-| Alarm Analysis | Intelligent Plant application that processes Alarm & Event data to produce interactive EEMUA (Engineering Equipment and Materials Users Association) grade reports and analysis. | +A two box installation is required, with the following Data Core configuration:
-Data Core Node | Intelligent Plant's data-routing and data-access software. Operates as a Windows service. | +
-| Industrial App Store | Cloud portal for industrial apps (including online editions of Intelligent Plant applications). | +
-| App Store Connect | An instance of Data Core Node pre-configured for secure connections with the Industrial App Store. | +
-| PCN | Process Control Network. | +
-| PIN | Process Information Network. | +
-| BN | Business Network. Also referred to as the Enterprise Network. | +
-| TCP | Transmission Control Protocol. A network communication protocol. |+
  
 +{{ :data_core:resilienttransfer_02.png |}}
  
-===== Network Topology =====+  * Data Core listens for events (TCP Printer Stream). Arriving events are parsed and sent... 
 +    - On an immediate data relay to App Store Connect (Fast TCP Out) 
 +    - To a local data repository (Big Data Sink)
  
-{{ :data_core:resilienttransfer_01.png |}}+  * A second process on the Data Core Node polls the local data repository for stored events (Big Data Source) and sends to... 
 +    - a further data relay that awaits an Ack from the App Store Connect (TCP Out). If Ack is not received, data is resubmitted.
  
-  - Alarm & Event data enters the PIN via a serial printer-port cable connected to a Serial to Ethernet Converter. \\ \\ +  App Store Connect listens for incoming events (TCP In) and stores to a local data repository (Big Data Sink).
-  - This physical architecture guarantees one-way data-flow. \\ \\ +
-  - The Data Core node installation on the PIN includes: +
-    - TCP Printer Port listener (listening for input from the Serial to Ethernet Converter) +
-    - Alarm & Event Collector (collecting A&E data from the PCN) +
-    - a TCP Out Channel for data transfer \\ \\ +
-  - The Data Core TCP Out Channel (on the PIN) initiates an authenticated TCP connection with App Store Connect (on the BN). Data transmitted on the TCP channel is signed and encrypted. \\ \\ Alarm & Event data is sent to App Store Connect. App Store Connect responds with an acknowledgement. If the Alarm Analysis server fails to receive positive acknowledgement, data is resubmitted. \\ \\ +
-  - App Store Connect acts as local data processor and supports connections to the Industrial App Store. \\ \\ App Store Connect incudes: +
-    - TCP Listener (listening for input from the Alarm Analysis server) +
-    - Alarm & Event Collector (collecting A&E data from the Alarm Analysis server) +
-    - Alarm Analysis Processing (converting A&E data to Alarm Analysis records) \\ \\ Alarm Analysis data remains on the Business Network. \\ \\ +
-  - App Store Connect initiates a connection to the Industrial App Store using Microsoft's SignalR technology. This supports secure 2-way communication which allows App Store apps to connect and query data on the Business Network. \\  \\ Access to data via App Store Connect is only available if explicitly shared with another App Store User (see step 7). \\ \\ For more information, refer to the App Store Wiki: Connection Security. +
-  - The Industrial App Store: a cloud portal of industrial applications that can connect to business data sources through App Store Connect. \\ \\ +
-  - Users inside and outside the Business Network (e.g. office and home workers) access Alarm Analysis via the Internet. They log-in to the Industrial App Store and select the Alarm Analysis app. \\ NB. App Store users must be granted access to the Alarm Analysis data source (configured on the Business Network App Store Connection). \\ For instructions on sharing data, refer to the App Store Wiki: Share Data with other App Store Users\\ \\+
  
-===== Deployment and Configuration Guide =====+While connectivity between the PIN and BN is good, all events will reach the destination twice. The fast stream means data arrives quickly, the second stream guarantees resilience. App Store Connect consolidates the two streams  to avoid duplication.
  
-The network topology above assumes data crosses into the PIN via a serial printer feed. 
  
-In order to collect data on the printer stream and transfer to the BN we need to undertake the following: 
  
-  - Install a Data Core node on the PCN +====== Step by Step Install and Configuration ======
-  - Install App Store Connect on the PIN+
  
-The configuration of these //Nodes// is as follows:+**1. Install Data Core Node on PIN**
  
-{{ :data_core:resilienttransfer_02.png |}}+For detailed instructions on how to deploy a Data Core node, see[[data_core:stand-alone_installation]].
  
 +**2. Data Core Node Configuration**
  
-==== 1. PIN: Data Core Node ====+Configure the following Data Core components (assume default settings unless otherwise stated).
  
-For detailed instructions on how to deploy Data Core node, see: [[data_core:stand-alone_installation]] +For detailed instructions on how to create an Event Source to Sink subscription, see: [[data_core:Event Subscription]]
- +
-For detailed instructions on how to create and Event Source to Sink subscription, see: [[data_core:Event Subscription]] +
- +
-Configure the following Data Core components (assume default settings unless otherwise stated):+
  
 ^ //TCP Printer Stream// ^^ ^ //TCP Printer Stream// ^^
Line 105: Line 82:
 ^ Description | Resilient data transfer to the Business Network | ^ Description | Resilient data transfer to the Business Network |
 ^ Disabled | False | ^ Disabled | False |
-^ TCP Server Host | [ IP Address of server hosting "Fast TCP In" ] |+^ TCP Server Host | [ IP Address of server hosting "TCP In" ] |
 ^ TCP Server Port| 11000 | ^ TCP Server Port| 11000 |
-^ Username | [Service account with access to server hosting "Fast TCP In" ] | +^ Username | [Service account with access to server hosting "TCP In" ] | 
-^ Password | [Service account password with access to server hosting "Fast TCP In" ]   |+^ Password | [Service account password with access to server hosting "TCP In" ]   |
 ^ Check Response | Yes | ^ Check Response | Yes |
 ^ //Subscribes to:// | Big Data Source | ^ //Subscribes to:// | Big Data Source |
  
- +**3Install App Store Connect on BN**
-==== 2BN: App Store Connect ====+
  
 For detailed instructions on how to deploy App Store Connect, see: [[data_core:how_to_connect_your_data_to_the_app_store]] For detailed instructions on how to deploy App Store Connect, see: [[data_core:how_to_connect_your_data_to_the_app_store]]
  
-Configure the following Data Core components (assume default settings unless otherwise stated):+ 
 +**4. App Store Connect Configuration** 
 + 
 +Configure the following Data Core components (assume default settings unless otherwise stated)
 + 
 +For detailed instructions on how to create an Event Source to Sink subscription, see[[data_core:Event Subscription]]
  
 ^ //TCP In// ^^ ^ //TCP In// ^^
Line 134: Line 115:
  
  
-==== 3. Firewall Requirements ====+**5. Firewall Settings**
  
-Intelligent Plant software is firewall friendly and designed to operate across firewall protected network zones.+Firewalls will need to allow passage for the following protocols on ports:
  
 ^ Firewall ^ Requirements ^ ^ Firewall ^ Requirements ^
Line 144: Line 125:
 | PCN:PIN Network Firewall | No inbound access required. | | PCN:PIN Network Firewall | No inbound access required. |
  
-==== 4. Alarm Analysis Processing ====+==== 5Testing ==== 
 + 
 +Assuming that the TCP Printer Stream configured above is listening to an active Alarm & Event stream, we should see evidence of data store to the Big Data repositories on the PIN and BN. 
 + 
 +A quick test is to execute a URL search query. 
 + 
 +1. Log on to servers hosting Data Core Node 
 + 
 +Open web browser and enter 
 +<code> http://localhost:9200/_cat/indices/tcpprinterstream.evt_*?v </code> 
 + 
 +A "doc.count" greater than zero indicates Alarm & Event data is successfully stored. 
 + 
 +<code> 
 +health status index                          pri rep docs.count docs.deleted store.size pri.store.size  
 +green  open   tcpprinterstream.evtidx_201802             10            0    211.7kb        211.7kb  
 +</code> 
 + 
 +A "doc.count" field  
 + 
 +2. Log on to servers hosting App Store Connect 
 + 
 +Open web browser and enter 
 +<code> http://localhost:9200/_cat/indices/tcpin.evt_*?v </code> 
 + 
 +You should expect to see something like: 
 + 
 +<code> 
 +health status index                          pri rep docs.count docs.deleted store.size pri.store.size  
 +green  open   tcpin.evtidx_201802              2           10           10    211.7kb        211.7kb  
 +</code> 
 + 
 +A "doc.count" greater than zero indicates Alarm & Event data is successfully stored. 
 + 
 +A "docs.deleted" greater than zero indicates events are arriving on both fast and resilient streams. The data consolidation process marks a duplicate data document for deletion. This is an active measure and clears to zero over time. 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 +==== 6. Next Steps ====
  
 So far, we've moved Alarm & Event data across a network. We are now ready to configure Alarm Analysis processing. So far, we've moved Alarm & Event data across a network. We are now ready to configure Alarm Analysis processing.
  
-[Link to AA Import Guide here...]+For more info, see [[alarm_analysis:how_to_configure_an_alarm_event_import_stream|How to configure an Alarm & Event Import Stream]].
  
  
  
alarm_analysis/resilient_data_transfer.1518093412.txt.gz · Last modified: 2018/02/08 12:36 by su