joshbenner.sensu
Sensu
Installer et configurer Sensu Core (version communautaire).
Variables de rôle
Les variables disponibles sont listées ci-dessous. Pour les valeurs par défaut, consultez defaults/main.yml
.
Variable | Description |
---|---|
sensu_install_repo |
Indique si le dépôt Debian personnalisé doit être installé. |
sensu_debian_repo_key_url |
URL de la clé GPG du dépôt Debian. |
sensu_debian_repo_url |
URL du dépôt Debian à utiliser. |
sensu_redhat_repo_url |
URL du dépôt RedHat à utiliser. |
sensu_state |
L'état d'installation de Sensu (présent/absent). |
sensu_version |
Version spécifique de Sensu à installer. |
sensu_user |
L'utilisateur Sensu. |
sensu_group |
Le groupe Sensu. |
sensu_config_file |
Chemin vers le fichier de configuration principal de Sensu. |
sensu_config_dir |
Chemin vers le répertoire contenant des configurations Sensu supplémentaires. |
sensu_enable_server |
Indique si le serveur doit être exécuté. |
sensu_enable_api |
Indique si l'API doit être exécutée. |
sensu_enable_client |
Indique si le client doit être exécuté. |
sensu_config |
Arbre de configuration pour le fichier de configuration principal. Remplacez les paramètres spécifiques si nécessaire. |
sensu_transport_name |
Quel transport Sensu doit utiliser (rabbitmq ou redis ). |
sensu_rabbitmq_config |
Configuration RabbitMQ. |
sensu_redis_config |
Configuration Redis. |
sensu_api_config |
Configuration de l'API. |
sensu_client_config |
Configuration du client. |
sensu_pin_version |
Indique si une version spécifique doit être utilisée (dépend de sensu_version ) |
sensu_install_yum_versionlock |
Indique si le plugin YUM versionlock doit être installé. Nécessaire si vous fixez une version. |
Configurations fusionnées
Le rôle va fusionner les variables avec des suffixes spécifiques pour assembler les configurations pour des éléments comme les vérifications provenant de plusieurs sources sans avoir besoin de la fusion Ansible activée.
Par exemple, si vous avez des variables dans group_vars/all
:
base_sensu_checks:
check_memory:
command: check-memory-percent.rb -w 70 -c 80
interval: 60
standalone: true
check_swap:
command: check-swap-percent.rb -w 50 -c 80
interval: 60
standalone: true
et dans group_vars/rabbit-servers
:
rabbitmq_sensu_checks:
check_rabbitmq_alive:
command: check-rabbitmq-amqp-alive.rb
interval: 60
standalone: true
Alors sur un serveur dans le groupe rabbit-servers
, les vérifications seront combinées pour donner une configuration comme :
sensu_checks:
check_memory:
command: check-memory-percent.rb -w 70 -c 80
interval: 60
standalone: true
check_swap:
command: check-swap-percent.rb -w 50 -c 80
interval: 60
standalone: true
check_rabbitmq_alive:
command: check-rabbitmq-amqp-alive.rb
interval: 60
standalone: true
Les suffixes suivants sont fusionnés pour les configurations Sensu :
_sensu_checks
- Définitions de vérifications Sensu_sensu_handlers
- Définitions de gestionnaires Sensu_sensu_filters
- Définitions de filtres Sensu_sensu_mutators
- Définitions de mutateurs Sensu_sensu_plugins
- Plugins Sensu à installer, sous forme de nom de chaîne, ou d'objet avec plus de détails :some_prefix__sensu_plugins: - name: pagerduty version: 3.0.1
_sensu_plugin_dependencies
_sensu_extensions
- Extensions et versions à installer :some_prefix__sensu_extensions: some-extension: 1.2.3 other-extension: absent
Exemple de Playbook
- hosts: all
become: yes
roles:
- role: joshbenner.rabbitmq
- role: DavidWittman.redis
- role: joshbenner.sensu
sensu_enable_server: yes
sensu_enable_api: yes
my_sensu_plugins:
- cpu-checks
- memory-checks
- network-checks
- rabbitmq
- redis
my_sensu_checks:
check_cpu:
command: check-cpu.rb -w 80 -c 95
interval: 60
standalone: true
check_memory:
command: check-memory-percent.rb -w 70 -c 80
interval: 60
standalone: true
check_swap:
command: check-swap-percent.rb -w 50 -c 80
interval: 60
standalone: true
check_route:
command: check-ping.rb -h {{ ansible_default_ipv4.gateway }} -W 90 -C 50
interval: 60
standalone: true
check_rabbitmq_alive:
command: check-rabbitmq-amqp-alive.rb
interval: 60
standalone: true
check_redis_alive:
command: check-redis-ping.rb
interval: 60
standalone: true
Licence
BSD
ansible-galaxy install joshbenner.sensu