System Requirements
Before installing Vespa, ensure your system meets these requirements:CPU Architecture
x86_64 (AMD64) or ARM64
Memory
Minimum 4GB RAM, 8GB+ recommended
Operating System
Linux (AlmaLinux 8, Ubuntu, etc.)
Java
Java 17 or later (for building applications)
For production deployments, consider Vespa Cloud for managed hosting with automated scaling, monitoring, and updates.
Installation Methods
Choose the installation method that best fits your needs:- Docker (Recommended)
- Package Managers
- Build from Source
- Vespa Cloud
Docker is the quickest way to get started with Vespa and is suitable for development and testing.
Run with:
Prerequisites
- Docker Desktop or Docker Engine 20.10+
- At least 4GB RAM allocated to Docker
Quick Start
Port Configuration
The default ports are:| Port | Service |
|---|---|
| 8080 | Query and Document API |
| 19071 | Config server |
| 19050 | Node admin (internal) |
| 19092 | Metrics (Prometheus format) |
Docker Compose
For more complex setups, use Docker Compose:docker-compose.yml
Multi-node Setup with Docker
For testing distributed deployments:docker-compose-multinode.yml
Vespa CLI
The Vespa CLI is a command-line tool for managing Vespa applications.Installation
Common Commands
Production Considerations
When deploying Vespa in production, consider:Hardware Requirements
Config Server
- 2+ CPU cores
- 4GB+ RAM
- 50GB+ disk
- Odd number (1, 3, or 5)
Container Nodes
- 4+ CPU cores
- 8GB+ RAM
- Scales horizontally
Content Nodes
- 8+ CPU cores
- 16GB+ RAM
- Fast SSD storage
- Size based on data volume
Network
- Low latency between nodes
- 1Gbps+ bandwidth
- Reliable connections
Multi-node Setup
For production, deploy Vespa across multiple nodes:- Config server cluster: 3 nodes for high availability
- Container cluster: Scale based on query load
- Content cluster: Scale based on data size and redundancy needs
services.xml for multi-node:
Monitoring
Vespa exposes metrics in Prometheus format:- Query latency (p50, p95, p99)
- Query throughput
- Feed throughput
- Disk usage
- Memory usage
- CPU usage
Security
For production deployments:- Enable TLS for all endpoints
- Configure authentication and authorization
- Use firewall rules to restrict access
- Regular security updates
Next Steps
Quickstart
Build your first application
Sample Apps
Explore example applications
Multi-node Setup
Deploy a distributed cluster
Operations
Learn about running Vespa
Troubleshooting
Container won't start
Container won't start
Check Docker resource limits:Vespa needs at least 4GB RAM. Increase Docker’s memory limit if needed.
Config server not responding
Config server not responding
Verify the config server is running:Check logs:
Build fails on macOS
Build fails on macOS
For ARM Macs, ensure Rosetta is installed:Verify Java version:
Out of memory errors
Out of memory errors
Increase JVM memory for Maven:For Docker, increase container memory limits.