Install AI Server
This chapter covers the installation of a Prisma AI Server using Docker Compose and provides a reference docker compose file to use for deployment.
Use the bundled AI server deployment
The docker-compose.yaml file included in the standard Prisma deployment package contains commented out services for the AI Trainer, AI Tester and AI Server.
To get started quickly with Prisma AI, you can simply enable and use these services.
1. Prepare your Zabbix server
Make sure that your Zabbix server is configured to start at least 1 connector with the StartConnectors configuration option. This is set to 0 by default.
Read more in Zabbix documentation
2. Register the AI server
To get started with Prisma AI using the default configuration, register a new AI Server and take note of the AI Server registration token.
For configuring the (still to be enabled) AI server shipped with the standard Prisma deployment, you can simply use https://your-prisma-deployment/ai-server/ as the “External URL” for the AI Server. This URL is not used by the Prisma server directly, but configured as a Zabbix Connector for streaming the metrics directly to the AI server.
3. Modify your Prisma deployment
Edit the docker-compose.yaml file of your Prisma deployment and uncomment the three services prisma-ai-trainer, prisma-ai-tester and prisma-ai-server.
Edit the .env file (hidden file) of your Prisma deployment and set the variable PRISMA_AI_SERVER_REGISTRATION_TOKEN to the registration token you saved in step 1.
Note that the nginx reverse proxy serving the prisma-frontend is configured by default to forward the path /ai-server to this default AI server, which is the path already registered in step 1.
4. Restart your deployment
Restart your Prisma deployment with the following commands:
docker compose down
docker compose up -d
Your AI Trainer and AI Tester should be registered automatically with the Prisma server (visible on the Microservices page).
The AI Server should start and register with the Prisma server. You should see details about the AI Server by navigating to the AI Server in the Prisma frontend after successful registration.
Deploying a dedicated AI Server using Docker Compose
1. Prerequisites
To set up a new AI Server, a number of prerequisites have to be met.
- Network access to a Prisma Server (gRPC and gRPC-Web endpoints)
- A Linux host with Docker and Docker Compose installed
- An AI Server Registration Token from an AI Server configuration in Prisma
- Make sure that your Zabbix server is configured to start at least 1 connector with the
StartConnectorsconfiguration option. This is set to 0 by default. Read more in Zabbix documentation
You can check whether Docker and Docker Compose are installed by running the following commands:
docker version
docker compose version
2. Docker Compose
If you want to run a separate AI server, you can follow the following steps.
The following docker-compose.yaml file defines how the AI Server will start.
You need to modify the docker-compose.yaml file to correctly include the following information:
- Connection details to your Prisma server
- An AI Server registration token from your Prisma server (see AI Servers)
services:
prisma-ai-server:
image: images.intellitrend.de/prisma/prisma-ai-server:7.10.12
restart: always
environment:
GOMEMLIMIT: "600MiB"
PRISMA_AI_SERVER_LOG_LEVEL: "info"
PRISMA_AI_SERVER_METRICS_IDENTITY: "prisma_ai_server"
# Prisma Server connection
PRISMA_AI_SERVER_AISERVER_PRISMA_SERVER_GRPC_ADDRESS: "prisma.intellitrend.de"
PRISMA_AI_SERVER_AISERVER_PRISMA_SERVER_GRPC_PORT: "8090"
PRISMA_AI_SERVER_AISERVER_PRISMA_SERVER_GRPC_TLS_ENABLE: "false"
PRISMA_AI_SERVER_AISERVER_PRISMA_SERVER_GRPC_WEB_ADDRESS: "prisma.intellitrend.de" # Usually the same as the GRPC_ADDRESS, only with a different port
PRISMA_AI_SERVER_AISERVER_PRISMA_SERVER_GRPC_WEB_PORT: "8091"
PRISMA_AI_SERVER_AISERVER_PRISMA_SERVER_GRPC_WEB_TLS_ENABLE: "false"
# AI Server configuration
PRISMA_AI_SERVER_AISERVER_REGISTRATION_TOKEN: "[REPLACE_ME]" # AI Server registration token from Prisma
PRISMA_AI_SERVER_AISERVER_CONFIG_POLL_INTERVAL: 15 # Interval in seconds in which the AI Server checks for new deployments
PRISMA_AI_SERVER_AISERVER_STATUS_INTERVAL: 60 # Interval in seconds between status prints
PRISMA_AI_SERVER_AISERVER_PORT: 8096 # Port to listen on for incoming data
volumes:
- ./prisma-ai-server/data/var/:/usr/local/intellitrend/prisma/var/:rw
3. Running the AI Server
To start the AI Server, simply use the following commands, pulling the required docker image from our docker registry.
# Pull image
docker compose pull
# Start in background
docker compose up -d
# Check logs
docker compose logs -f prisma-ai-server
The AI Server should connect to the Prisma Server, poll AI deployments, and begin evaluating models.
Troubleshooting
Make sure that your Zabbix server is configured to start at least 1 connector with the StartConnectors configuration option. This is set to 0 by default.
Read more in Zabbix documentation