Skip to content

App Node — OVA Appliance

The App Node ships as an .ova virtual-machine image with the full Logster application stack pre-installed: Docker, all container images, the model checkpoints, and the configuration that wires everything together. Nothing is downloaded at first boot.

This page takes you from importing the .ova to a running stack. Once it is up, connect your Windows endpoints so they start reporting in.

[!NOTE] Set up the GPU Node first. You need its endpoint URL in Step 2 below.


Hardware

Resource Recommended Minimum
CPU 12 vCPU 8 vCPU
RAM 64 GB 24 GB
Disk 300 GB NVMe SSD 300 GB NVMe SSD

Step 0 — Import the OVA

Import the shipped .ova into your hypervisor (VMware, VirtualBox, Proxmox, etc.) using its standard "Import Appliance / Import OVF" workflow. Allocate at least the resources in the table above.

Attach a network device. Before powering on, make sure the VM has a network adapter connected to a network with access to:

  • the GPU Node (the App Node calls its LLM endpoint on port 8000), and
  • your Windows endpoints (they ship logs to the App Node on port 29092).

A bridged adapter on your LAN is the simplest choice. The appliance must be able to reach the GPU Node and be reachable from your endpoints. Then power on the VM.

Once it has booted, confirm the VM has a working network connection and note its IP address (you will need it later):

ip addr
ping -c 3 <gpu-node>

Log in at the console with the default credentials:

username: logster
password: logster

Step 1 — Rotate the default password

Change the default password immediately:

passwd

Step 2 — Configure Logster

Logster needs two values before it can start. Copy the example file and edit it:

sudo cp /etc/logster/logster.env.example /etc/logster/logster.env
sudo nano /etc/logster/logster.env

Set these two values:

Setting What to put
LOCAL_LLM_ENDPOINT The GPU Node's Chat Completions URL, e.g. http://<gpu-node>:8000/v1/chat/completions. This is the endpoint you noted in GPU Node → Step 5.
EXTERNAL_KAFKA_LAN_HOST The App Node's LAN IP address that your endpoints will use to reach this appliance. Endpoints connect to <this-value>:29092. Set it to an IP address (not a hostname).

[!IMPORTANT] If LOCAL_LLM_ENDPOINT does not point at a reachable model server, the stack still runs but every window is reported as benign. Make sure the GPU Node is up and reachable from the App Node before starting.


Step 3 — Install license

Logster is licensed and will not start without a valid signed license file. Obtain your license from Eunomatix and install it:

sudo install -m 0600 /path/to/your-license.lic /etc/logster/license.lic

[!NOTE] The stack refuses to start until both the license file exists and logster.env from Step 2 is filled in. If the license is missing, invalid, or expired, the stack stays down.


Step 4 — Start Logster

sudo systemctl enable --now logster.service

Follow the startup logs:

sudo journalctl -u logster.service -f
sudo docker ps

First start takes roughly 3–5 minutes while internal services warm up.


Step 5 — Access Logster

Find the appliance's IP address with ip addr, then open these URLs from a browser that can reach it:

Interface URL Credentials
Console http://<app-node>:5001 None

Next, connect your Windows endpoints so they start reporting in.

[!NOTE] If you change EXTERNAL_KAFKA_LAN_HOST later, restart the stack so the change takes effect:

sudo systemctl restart logster.service

If the stack does not come up or endpoints don't appear, see the Troubleshooting guide.