The EDB Postgres AI agent (beacon-agent) and the DMS agent (cdcagent) can run on the Oracle database server itself or on a separate auxiliary machine or bastion host. In most production environments, running the agents on a dedicated auxiliary machine is preferred — it avoids installing additional software on the database server, and a single agent instance can connect to databases on multiple servers.
Required software
Ensure you install the following software on your auxiliary machine before running the agents:
Note
If your auxiliary machine is air-gapped and can't reach the EDB repositories directly, see Building local mirrors and Installing in an air-gapped environment before you begin.
Java 17 or higher — required by the DMS agent (
cdcagent). Verify withjava -version.Oracle Instant Client with SQL*Plus — required by both agents. The EDB Postgres AI agent uses SQL*Plus to extract DDL from the Oracle source. The DMS agent uses the Oracle JDBC libraries for Change Data Capture (CDC) connectivity. Download Oracle Instant Client and install both the Basic and SQL*Plus packages. Ensure you download a version compatible with your source Oracle database.
EDB Postgres AI agent (
beacon-agent) — handles database registration and schema assessment. Check the beacon-agent version compatibility matrix. Then install a compatible version of the EDB Postgres AI agent.DMS agent (
cdcagent) — handles data migration and CDC. Check the DMS agent version compatibility matrix. Then install a compatible version of the DMS agent.
Configuring the environment
Both agents must be able to locate the Oracle libraries and binaries at runtime. Set the following environment variables on your auxiliary machine, replacing </path/to/instantclient> with the actual Instant Client directory (for example, /opt/oracle/instantclient_19_19). These variables must be set in the same shell session where you run the agents. For persistent configuration, add them to your shell profile (for example, ~/.bashrc or ~/.bash_profile). If you run the agents as systemd services, set these variables in the service file instead.
export ORACLE_HOME=</path/to/instantclient> export PATH=$ORACLE_HOME:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATH
Note
For Oracle Instant Client, the SQL*Plus binary and the shared libraries (.so files) are both located directly in the Instant Client root directory — not in a bin/ or lib/ subdirectory. Set both PATH and LD_LIBRARY_PATH to the Instant Client root.
Verify the setup before proceeding.
which sqlplusThe output should show the path to the SQL*Plus binary inside the Instant Client directory with the version number. Alternatively, run:
sqlplus -VWhich shows the SQL*Plus version.
Network connectivity
Ensure network connectivity between the auxiliary machine and the source database host, and between the auxiliary machine and Hybrid Manager. You'll verify the specific ports required later, when configuring the agents.