Multi-VM (Ubuntu)

This article provides step-by-step instructions for the fresh deployment of the Edgi Data Service and Edgi Insight Service, along with the required configuration updates to the OvalEdge UI and Job Services, in a multi-VM Ubuntu environment.

Each Edgi service is implemented as a Python application managed using Poetry and integrated with an existing OvalEdge on-premises installation.

Purpose

The purpose of this article is to provide clear, structured guidance for the fresh deployment of the Edgi Data Service and Edgi Insight Service in a multi-VM Ubuntu environment.

It outlines the prerequisites, software dependencies, network and port configurations, installation steps, service setup, and validation procedures required to successfully integrate askEdgi with an existing OvalEdge on-premises installation.

Prerequisites

Before starting the installation, ensure the following:

System Access

  • Ubuntu Linux (LTS recommended)

  • User account with sudo privileges

Application Requirements

  • OvalEdge application is installed and running in a multi-VM setup

  • MySQL database is accessible

  • Elasticsearch is installed and running

Software Requirements

The following software is required on the Edgi service VMs:

  • Python 3.13.x

  • Poetry 2.1.3

Do not remove or overwrite the system default Python version. Doing so may break system utilities and the apt package manager.

Network and Port Requirements

Open the following inbound ports to allow communication between OvalEdge and Edgi services.

Port
Service
Purpose

8001

Edgi Data Service

Communication between Edgi Data Service and OvalEdge

8000

Edgi Insight Service

Communication between Edgi Insight Service and OvalEdge

9200

Elasticsearch

Communication between Edgi services and Elasticsearch

3306

MySQL

Communication between Edgi services and MySQL

Firewall Rules

  • Open ports 8000 and 8001 inbound on the Edgi VM security group, allowing access from OvalEdge VMs.

  • Open port 9200 inbound on the Elasticsearch security group, allowing access from Edgi VMs.

  • Open port 3306 inbound on the MySQL security group, allowing access from Edgi VMs.

Installation Steps

Python 3.13

  1. Add Required Repositories.

  2. Verify Existing Python Version.

  3. If the version is below 3.13.x, install Python 3.13:

    Sample Reference Screenshot:

  4. Configure Python Alternatives.

    Sample Reference Screenshot:

  5. Verify Python Version.

There are two alternatives: python3 (providing /usr/bin/python3).

Selection
Path
Priority
Status

*0

/usr/bin/python3.10

1

auto mode

1

/usr/bin/python3.10

1

manual mode

2

/usr/bin/python3.13

2

manual mode

Poetry Installation (Version 2.1.3)

  1. Run the following commands.

Directory Preparation

  1. Create separate directories for the Edgi services (edgi_data and edgi_insight):

    Sample Reference Screenshot:

Edgi Data Service Deployment

  1. Create Required Directories.

    Sample Reference screenshot:

  2. Configure Environment Variables.

    1. Edit the .env file:

      Sample Reference screenshot:

  3. Download and Extract Package.

    1. Download the Edgi Data Service package (provided by DevOps) and extract it:

      Sample Reference Screenshots:

  4. Install Dependencies.

    1. Run the following command from the directory containing pyproject.toml:

      Sample Reference Screenshots:

  5. Validate Service Startup.

    Sample Reference Screenshot:

    Verify that the service starts successfully, then stop it using Ctrl+C.

  6. Configure systemd Service

    1. Identify the Poetry binary path:

      Sample Reference Screenshot:

    2. Create the service file:

  7. Manage the Service.

    Service Management Commands

    Reload Service

    systemctl daemon-reload

    Start Service

    systemctl start data.service

    Enable Service

    systemctl enable data.service

    Check Status

    systemctl status data.service

Edgi Insight Service Deployment

  1. Create Required Directories.

    Sample Reference Screenshot:

  2. Configure Environment Variables.

    Sample Reference Screenshot:

  3. Install and Validate.

    Stop the service using Ctrl+C after validation.

  4. Configure systemd Service.

  5. Manage the Service.

OvalEdge Configuration Updates

Oasis Configuration

  1. Update the following properties in the oasis configuration file:

    Sample Reference Screenshot:

Restart Tomcat after saving the changes.

OvalEdge UI Configuration

  1. Log in to the OvalEdge application.

  2. Validate the MySQL connector (ID: -1) and complete crawl and profiling.

  3. Navigate to System Settings → AI and update the following settings:

    1. askedgi.edition = metadata analytics

    2. Askedgiplus.enable = true

    3. askedgi.ovaledge.recipe.connection.id = -1 (MySQL connector ID)

  4. Update ai.config with the key provided by the DevOps team.

  5. Log out and log back in to apply the changes.

Validation

  1. Navigate to the AskEdgi feature.

  2. Wait for workspace initialization.

  3. Open the catalog and add a schema.

  4. Verify data access.

  5. Use the search bar to query metadata and validate results.

    Successful responses confirm that the deployment is complete.


Copyright © 2026, OvalEdge LLC, Peachtree Corners, GA, USA.

Last updated

Was this helpful?