jaredledvina.sensu_go_ansible
sensu-go-ansible
This tool helps you install and manage Sensu Go.
You can find the official Sensu supported Ansible Collection here: https://github.com/sensu/sensu-go-ansible
If you want to help out, please check CONTRIBUTING.md and start a discussion by opening an issue.
Requirements
Role Variables
For all the available configuration options, see defaults/main.yml
. If you have questions about the options, please file an issue!
Please note that unless you've set up hash_behaviour
to merge
, changing any of the hash variables will completely replace the default values.
Most variables include an _overrides: {}
section to selectively update configurations. It is highly recommended to use the _overrides
variable for modifications.
Dependencies
None
Example Playbook
This example configures the sensu-backend-server
to install both sensu-backend
and sensu-agent
. It also installs the sensuctl
command-line tool for managing Sensu Go.
The hosts in the sensu-agent-servers
group will only install sensu-agent
, with its backend-url
configuration set to ws://sensu-backend-server:8081
.
For more information about configuration options, refer to the documentation for
sensu-backend
and
sensu-agent
.
---
-
hosts: sensu-backend-server
become: yes
roles:
- role: jaredledvina.sensu_go_ansible
-
hosts: sensu-agent-servers
roles:
- role: jaredledvina.sensu_go_ansible
sensu_go_components:
- agent
sensu_go_configs_override:
agent:
config:
backend-url:
- ws://sensu-backend-server:8081
Testing
This Ansible role is automatically tested with TravisCI on each commit. We specifically check using the versions of Ansible
and python
listed in the Pipefile.
These Operating Systems are tested automatically:
- Amazon Linux
- Amazon Linux 2
- CentOS - 6
- CentOS - 7
- Debian - 8 (Jessie)
- Debian - 9 (Stretch)
- Debian - 10 (Buster)
- Fedora - 30
- Fedora - 31
- Ubuntu - 16.04 (Xenial Xerus)
- Ubuntu - 18.04 (Bionic Beaver)
Custom Modules
This role includes the following custom modules:
Currently, these modules are in preview
status, so there might be changes in the future. We will try not to break them, but please check the CHANGELOG when updating.
To use these custom modules, you need to include this role first. Once included, the modules will be available for future plays/roles.
Documentation for each module can be found in the DOCUMENTATION
block inside each module's source. Once they stabilize, they might be submitted to the Ansible project.
Caveats
If you're using this role with Amazon Linux or Amazon Linux 2, you must change the following variables for those hosts:
Amazon Linux:
sensu_go_repos_overrides:
yum:
rpm: https://packagecloud.io/sensu/stable/el/6/x86_64
rpm-src: https://packagecloud.io/sensu/stable/el/6/SRPMS
sensu_go_community_repos_overrides:
yum:
rpm: https://packagecloud.io/sensu/community/el/6/x86_64
rpm-src: https://packagecloud.io/sensu/community/el/6/SRPMS
Amazon Linux 2:
sensu_go_repos_overrides:
yum:
rpm: https://packagecloud.io/sensu/stable/el/7/x86_64
rpm-src: https://packagecloud.io/sensu/stable/el/7/SRPMS
sensu_go_community_repos_overrides:
yum:
rpm: https://packagecloud.io/sensu/community/el/7/x86_64
rpm-src: https://packagecloud.io/sensu/community/el/7/SRPMS
If you're using this role with Debian 8, 9, or 10, you need to change this variable:
sensu_go_manage_community_repo: false
This is because Debian packages haven't been updated to the community repositories yet.
License
License
ansible-galaxy install jaredledvina.sensu_go_ansible