Server Overview
This section covers the features and capabilities of the Server, the central component in a Hotrod deployment.
Management Interfaces
HTTP API
The Server's HTTP API is it's primary management interface used to administer a Hotrod deployment. The HTTP API is also used for communication with Agents, and by the secondary management interfaces.
Command Line Interface
The Hotrod binary provides a command line interface (CLI) to interact with the Server. Internally, the CLI is a client for the Server's HTTP API.
Web Interface
The Server provides a web interface which, like the CLI, uses the Server's HTTP API. The web interface provides an integrated Pipe editor, which is particularly useful in the development and testing of Pipes.
Managing Pipes
The Server is the central repository for all Pipe definitions, which it assigns and deploys to Agents, according to it's configuration.
Managing Agents
The Server acts as the "upstream" for one or more Agents. It is responsible for Agent authentication, configuration, and for coordinating and deploying the set of Pipes that each Agent must execute.
Data Storage
Data stored by the Server includes:
- Pipe definitions
- Agent definitions
- Logs and Metrics
- Internal state
- Other configuration
The Server stores all it's data on disk, in a configurable location. There is no dependency on external components or services like a database.
For accumulating data like logs and metrics, the Server automatically removes older data based on a configurable retention period.
Other Functionality
The Server providers functionality for user management, handling tags, handling Pipe context data, as well as licensing.