Single-VM (RHEL)

This article outlines the steps required to set up the askEdgi Data Service and askEdgi Insight Service on a single virtual machine running RHEL 9, along with the necessary configuration updates to the OvalEdge application. The steps in this document apply to fresh askEdgi deployments on the virtual machine.

The setup includes Python-based services using Poetry and integration with an existing OvalEdge installation on the same virtual machine. The document covers service deployment, system configuration, and validation steps required to complete the setup of askEdgi successfully.

Purpose

The purpose is to define a precise and reproducible process for installing required software, configuring system prerequisites, deploying Edgi services, opening required network ports, updating application configuration, and validating the complete setup.

Network Port Configuration

The following inbound ports must be opened on the virtual machine to expose the OvalEdge application and askEdgi services through a browser. The same ports must also be allowed at the operating system level on RHEL 9 to ensure successful network communication.

Port Number
Service Name
Usage

8001

Edgi Data Service

Enables communication between Edgi Insight and the OvalEdge application

8000

Edgi Insight Service

Enables communication between the OvalEdge application and Edgi Insight

circle-info

Both ports must be open for inbound traffic at the virtual machine level to ensure service communication.

Prerequisites

Ensure the following conditions are met before starting deployment.

  • Sudo access is available on the server.

  • The OvalEdge application is already installed and configured.

  • The Edgi services are deployed on the same virtual machine as OvalEdge.

Software Requirements

The following software components are required for deployment.

Component
Version

Operating System

RHEL 9

Python

3.13

Poetry

2.1.3

OvalEdge Application

Installed and configured

Install Python 3.13 on RHEL 9

Executing the Python Installation

Run the following commands to install Python 3.13.

  1. Install development tools

  2. Install required libraries

  3. Download and extract the Python source

  4. Configure and install Python

  5. Verify Python installation

    Sample reference screenshots:

Install Poetry Version 2.1.3

Configure the Poetry Environment

  1. Install Poetry

  2. Update environment path

  3. Verify Poetry installation

    Sample reference screenshot:

    circle-info

    Poetry must be installed under the ovaledge user, as the askEdgi services run using this account.

Preparing Service Directories

Create two base directories for askEdgi services under the ovaledge user home directory.

Directory
Purpose
Absolute Path

edgi_data

Edgi Data Service deployment

/home/ovaledge/edgi_data

edgi_insight

Edgi Insight Service deployment

/home/ovaledge/edgi_insight

Sample reference screenshot:

Deploy the Edgi Data Service

Configuring the Edgi Data Directory

  1. Create required folders inside edgi_data

    Sample reference screenshot:

Creating the Environment Configuration File

  1. Create a .env file and add the following values (Mandatory)

  2. MySQL configuration (Mandatory)

    circle-info

    The Special character @ in the MySQL password is not supported by Edgi services.

  3. Workspace identification (Mandatory)

  4. Logging configuration (Recommended)

  5. DuckDB configuration (Recommended)

  6. Pooling configuration (optional).

  7. Service port configuration (Mandatory)

  8. Recipe configuration (Optional)

    Sample reference screenshot:

Download the Edgi Data Package

  1. Download the askEdgi Data tar.gz file into the edgi_data directory.

  2. The DevOps team provides the download link.

  3. Extract the tar. gz file using the tar -xvf command. Sample reference screenshots:

  4. Validate Extraction: Confirm that the pyproject.toml file exists in the extracted directory before running poetry install.

Install Dependencies

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

    Sample reference screenshots:

Validate the Data Service

  1. Start the service manually using the Poetry service. Navigate to the edgi_data directory where the pyproject.toml file is located, then run:

  2. Confirm the service has started successfully.

  3. Stop the service using Ctrl+C. Sample reference screenshot:

Configuring the Data Service as a System Service

  1. Identify the Poetry installation path.

    Sample reference screenshot:

  2. Create the system service file at the specified location.

  3. Add the following configuration.

  4. Configure the service definition as provided in the details.

    Action

    Command

    Reload Service

    systemctl daemon-reload

    Start Service

    systemctl start data.service

    Enable Service

    systemctl enable data.service

    Status Service

    systemctl status data.service

Configure the Edgi Insight Service

Creating Directory Structure

  1. Inside the edgi_insight directory, create the following folders and environment file.

    Sample reference screenshot:

Creating the Environment Configuration File

  1. Create and edit the .env file.

  2. MySQL configuration.

  3. Workspace identification.

  4. Logging configuration.

  5. Elasticsearch configuration.

  6. Workspace discovery configuration.

  7. File storage paths.

    Sample reference screenshot:

Downloading and Extracting the Edgi Insight Package

  1. Download the Edgi Insight tar.gz file.

  2. The DevOps team provides the download link.

  3. Extract the package using the tar -xvf command. Sample reference screenshots:

Install Dependencies

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

    Sample reference screenshot:

Validate the Insight Service

  1. Start the Insight service manually using the Poetry service. Navigate to the edgi_data directory where the pyproject.toml file is located, then run:

  2. Confirm error-free execution.

  3. Stop the service using Ctrl+C. Sample reference screenshot:

Configure the Insight Service as a System Service

  1. Create the service file.

  2. Add the following configuration.

    circle-info

    Add a note explaining that the entry point must match the main script or console script defined in pyproject.toml.

  3. Use the following commands to configure the Insight service.

    Action

    Command

    Reload Service

    systemctl daemon-reload

    Start Service

    systemctl start insight.service

    Enable Service

    systemctl enable insight.service

    Status Service

    systemctl status insight.service

    circle-info

    The WorkingDirectory value must point to the directory containing the pyproject toml file for the Edgi Insight service.

    circle-info

    The PATH and LD_LIBRARY_PATH environment variables are mandatory to ensure Poetry and the required native libraries are accessible during service execution.

Update OvalEdge Oasis Configuration

Apply Edgi Configuration Parameters

For on-premises deployments, update the oasis configuration file with the following values.

Property
Value

oe.edgi.enabled

true

oe.edgi.credential.type

static

oe.edgi.workspace.host

localhost

oe.edgi.workspace.port

8001

oe.edgi.insight.service.host

localhost

oe.edgi.insight.service.port

8000

Sample reference screenshot:

circle-info

Update these properties in the oasis configuration file located at <path_to_oasis_file> as per your OvalEdge installation directory.

circle-info

Restart the Tomcat service after applying configuration changes.

Update OvalEdge Application Settings

Execute Application Level Configuration

  1. Ensure the OvalEdge application is running.

  2. Validate the -1MySQL connector.

    1. Navigate to the OvalEdge application, then go to System Settings > Connectors.

    2. Locate the connector with ID -1 (MySQL) and confirm it is active and connected.

  3. Perform crawl and profiling.

Update AI Settings

Navigate to System Settings, then AI tab, and update the following.

Setting
Value

askedgi.edition

metadata analytics

askedgi.ovaledge.recipe.connection.id

-1 (MySQL connector ID)

ai.config

Key provided by the developer

All the remaining settings are the same as below:

Final Validation Steps

  1. Log out and log back into the application.

  2. Navigate to the askEdgi feature.

  3. It will take a few seconds to create a workspace.

  4. Click on the Catalog.

  5. To add any schema, click on Add.

  6. Access data from the added catalog.

  7. Perform a search query and verify that a response is returned.

circle-info

Successful query results confirm that the complete setup is functioning as expected.


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

Last updated

Was this helpful?