Skip to main content

Satellite on Windows

Prerequisites

Before installing the Levo Satellite on Windows, ensure you have:

  • Access to a Windows machine
  • Minimum system requirements:
    • CPU: At least 4 cores
    • RAM: At least 8 GB
  • Docker Desktop for Windows installed with WSL enabled

1. Download the Docker Compose File

Levo provides pre-built Docker images for the Satellite that can be installed via Docker Compose.

Loading...
the Docker Compose file to your desktop.

2. Install Satellite

Set the LEVOAI_AUTH_KEY environment variable. Refer to Generating CLI Authorization Keys for instructions on obtaining your key:

$env:LEVOAI_AUTH_KEY = "<your auth key here>"

Navigate to the directory where the Docker Compose file was downloaded and execute:

docker compose pull; docker compose up -d
info

You may need to set a different Levo base URL if your Satellite will be used in the India region.

For example, if the satellite will be used with app.india-1.levo.ai, the installation command will be:

$env:LEVOAI_AUTH_KEY = "<your auth key here>"
$env:LEVOAI_BASE_URL = "https://api.india-1.levo.ai"
docker compose pull; docker compose up -d

NOTE: If docker compose ... returns an error "docker: 'compose' is not a docker command", try using docker-compose instead.

3. Verify connectivity with Levo.ai

a. Check Satellite Health

The Satellite consists of six components: levoai-collector, levoai-rabbitmq, levoai-satellite, levoai-tagger, levoai-ion, and levoai-haproxy.

Wait a couple of minutes after the installation, and check the health of the components by executing the following:

docker ps -f name=levoai

If the Satellite is healthy, you should see output similar to the following:

CONTAINER ID   IMAGE                     COMMAND                  CREATED             STATUS                  PORTS                                                                                                                                    NAMES
2b32cd6b9ced levoai/collector:stable "/usr/local/bin/levo…" 10 seconds ago Up 8 seconds 0.0.0.0:4317->4317/tcp, 9411/tcp levoai-collector
06f3c597cad0 levoai/satellite:stable "gunicorn --capture-…" 10 seconds ago Up 9 seconds 0.0.0.0:9999->9999/tcp levoai-satellite
89026034c567 levoai/satellite:stable "python -OO /opt/lev…" 10 seconds ago Up Less than a second levoai-tagger
f74524d02fbd bitnami/rabbitmq:3.10 "/opt/bitnami/script…" 10 seconds ago Up 9 seconds 5551-5552/tcp, 0.0.0.0:4369->4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 0.0.0.0:15672->15672/tcp, 0.0.0.0:25672->25672/tcp, 15671/tcp levoai-rabbitmq
973414e03gba levoai/ion:stable "ion start -verbose" 10 seconds ago Up Less than a second 0.0.0.0:9990->8000/tcp levoai-ion
cb58d3d8d952 levoai/proxy:latest "docker-entrypoint.s…" 10 seconds ago Up 7 seconds 0.0.0.0:8081->8081/tcp, 0.0.0.0:9080->8080/tcp levoai-haproxy

b. Check Connectivity

Verify connectivity to Levo.ai by running:

docker logs levoai-tagger | grep "Ready to process; waiting for messages."

If connectivity is healthy, you will see output similar to the following:

{"level": "info", "time": "2022-06-07 08:07:22,439", "line": "rabbitmq_client.py:155", "version": "fc628b50354bf94e544eef46751d44945a2c55bc", "module": "/opt/levoai/e7s/src/python/levoai_e7s/satellite/rabbitmq_client.py", "message": "Ready to process; waiting for messages."}

4. Troubleshooting

Enable Debug Logging

Set the following environment variable to enable debug logging for the Satellite components, then reinstall the Satellite or restart the containers:

$env:LEVOAI_LOG_LEVEL = "DEBUG"

This will enable detailed debugging logs for all satellite components, including Tagger, Collector, Ion, and Satellite.

Some various log levels that can be set are INFO, DEBUG, WARNING, ERROR. The default log level is INFO.


Need Help?

For further assistance, please reach out to support@levo.ai.