moira-alert.moira-trigger-role

moira-trigger-role

Si eres nuevo aquí, es mejor que revises nuestro README.

Rol de Ansible para crear, actualizar y eliminar disparadores de Moira basado en python-moira-client.

Uso del rol

Instalación

Configuración

Tareas del rol

Instalación

Ansible Galaxy

ansible-galaxy install moira-alert.moira-trigger-role

Rol de Ansible con Makefile

Coloca el contenido del ejemplo dentro de tu Makefile para descargar el rol de Ansible Galaxy
y crear un playbook para gestionar disparadores con parámetros predefinidos dentro de tus archivos de variables:

- name: gestionar disparadores de moira
  hosts: nombreDelServicio
  roles:
    - role: moira-alert.moira-trigger-role
      moira_api: http://localhost:8081/api
      moira_triggers: '{{ ServiceNameTriggers }}'
      delegate_to: 127.0.0.1
      run_once: True
      dry_run: False

Nota: Todas las tareas deben hacerse desde tu máquina de control de Ansible.

Configuración

Define los siguientes parámetros dentro de tus archivos de variables. Ejemplos prácticos se pueden encontrar aquí.

Autenticación

Parámetro Descripción Tipo Requerido Por defecto Ejemplo
moira_api URL de la API de Moira Cadena N/A http://localhost/api/
moira_auth_custom Encabezados de autorización personalizados Diccionario No Ninguno Authorization: apiKey
moira_auth_user Usuario de autenticación (Autenticación básica) Cadena No Ninguno admin
moira_auth_pass Contraseña de autenticación (Autenticación básica) Cadena No Ninguno pass
moira_auth_login Inicio de sesión de autenticación (Autenticación básica) Cadena No Ninguno admin

Nota: Usa moira_auth_custom si estás utilizando mecanismos de autenticación adicionales en lugar de
autenticación básica simple, usa moira_auth_user, moira_auth_pass y moira_auth_login de lo contrario.
moira_auth_login debe contener un valor para el encabezado X-Webauth-User.

Estado del disparador

Parámetro Descripción Tipo Requerido Opciones Por defecto Ejemplo
state Estado deseado de un disparador Cadena present
absent
N/A present
id ID del disparador Cadena N/A N/A trigger_1
name Nombre del disparador Cadena N/A N/A Disparador 1
tags Lista de etiquetas del disparador Lista N/A N/A - Proyecto
- Servicio
targets Lista de objetivos del disparador
Ver funciones disponibles de graphite
Lista N/A N/A - prefix.*.postfix
warn_value Valor para establecer el estado WARN Flotante No N/A Ninguno 300
error_value Valor para establecer el estado ERROR Flotante No N/A Ninguno 600
trigger_type Tipo de disparador Cadena No rising
falling
expression
N/A rising
expression Expresión tipo C Cadena No N/A Cadena vacía t1 >= 10 ? ERROR : (t1 >= 1 ? WARN : OK)
ttl Cuando no haya métricas para el disparador, Moira cambiará la métrica a estado TTLState después de TTL segundos Entero No N/A 600 600
ttl_state Estado del disparador al expirar 'ttl' Cadena No NODATA
DEL
ERROR
WARN
OK
NODATA WARN
is_remote Usar almacenamiento remoto. Obsoleto, usa trigger_source en su lugar Booleano No Verdadero
Falso
Falso Falso
trigger_source Especificar la fuente del disparador, sobrescribe is_remote Cadena No graphite_local
graphite_remote
prometheus_remote
Ninguno graphite_local
cluster_id Especificar id del clúster Cadena No N/A Ninguno default
desc Descripción del disparador Cadena No N/A Cadena vacía descripción de prueba del disparador
mute_new_metrics Si es verdadero, el primer evento NODATA → OK será omitido Booleano No Verdadero
Falso
Falso Falso
disabled_days Días para que el disparador esté en modo silencioso Lista No N/A Lista vacía - Lun
- Mié
timezone_offset Desplazamiento horario (minutos) Entero No N/A 0 -180
start_hour Hora de inicio para enviar alertas Entero No N/A 0 9
start_minute Minuto de inicio para enviar alertas Entero No N/A 0 0
end_hour Hora de finalización para enviar alertas Entero No N/A 23 17
end_minute Minuto de finalización para enviar alertas Entero No N/A 59 0
alone_metrics Configurar algunos objetivos como métricas únicas Objeto, ejemplo: No N/A {'t1': Falso, 't2': Verdadero, ... 'tN': Verdadero} {'t1': Falso, 't2': Falso}

Tareas del rol

Gestionar dependencias

Tarea para verificar si python-moira-client está instalado (a través de pip).

Gestionar disparadores

Usa el estado 'present' para crear y editar disparadores existentes:

 - name: crear disparador
   moira_trigger:
      ...
      state: present
      ...  

Para eliminar disparadores existentes, usa el estado 'absent':

 - name: eliminar disparador
   moira_trigger:
      ...
      state: absent
      ...  
Acerca del proyecto

Ansible role to create, update and delete Moira triggers

Instalar
ansible-galaxy install moira-alert.moira-trigger-role
Licencia
mit
Descargas
19.1k
Propietario
Realtime alerting system based on Graphite data