Files
git.stella-ops.org/docs/features/unchecked/zastava/zastava-agent.md

2.3 KiB

Zastava Agent (VM/Bare-Metal Docker Socket Deployment)

Module

Zastava

Status

IMPLEMENTED

Description

Standalone agent for VM and bare-metal hosts that monitors Docker socket events for container lifecycle tracking. Alternative to the CRI-based Observer for non-Kubernetes environments, with systemd service deployment and Ansible provisioning support.

Implementation Details

  • Agent Program: src/Zastava/StellaOps.Zastava.Agent/Program.cs -- standalone agent entry point
  • DockerSocketClient: src/Zastava/StellaOps.Zastava.Agent/Docker/DockerSocketClient.cs -- Docker socket client for monitoring container events via Unix/named pipe socket
  • IDockerSocketClient: src/Zastava/StellaOps.Zastava.Agent/Docker/IDockerSocketClient.cs -- Docker socket client interface
  • DockerEventModels: src/Zastava/StellaOps.Zastava.Agent/Docker/DockerEventModels.cs -- Docker event payload models (start, stop, die, etc.)
  • DockerEventHostedService: src/Zastava/StellaOps.Zastava.Agent/Worker/DockerEventHostedService.cs -- background service consuming Docker socket events
  • RuntimeEventBuffer: src/Zastava/StellaOps.Zastava.Agent/Worker/RuntimeEventBuffer.cs -- buffers runtime events for batch dispatch
  • RuntimeEventDispatchService: src/Zastava/StellaOps.Zastava.Agent/Worker/RuntimeEventDispatchService.cs -- dispatches buffered events to backend
  • RuntimeEventsClient: src/Zastava/StellaOps.Zastava.Agent/Backend/RuntimeEventsClient.cs -- HTTP client for posting events to platform backend
  • HealthCheckHostedService: src/Zastava/StellaOps.Zastava.Agent/Worker/HealthCheckHostedService.cs -- agent health check background service
  • ZastavaAgentOptions: src/Zastava/StellaOps.Zastava.Agent/Configuration/ZastavaAgentOptions.cs -- agent configuration
  • AgentServiceCollectionExtensions: src/Zastava/StellaOps.Zastava.Agent/Worker/AgentServiceCollectionExtensions.cs -- DI registration
  • Source: SPRINT_0420_0001_0001_zastava_hybrid_gaps.md

E2E Test Plan

  • Verify agent connects to Docker socket and receives container lifecycle events
  • Test event buffering and batch dispatch to platform backend
  • Verify agent handles Docker socket reconnection on connection loss
  • Test health check service reports agent status
  • Verify agent works on both Linux (Unix socket) and Windows (named pipe) hosts