ansible-beats
by
elastic

Description: Ansible Beats Role

View on GitHub ↗

Summary Information

Updated 1 hour ago
Added to GitGenius on April 7th, 2021
Created on December 21st, 2015
Open Issues & Pull Requests: 9 (+0)
Number of forks: 87
Total Stargazers: 131 (+0)
Total Subscribers: 164 (+0)

Issue Activity (beta)

Open issues: 0
New in 7 days: 0
Closed in 7 days: 0
Avg open age: N/A days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

The ansible-beats repository is an Ansible role maintained by Elastic that provides a generic mechanism for installing and configuring Elastic Beats across infrastructure. The project is now archived and no longer actively maintained, with the README directing users toward alternative solutions including Elastic Cloud, Elastic Cloud on Kubernetes, Docker-based deployments, and the Elastic Stack Terraform provider.

The role supports installation of multiple Beats products, with tested compatibility confirmed for Filebeat, Metricbeat, and Packetbeat. It has been validated across Beats versions 6.x and 7.x, with the default version set to 7.17.0 and legacy support for 6.8.23. Platform testing covers Ubuntu 16.04, 18.04, and 20.04, Debian 8, 9, and 10, CentOS 7, and Amazon Linux 2. The role is written in Ruby and classified across numerous domains including system administration, monitoring, configuration management, centralized logging, security analytics, and data collection.

The core functionality centers on flexible Beat deployment through a configuration map parameter called beat_conf, which is serialized into the appropriate beat YAML configuration file. This map-based approach allows the role to support all Beat configuration parameters without requiring updates when new or deprecated parameters are introduced. The role supports additional configuration through variables including beats_version for version specification, version_lock for preventing unintended updates, use_repository for leveraging Elastic repositories, and restart_on_change for controlling service restarts following configuration modifications.

The role provides granular control over Beat behavior through several configuration options. The start_service parameter determines whether the Beat service launches after installation, while daemon_args allows runtime parameters to be passed to Beats in version 1.x. Logging configuration defaults to rotating logs every 10485760 bytes and can be customized through the logging_conf map. Output configuration defaults to sending data to Elasticsearch on localhost:9200 but supports custom output destinations. The role also manages Index Lifecycle Management policies, allowing users to define custom ILM configurations or use Beat-provided defaults.

Testing infrastructure relies on Kitchen for continuous integration and local validation, requiring Ruby, Bundler, Docker, and Make. The test suite includes multiple platform configurations accessible through Kitchen patterns, with Ubuntu 18.04 as the default test environment. Users can run specific test suites for different platforms such as CentOS or execute the full test matrix.

The role enforces a significant limitation: multiple instances of the same Beat cannot be installed on a single target server. Configuration flexibility extends to directory locations, with beats_pid_dir defaulting to /var/run and beats_conf_dir defaulting to /etc/{beat}. The role is published on Ansible Galaxy under elastic.beats and maintains a Jenkins-based build status indicator. The project is licensed under Apache 2.0 and welcomes community contributions that include appropriate tests. Usage questions are directed to the Elastic community forums rather than GitHub issues to maintain focus on bug reports and feature requests.

ansible-beats
by
elasticelastic/ansible-beats

Repository Details

Fetching additional details & charts...