The victoriametrics/ansible-playbooks repository provides a collection of Ansible roles and playbooks designed to automate the deployment and configuration of Victoria Metrics components across infrastructure. Written primarily in Jinja, the repository serves as infrastructure-as-code tooling for organizations seeking to deploy Victoria Metrics' time-series database, logging, and tracing solutions using Ansible automation.
The repository contains eleven distinct Ansible roles covering the full spectrum of Victoria Metrics products. For metrics collection, it includes roles for vmsingle (single-node deployment), vmagent (metrics agent), vmalert (alerting), and the three-component cluster setup with vminsert, vmstorage, and vmselect. Additionally, it provides vmauth for authentication and authorization. The logging and tracing products are covered through vlsingle and vlagent roles for VictoriaLogs, and vtsingle for VictoriaTraces. Each role handles installation and configuration of its respective component, allowing users to build complete observability stacks through composition.
The repository includes example playbooks demonstrating how to orchestrate these roles for different deployment scenarios. The cluster.yml, vlcluster.yml, and vtcluster.yml playbooks show how to deploy distributed architectures, while vmsingle.yml demonstrates single-node setups. Documentation files provide specific guidance for cluster deployments across all three product lines: VictoriaMetrics cluster deployment, VictoriaLogs cluster deployment, and VictoriaTraces cluster deployment. The quick-start section in the README walks users through installing Ansible, the collection from Ansible Galaxy, creating an inventory file, and deploying a VictoriaMetrics single node with browser-based verification.
Activity data shows the repository maintains moderate engagement with a median issue and pull request response latency of 23 hours, though some items experience longer resolution times with a mean latency of 837.5 hours. The most active contributor tracked is zekker6 with 54 recorded events, followed by tiny-pangolin with 6 events and makasim with 4 events. Enhancement requests represent the most common issue type with 6 labeled items, followed by help-wanted issues with 3 items and documentation improvements with 2 items. The repository shares contributors with related Victoria Metrics projects including victoriametrics/victoriametrics, victoriametrics/operator, and victoriametrics/helm-charts, indicating it functions as part of a broader ecosystem of deployment and operational tooling.
Development workflows are supported through a Makefile-based setup using Docker, Python, and Molecule for testing. Developers can initialize virtual environments, run linting with ansible-lint, execute Molecule convergence tests for both default and integration scenarios, and manage test infrastructure. This structured development approach ensures playbook quality and compatibility across different deployment scenarios before release to users.