Quick-Start Installation

This guide provides simple instructions for installing SynxDB 2 on a host machine.

Note For detailed instructions on preparing host machines and deploying SynxDB in a production environment, see Installing and Upgrading SynxDB.

Security Considerations

The installation procedure follows a structured RPM-based approach, similar to EPEL, in order to secure dependency management and updates. Synx Data Labs maintains high security standards through:

  • Cryptographically signed RPM packages
  • Signed repository metadata
  • GPG key verification
  • Package signature validation at multiple stages

All artifacts used in the installation process are cryptographically signed to ensure package integrity and authenticity.

Prerequisites

To install SynxDB you require:

  • A supported EL9-compatible operating system (RHEL 9, Rocky Linux 9, Oracle Linux 9, AlmaLinux 9) or EL8-compatible operating system (RHEL 8, Rocky Linux 8, Oracle Linux 8, AlmaLinux 8), or EL8-compatible operating system (RHEL 7, CentOS 7).
  • root access to each host system. This procedure assumes that you are logged in as the root user. As an alternative, prepend sudo to each command if you choose to install as a non-root user.
  • The wget utility. If necessary install wget on each host with the command:
    dnf install wget
  • Internet access to Synx Data Labs repositories. This guide assumes that each host can access the Synx Data Labs repositories. If your environment restricts internet access, or if you prefer to host repositories within your infrastructure to ensure consistent package availability, contact Synx Data Labs to obtain a complete repository mirror for local hosting.

Procedure

