joshbenner.sensu
Sensu
Instalar y configurar Sensu Core (versión comunitaria).
Variables del Rol
Las variables disponibles se enumeran a continuación. Para ver los valores predeterminados, consulta defaults/main.yml
.
Variable | Descripción |
---|---|
sensu_install_repo |
Si se debe instalar el repositorio Debian personalizado. |
sensu_debian_repo_key_url |
URL de la clave GPG del repositorio Debian. |
sensu_debian_repo_url |
URL del repositorio Debian a utilizar. |
sensu_redhat_repo_url |
URL del repositorio RedHat a utilizar. |
sensu_state |
El estado de instalación de Sensu (por ejemplo: presente/ausente). |
sensu_version |
Versión específica de Sensu a instalar. |
sensu_user |
El usuario de Sensu. |
sensu_group |
El grupo de Sensu. |
sensu_config_file |
Ruta al archivo principal de configuración de Sensu. |
sensu_config_dir |
Ruta al directorio que contiene configuraciones adicionales de Sensu. |
sensu_enable_server |
Si se debe ejecutar el servidor. |
sensu_enable_api |
Si se debe ejecutar la API. |
sensu_enable_client |
Si se debe ejecutar el cliente. |
sensu_config |
Estructura de configuración para el archivo principal. Sobrescribir configuraciones específicas. |
sensu_transport_name |
Qué transporte debe usar Sensu (rabbitmq o redis ). |
sensu_rabbitmq_config |
Alcance de configuración de RabbitMQ. |
sensu_redis_config |
Alcance de configuración de Redis. |
sensu_api_config |
Alcance de configuración de la API. |
sensu_client_config |
Alcance de configuración del cliente. |
sensu_pin_version |
Si se debe fijar una versión específica (depende de sensu_version ) |
sensu_install_yum_versionlock |
Si se debe instalar el plugin YUM versionlock. Necesario si se fija. |
Configuraciones Combinadas
El rol combinará variables con sufijos específicos para ensamblar configuraciones para cosas como comprobaciones de múltiples fuentes sin necesidad de habilitar la fusión de Ansible.
Por ejemplo, si tienes variables en 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
y en group_vars/rabbit-servers
:
rabbitmq_sensu_checks:
check_rabbitmq_alive:
command: check-rabbitmq-amqp-alive.rb
interval: 60
standalone: true
Entonces, en un servidor en el grupo rabbit-servers
, las comprobaciones se combinarán para dar como resultado una configuración como:
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
Los siguientes sufijos se combinan para las configuraciones de Sensu:
_sensu_checks
- Definiciones de verificaciones de Sensu_sensu_handlers
- Definiciones de controladores de Sensu_sensu_filters
- Definiciones de filtros de Sensu_sensu_mutators
- Definiciones de mutadores de Sensu_sensu_plugins
- Plugins de Sensu a instalar, como un nombre de cadena o un objeto con más detalles:some_prefix__sensu_plugins: - name: pagerduty version: 3.0.1
_sensu_plugin_dependencies
_sensu_extensions
- Extensión y versión a instalar:some_prefix__sensu_extensions: some-extension: 1.2.3 other-extension: absent
Ejemplo 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
Licencia
BSD
ansible-galaxy install joshbenner.sensu