General Network Requirements
Be aware of the general connectivity requirements for connections into the Delphix Engine by your Delphix Administrators. A complete list of these requirements can be found on the page General Network and Connectivity Requirements.
This is the set of processes and services which enable the Delphix Engine to capture changes on the source SQL Server database and transform them into snapshots that are represented in the Delphix dSource.
Backups of the source database are written to a shared backup location. This shared folder can be owned by any user as long as SQL Server can write backups to it on the source, and the delphix_trgt Windows domain account can read it from the Staging Target host.
When a new database backup is written to the shared folder, then the Delphix Engine runs sqlcmd locally on the staging host. Backups are restored by a database in recovery mode within the SQL Server instance on the staging target host. The data files of this database copy in recovery mode are remote-mounted via iSCSI to files based on the DVE. The changes that result from restoring each backup to this database builds a new snapshot within the Delphix dSource.
As shown below by the Source or Staging Sub-system diagram, either (or both) the staging target host or the source database host employ the Server Message Block (SMB) service (port 445) for remote mounting of the shared folder. The staging target host employs the iSCSI service (port 3260) to remote-mount database files located on the Delphix Engine. The Delphix Engine communicates to the Delphix Connector service (default port 9100) and communicates to the SQL Server instance within the source database host using JDBC (default port 1433). Additionally, because the Staging Target Host is also acting as the Connector Host here, JDBC (port 1433) must be opened between the Staging Target Host and Source Database host for source database discovery. For a full list of port requirements, please view Network Access Requirements for SQL Server.
Source/Staging Sub-system, with the Staging Target Host also acting as a Connector (Proxy) Host
As a final note, the open-source iPerf3 package is embedded within both the Delphix Engine and the Delphix Connector software toolkit installed on any target host (including staging targets). iPerf3 is used for network throughput measurement between the Delphix Engine and the staging target host, if port 50001 is open in both directions between those nodes. If port 50001 is blocked or unavailable, another port can be selected for the test.
Recommended network latency between the Delphix Engine and the staging target host is less than 1 millisecond, which is a common recommendation for network-attached storage (NAS). This is due to the fact that any I/O that the SQL Server instance initiates becomes network traffic to the Delphix Engine, so low network latency is important for optimal database performance.
However, network latency to the source database host is not always quite as urgent. Queries are run via JDBC on the source database host, and backup files are accessed by the staging host using SMB. Network latencies between the source database host and staging target host are dependent upon your needs, but should not exceed 50ms. Lower latency means faster provisioning of Virtual Databases from source data. Work with your Delphix Administrator to determine how large the data source backups will be, and the required latency to meet provisioning SLAs.
Virtual Database (VDB) Sub-system
This is the architecture, consisting of a Delphix Engine and one or more target hosts, that allows Delphix to provision, refresh, and restore virtual databases (VDBs) from a dSource or other VDBs.
As shown in the VDB Sub-system diagram below, the VDB target host employs the iSCSI service (port 3260) to remote-mount database files located on the Delphix Engine. The Delphix Engine communicates to the Delphix Connector Service (default port 9100) installed on the VDB target host.
Recommended network latency between the Delphix Engine and the VDB target host is less than 1 millisecond, which is a common recommendation for network-attached storage (NAS). This is due to the fact that any I/O that the SQL Server instance initiates becomes network traffic to the Delphix Engine, so low network latency is important for optimal database performance.
This section is only required is Delphix Masking is in use. As depicted in the Masking Sub-system diagram below, this is the set of processes and services which enable the Delphix Masking Engine to mask and anonymize VDBs or physical databases. To accomplish this, the Admin user needs the ability to connect to the DME using both SSH (port 22) and HTTP (port 8282). The DME communicates with the target database on the SQL Server instance using JDBC (default port 1433).
Network latency requirements between the Delphix Masking Engine and Target Host are dependent on the volume of data to be masked, and the required speed to complete masking. Work with your Masking Administrator and Delphix Administrator to determine the appropriate latency for this connection.
Firewalls and Intrusion Detection Systems
Production databases on source environments (for dSources) are often separated from the non-production environment by firewalls. Firewalls can add milliseconds to the latency between servers. Accordingly, for best performance, there should be no firewalls between the Delphix Engine and the virtual database (VDB) target environments. If there is a firewall between the Delphix Engine and a source environment, you must configure the firewall to permit network connections between the Delphix Engine and the source environments for the application protocols (ports) listed above.
You should also make intrusion detection systems (IDSs) permissive to the Delphix Engine deployment. Make IDSs aware of the anticipated high volumes of data being read from your shared backup location by the Staging Target host.