Follow these steps to securely install SynxDB to your system:

  1. Login to your Enterprise Linux 8 or 9 system as the root user.

  2. Import the Synx Data Labs GPG key so you can use it to validate downloaded packages:

    wget -nv https://synxdb-repo.s3.us-west-2.amazonaws.com/gpg/RPM-GPG-KEY-SYNXDB rpm --import RPM-GPG-KEY-SYNXDB
  3. Verify that you have imported the keys:

    rpm -q gpg-pubkey --qf "%{NAME}-%{VERSION}-%{RELEASE} %{SUMMARY}\n" | grep SynxDB

    You should see output similar to:

    gpg-pubkey-df4bfefe-67975261 gpg(SynxDB Infrastructure <infrastructure@synxdata.com>)
  4. Download the SynxDB repository package:

    wget -nv https://synxdb-repo.s3.us-west-2.amazonaws.com/repo-release/synxdb2-release-1-1.rpm
  5. Verify the package signature of the repository package you just downloaded.

    rpm --checksig synxdb2-release-1-1.rpm

    Ensure that the command output shows that the signature is OK. For example:

    synxdb2-release-1-1.rpm: digests signatures OK
  6. After verifying the package signature, install the SynxDB repository package. For Enterprise Linux 9:

    dnf install -y synxdb2-release-1-1.rpm

    The repository installation shows details of the installation process similar to:

    Last metadata expiration check: 2:11:29 ago on Mon Mar 10 18:53:32 2025. Dependencies resolved. ========================================================================= Package Architecture Version Repository Size ========================================================================= Installing: synxdb-release noarch 1-1 @commandline 8.1 k Transaction Summary ========================================================================= Install 1 Package Total size: 8.1 k Installed size: 0 Downloading Packages: Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Running scriptlet: synxdb2-release-1-1.noarch 1/1 Installing : synxdb2-release-1-1.noarch 1/1 Verifying : synxdb2-release-1-1.noarch 1/1 Installed: synxdb2-release-1-1.noarch Complete!

    Note: The -y option in the dnf install command automatically confirms and proceeds with installing the software as well as dependent packages. If you prefer to confirm each dependency manually, omit the -y flag.

  7. After you have installed the repository package, install SynxDB with the command:

    dnf install -y synxdb

    The installation process installs all dependencies required for SynxDB 2 in addition to the SynxDB software.

  8. Verify the installation with:

    rpm -qi synxdb

    You should see installation details similar to:

    Name : synxdb Version : 2.27.2 Release : 1.el8 Architecture: x86_64 Install Date: Fri Mar 14 17:22:59 2025 Group : Applications/Databases Size : 1541443881 License : ASL 2.0 Signature : RSA/SHA256, Thu Mar 13 10:36:01 2025, Key ID b783878edf4bfefe Source RPM : synxdb-2.27.2-1.el8.src.rpm Build Date : Thu Mar 13 09:55:50 2025 Build Host : cdw Relocations : /usr/local/synxdb Vendor : Synx Data Labs, Inc. URL : https://synxdatalabs.com Summary : High-performance MPP database for enterprise analytics Description : SynxDB is a high-performance, enterprise-grade, massively parallel processing (MPP) database designed for advanced analytics on large-scale data sets. Derived from PostgreSQL and the last open-source version of Greenplum, SynxDB offers seamless compatibility, powerful analytical capabilities, and robust security features. Key Features: - Massively parallel processing for optimized query performance - Advanced analytics for complex data workloads - Seamless integration with ETL pipelines and BI tools - Broad compatibility with diverse data sources and formats - Enhanced security and operational reliability Disclaimer & Attribution: SynxDB is derived from the last open-source version of Greenplum, originally developed by Pivotal Software, Inc., and maintained under Broadcom Inc.'s stewardship. Greenplum® is a registered trademark of Broadcom Inc. Synx Data Labs, Inc. and SynxDB are not affiliated with, endorsed by, or sponsored by Broadcom Inc. References to Greenplum are provided for comparative, interoperability, and attribution purposes in compliance with open-source licensing requirements. For more information, visit the official SynxDB website at https://synxdatalabs.com.

    Also verify that the /usr/local/synxdb directory points to the specific version of SynxDB that you downloaded:

    ls -ld /usr/local/synxdb*

    For version 2.27.2 the output is:

    lrwxrwxrwx 1 root root 24 Feb 19 10:05 /usr/local/synxdb -> /usr/local/synxdb-2.27.2 drwxr-xr-x 10 root root 4096 Mar 10 21:07 /usr/local/synxdb-2.27.2
  9. If you have not yet created the gpadmin administrator user and group, execute these steps:

    # groupadd gpadmin # useradd gpadmin -r -m -g gpadmin # passwd gpadmin New password: <changeme> Retype new password: <changeme>
  10. Login as the gpadmin user and set the SynxDB environment:

    su - gpadmin source /usr/local/synxdb/synxdb_path.sh
  11. Finally, verify that the following SynxDB executable paths and versions match the expected paths and versions for your installation:

    # which postgres /usr/local/synxdb-2.27.2/bin/postgres # which psql /usr/local/synxdb-2.27.2/bin/psql # postgres --version postgres (SynxDB) 9.4.26 # postgres --gp-version postgres (SynxDB) 6.27.2+SynxDB_GA build 1 # psql --version psql (PostgreSQL) 9.4.26

Note: If you are running a multi-node SynxDB cluster, execute the above commands on each host machine in your cluster.

At this point, you have installed and configured SynxDB on your Enterprise Linux system(s). The database is now ready for initialization and configuration using the SynxDB documentation.

Contact Synx Data Labs support at info@synxdata.com for any troubleshooting any installation issues.

Automating Multi-Node Deployments

You can use various automation tools to streamline the process of installing SynxDB to multiple hosts. Follow these recommended approaches:

Using Ansible

Ansible allows you to automate installation across all nodes in the cluster using playbooks.

  • Create an Ansible inventory file listing all nodes.
  • Develop a playbook to:
    • Install the SynxDB repository package.
    • Install SynxDB using dnf.
    • Verify installation across all nodes.
  • Run the playbook to automate deployment.

Using a Bash Script with SSH

For environments without Ansible, a simple Bash script can help distribute installation tasks. An installation script should:

  • Define a list of nodes in a text file (e.g., hosts.txt).
  • Use a loop in the script to SSH into each node and run installation commands.

The following shows the structure of an example bash script for installation:

for host in $(cat hosts.txt); do ssh gpadmin@$host "sudo dnf install -y synxdb" done