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.
- Inbound: Port
- Permissions:
rootorsudoaccess 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.
- Download the package: Get the latest
script-execution-agent_*.rpmfrom the GitLab Release page. - Install the package:This will:
sudo rpm -i script-execution-agent_*.rpm- Create a
script-agentsystem 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.
- Create a
Installation (DEB Package)
The preferred way to install the Agent is using the provided .deb package.
- Download the package: Get the latest
script-execution-agent_*.debfrom the GitLab Release page. - Install the package:This will:
sudo dpkg -i script-execution-agent_*.deb- Create a
script-agentsystem 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.
- Create a
Configuration
The Agent is configured using environment variables defined in /opt/script-execution-agent/.env.
Environment Variables
| Variable | Description | Default / Example |
|---|---|---|
API_TOKEN | Required. Security token for API authentication. | your_secret_token |
API_PORT | Port the Agent API will listen on. | 8080 |
SCRIPTS_DIR | Path to the directory containing your scripts. | /opt/script-execution-agent/scripts |
DATABASE_DIR | Path where the SQLite database will be stored. | /opt/script-execution-agent/database |
LOGS_DIR | Path to the logs directory. | /opt/script-execution-agent/logs |
OUTPUT_DIR | Path where script execution results are stored. | /opt/script-execution-agent/output |
CONCURRENT_WORKERS | Max number of concurrent script executions. | 100 |
RESULTS_RETENTION_DAYS | How 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
Edit the configuration:
sudo nano /opt/script-execution-agent/.envEnsure you set a strong
API_TOKEN.Start the service:
sudo systemctl enable script-execution-agent.service sudo systemctl start script-execution-agent.serviceVerify 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.
