Skip to main content

UDMG Server Installation

This guide explains how to install the Universal Data Mover Gateway Server (UDMG Server) 3.1 on RHEL-based systems using the provided .rpm package.

Prerequisites

  • Root access.
  • A supported database (Oracle, MySQL, Microsoft SQL Server, or PostgreSQL).
info

Before proceeding, ensure that your database version and OS are supported, and that you meet the hardware recommendations. See System Requirements for details.

Installation

The installation package for UDMG Server is provided with a standard RPM installation package to perform the following:

  • Creation of a dedicated system user udmg and group udmg
  • Deployment of the application files under /opt/udmg/
  • Configuration of a system service called udmg-server
info

In Steps 2 and 3, replace {VERSION} with the version of UDMG you are installing (e.g., 3.1).

1. Get the .rpm package

To obtain the installation package, contact your Stonebranch representative. If you do not have a representative, reach out to support@stonebranch.com.

2. Verify the checksum

sha256sum -c udmg-server_{VERSION}_checksums.txt

3. Install the package

rpm -ivh udmg-server_{VERSION}_linux_amd64.rpm

4. Check the installation

After installation, the binaries and configuration files will be located under /opt/udmg. The installer also creates the dedicated system user and group udmg. You can verify their existence by running:

Command:

getent passwd udmg

Expected output:

udmg:x:996:993:UDMG Server user:/home/udmg:/bin/bash

Command:

getent group udmg

Expected output:

udmg:x:993:

Command:

sudo -u udmg /opt/udmg/bin/udmg-server --version

Expected output:

udmg-server version 3.0.0-b2168:2d0192f4:HEAD:2025-05-30T20:49:20+00:00

Configuration

After installing the package, the next step is to configure the UDMG Server.

A sample Configuration File is provided with default parameters. It must be carefully edited with the connection details for your chosen database instance. Before proceeding, review the available configuration options in the Configuration File documentation. This reference describes all supported fields in the HCL configuration file format.

info

In this example, UDMG is configured to use a MySQL database.

1. Open the Configuration File

Edit the /opt/udmg/etc/udmg-server.hcl file by opening it in a text editor. For example:

vi /opt/udmg/etc/udmg-server.hcl

2. Edit the Configuration File

Set the following arguments in the UDMG Server Configuration File:

/opt/udmg/etc/udmg-server.hcl
api {
# List of Admin UI hosts (as appearing in the HTTP Origin request header) that the UDMG Server accepts as trusted sources
trustedDomains = [
"udmg.my-company.com",
"udmg-staging.my-company.com:9180"
]
}
database {

# Possible Options: oracle, mysql, sqlserver, postgresql
engine = "mysql"
instance = "udmg"
hostname = "localhost"
port = 3306
user = "udmg"
password = "udmg-mysql-password"

# Database connection options
options {
maxConnections = 100
idleConnections = 10
}

# Enable SSL/TLS Connections
secure {
enable = false
mode = "require"
pubKey = "path/to/pub/cert.pub"
privKey = "path/to/priv/cert.key"
}
}
info

For detailed information about each argument and its specifications, see Configuration File.

Service Start

Once the configuration is complete, you need to:

1. Enable and start the UDMG Server

sudo systemctl enable udmg-server
sudo systemctl start udmg-server

2. Verify that the service started correctly

Command:

sudo tail -f /var/opt/udmg/logs/udmg-server-default.log
info

If udmg-server-default.log does not exist, check the configured log directory for the most recent log file. The file name and location may vary depending on your instance Configuration File (udmg-server.hcl).

Expected output:

[INFO] UDMG Server starting - version 3.0.0
[INFO] database migrations completed successfully
[INFO] Generated new master encryption key
[INFO] server started and listening on ports 7070, 8080, 4222, 6222

3. Verify listening ports

Command:

sudo ss -ntalp | grep udmg

Expected output:

LISTEN 0      4096               *:7070             *:*    users:(("udmg-server",pid=3772,fd=8))
LISTEN 0 4096 *:8080 *:* users:(("udmg-server",pid=3772,fd=9))
LISTEN 0 4096 *:4222 *:* users:(("udmg-server",pid=3772,fd=10))
LISTEN 0 4096 *:6222 *:* users:(("udmg-server",pid=3772,fd=11))

4. Test the API port

Command:

curl http://localhost:8080/api/status -I

Expected output:

HTTP/1.1 200 OK
Server: UDMG/3.0.0
Date: Sun, 04 May 2025 15:18:38 GMT

Default Port Numbers and Usage

Port NumberDescription
8080UDMG Server API Port
7070UDMG Server Observability API Port
4222UDMG Server Cluster Client Port
6222UDMG Server Cluster Server Port