Skip to content

Deploy across multiple PCs: from local operation to remote reads

Scroll horizontally to view the full table

Deployment tutorial

Deployment tutorial: Deploy across multiple PCs: from local operation to remote reads

Use two independent Sites to configure local acquisition, connection, Device scope and a first remote read. Browser terminals need no separate Site.

1. Decide each machine’s role

Scroll horizontally to view the full table

DeploymentConfigurationRuntime relationship
Multiple terminals viewing one SiteInstall the complete runtime on a server; other computers, tablets and phones access it through a browser.They use the same Site’s runtime content and account permissions.
Independent Sites collaboratingInstall each server independently, then connect sources and choose capabilities and Device scopes at the consumer.Each Site retains its own identity, configuration and data.
Dedicated IO nodeUse dedicated-node with prepared same-machine data services on loopback addresses and a prepared database schema.It provides only IO; the released installer does not support another PC’s database.
Acquisition standby takeoverCross-PC standby requires a verified plan matching the delivered version.Joining a remote Site or selecting its IO capability does not create collection standby.

2. Example: A reads pressure from B

A reads a pressure value collected by B; both Sites run independently. A and B are example names. Use project addresses and Tags.

Scroll horizontally to view the full table

ItemSite ASite B
RoleUse B’s pressure value while also running its own Devices if needed.Maintain the target Device and Tag and provide collected values.
Installation and dataIndependent identity, persistent data and runtime services.Independent identity, persistent data and runtime services.
Connection directionJoin B and select B’s IO on A.No reverse join to A is needed for this read.
PLC connectionRead by source reference without creating an acquisition copy of B’s Device.Maintained by B’s active IO Owner.

Expected result Configure B’s acquisition, A’s IO scope and script execution separately.

3. Install each server

  1. Follow the Windows, Linux or Linux container installation guide. Use compatible versions and packages for each server’s architecture.
  2. Complete database, Redis, runtime service, initial account and license configuration separately, preserving each installation’s data and Node identity.
  3. Use an independent installation identity for an independent Site. Cloning another server’s entire database and Node private key also clones its identity.
  4. Record each published HTTPS address and check runtime services and infrastructure on its System Status page.

Expected result Confirm both servers support independent login and operation before connecting them.

4. Prepare access paths

  1. Ensure A’s server can reach B’s Portal HTTPS root address. Verify B → A as well if both directions are needed. Use the actual listening ports.
  2. On browser terminals, verify Portal access and the Screen addresses, ports and HTTPS trust required by the installation.
  3. Ordinary LAN mode uses discovery or Add by Address directly. Explicit project-certificate installations need their project connection configuration first.
  4. For containers, check published addresses, port mappings and persistent directories. Do not give another server an address reachable only inside the container network.

Expected result Both browser access paths and the server-to-server connection path are reachable.

5. Prepare a valid collected value on B

  1. Sign in to B. Configure the PLC and pressure Tag in Devices and Tag Management using the actual protocol, address, data type and collection settings.
  2. Save the Device and Tag. Normal saves automatically enter the configuration-application workflow; there is no separate publishing page.
  3. Check PLC Connection and Current Collection on the Device page, then inspect the value, quality and update time in Tag Test.
  4. For the first read, choose a read-only process value that is already being collected continuously. Record its Device and Tag names.

Expected result Confirm B has a current value with good quality; a successful save does not prove PLC connectivity.

6. Configure remote reads on A

  1. Sign in to A and join B through discovery or B’s Portal HTTPS address on the Sites page.
  2. Open Local Capabilities, add B’s execution node under IO and check that it is selected and available.
  3. Select Browse Devices, choose the target PLC for this Site, preview the change and confirm the saved scope.
  4. In Tag Management → Site Tags, follow the remote-data tutorial below to obtain the Tag’s Source Reference. If you already have its complete TagRef, use it directly.
  5. Save the tutorial’s read-only Python script on A, then select the same remote Tag as a Point Change event source and bind the script. Enable and save the event as described in the tutorial, wait for a valid new change, and inspect the execution record.

Expected result The runtime action executes on A and reads B within the event’s authorized scope. Code-page Run Test resolves local Tags only and cannot validate this cross-Site read path.

7. Add Sites or reverse the direction

Scroll horizontally to view the full table

New useWhere and how to configure it
C only views existing runtime screensOpen the existing Portal in C’s browser with the appropriate account; no new Site is required.
C connects its own DevicesInstall C independently and verify local acquisition, then join C from the Sites that need it.
A reads both B and CSelect each source’s IO and PLC scope on A, retaining the full source identity in every reference.
B also reads AJoin A on B, select A’s IO and PLC scope, then configure the individual consumer.

8. Dedicated nodes and cross-PC standby limits

Windows/Linux dedicated-node requires a prepared schema and same-machine PostgreSQL/Redis managed outside the installer. It does not support remote data services or standby deployment through a database shared by multiple PCs.

  • Collection ownership is coordinated per PLC definition within one Runtime Unit. Independent Sites do not automatically exclude each other when configured for the same physical PLC; collect at the source and share its values.
  • Same-domain takeover requires valid leases, configuration and eligible candidates. These runtime mechanisms do not mean the released installer provides cross-PC standby.
  • Joining Sites with separate databases does not create whole-server primary/standby operation or automatic browser-entry failover.

9. Check the deployment result

Scroll horizontally to view the full table

CheckCompletion
Local acquisition on BThe Tag has a current valid value; connection, collection and Tag quality can be checked separately.
Source selection on AB’s IO is selected and available, and the target PLC scope is saved and effective.
Business read on AThe source reference identifies B, and the Python result can be compared with B’s value and quality.
Interruption and recoveryCheck interruption behavior in a planned validation environment. After recovery, wait for valid new values and verify the consumers.
Runtime dependenciesRecord which functions depend on remote sources, along with identities, addresses, versions and Device scopes.

Expected result B acquires the target PLC, and A uses its data within the selected scope. Both Sites continue to manage their own configuration and runtime services.

Click the image again or press Esc to close