Agent Deployment

The Script Execution Agent must be installed on a dedicated Linux worker VM (e.g., Ubuntu, Debian, or Oracle Linux) that has network connectivity to the target endpoints.

Prerequisites

  • Operating System: Linux (AMD64). Tested on Ubuntu 22.04+ and Oracle Linux 8+.
  • Network:
    • Inbound: Port 8080 (default) from Aria Operations Cloud Proxies.
    • Outbound: Relevant ports for the scripts to communicate with target endpoints.
  • Permissions: root or sudo access for installation.

Installation (RPM Package)

The preferred way to install the Agent on RHEL-based systems (e.g., Oracle Linux, CentOS, AlmaLinux) is using the provided .rpm package.

  1. Download the package: Get the latest script-execution-agent_*.rpm from the GitLab Release page.
  2. Install the package:
    sudo rpm -i script-execution-agent_*.rpm
    
    This will:
    • Create a script-agent system user and group.
    • Install binaries to /opt/script-execution-agent/.
    • Set up a systemd service script-execution-agent.service.
    • Create necessary directories for scripts, logs, and database.

Installation (DEB Package)

The preferred way to install the Agent is using the provided .deb package.

  1. Download the package: Get the latest script-execution-agent_*.deb from the GitLab Release page.
  2. Install the package:
    sudo dpkg -i script-execution-agent_*.deb
    
    This will:
    • Create a script-agent system user and group.
    • Install binaries to /opt/script-execution-agent/.
    • Set up a systemd service script-execution-agent.service.
    • Create necessary directories for scripts, logs, and database.

Configuration

The Agent is configured using environment variables defined in /opt/script-execution-agent/.env.

Environment Variables

VariableDescriptionDefault / Example
API_TOKENRequired. Security token for API authentication.your_secret_token
API_PORTPort the Agent API will listen on.8080
SCRIPTS_DIRPath to the directory containing your scripts./opt/script-execution-agent/scripts
DATABASE_DIRPath where the SQLite database will be stored./opt/script-execution-agent/database
LOGS_DIRPath to the logs directory./opt/script-execution-agent/logs
OUTPUT_DIRPath where script execution results are stored./opt/script-execution-agent/output
CONCURRENT_WORKERSMax number of concurrent script executions.100
RESULTS_RETENTION_DAYSHow many days to keep execution results.7
TLS_CERT_FILE(Optional) Path to TLS certificate for HTTPS.
TLS_KEY_FILE(Optional) Path to TLS private key for HTTPS.

Post-Installation Steps

  1. Edit the configuration:

    sudo nano /opt/script-execution-agent/.env
    

    Ensure you set a strong API_TOKEN.

  2. Start the service:

    sudo systemctl enable script-execution-agent.service
    sudo systemctl start script-execution-agent.service
    
  3. Verify status:

    sudo systemctl status script-execution-agent.service
    

Managing Scripts

Scripts should be placed in the directory defined by SCRIPTS_DIR (default: /opt/script-execution-agent/scripts).

  • Ensure scripts have execution permissions: chmod +x /opt/script-execution-agent/scripts/my_script.sh.
  • The Agent user (script-agent) must have read and execute permissions for these files.
  • You can organize scripts in subdirectories; they will be referenced by their relative path in the Management Pack configuration.