darkwizard242.node_exporter

Estado de construcción Rol de Ansible Descargas de rol de Ansible Puntuación de calidad de Ansible Estado de la puerta de calidad Última etiqueta de GitHub (SemVer) Tamaño del repositorio de GitHub

Rol de Ansible: Node Exporter

Rol para instalar (por defecto) node_exporter en sistemas Debian/Ubuntu y EL.

Requisitos

Ninguno en particular.

El archivo de servicio systemd creado para node_exporter transmite la salida estándar y el error estándar a syslog, y el SyslogIdentifier se establece como node_exporter. Por lo tanto, puedes revisar los registros de node_exporter ejecutando el comando sudo journalctl -u node_exporter.service en el sistema. Además, puede que desees configurar rsyslog para recopilar registros con nombre del programa node_exporter y enviarlos a un archivo específico para mantener los archivos de registro. Para la rotación de registros, el rol darkwizard242.logrotate está disponible en Ansible Galaxy.

Variables del rol

Las variables disponibles se enumeran a continuación (ubicadas en defaults/main.yml):

Lista de variables:

node_exporter_app: node_exporter
node_exporter_version: 1.5.0
node_exporter_osarch: linux-amd64
node_exporter_archive_format: tar.gz
node_exporter_dl_url: "https://github.com/prometheus/{{ node_exporter_app }}/releases/download/v{{ node_exporter_version }}/{{ node_exporter_app }}-{{ node_exporter_version }}.{{ node_exporter_osarch }}.{{ node_exporter_archive_format }}"

node_exporter_app_group: "{{ node_exporter_app }}"
node_exporter_app_group_desired_state: present

node_exporter_app_user: "{{ node_exporter_app }}"
node_exporter_app_user_desired_state: present
node_exporter_app_user_home_state: no
node_exporter_app_user_shell: /bin/false

node_exporter_temp_path: /tmp

node_exporter_bin_path: /usr/local/bin
node_exporter_bin_path_mode: '0755'
node_exporter_bin_path_remote_src: yes

node_exporter_systemd_service_setup: true
node_exporter_systemd_service_name: "{{ node_exporter_app }}"
node_exporter_systemd_service_flags: --collector.systemd --collector.processes --collector.mountstats
node_exporter_systemd_service_template: "{{ node_exporter_app }}.service.j2"
node_exporter_systemd_service_template_dest: "/etc/systemd/system/{{ node_exporter_app }}.service"
node_exporter_systemd_service_template_user: root
node_exporter_systemd_service_template_group: root
node_exporter_systemd_service_template_dest_mode: '0644'
node_exporter_systemd_service_template_backup: yes
node_exporter_systemd_service_desired_state: restarted
node_exporter_systemd_service_desired_boot_enabled: yes

node_exporter_app_port: 9100
node_exporter_app_check_status_code: 200
node_exporter_app_check_status_code_retries: 10
node_exporter_app_check_status_code_delay: 5

Tabla de variables:

Variable Descripción
node_exporter_app Define la aplicación a instalar, es decir, node_exporter
node_exporter_version Definido para obtener dinámicamente la versión deseada a instalar. Por defecto: 1.5.0
node_exporter_osarch Define la arquitectura del sistema operativo. Se utiliza para obtener el tipo correcto de binarios según la arquitectura del sistema operativo. Por defecto: linux-amd64
node_exporter_archive_format Definido para usar al descargar el archivo.
node_exporter_dl_url Define la URL para descargar el binario de node_exporter.
node_exporter_app_group Nombre del grupo al que pertenecerá el propietario de node_exporter. Por defecto node_exporter.
node_exporter_app_group_desired_state present indica crear el grupo si no existe. La alternativa es absent.
node_exporter_app_user Nombre del usuario que será propietario de node_exporter. Por defecto node_exporter.
node_exporter_app_user_desired_state present indica crear el usuario si no existe. La alternativa es absent.
node_exporter_app_user_home_state Se establece en 'no' para no crear un directorio principal para el usuario node_exporter.
node_exporter_app_user_shell Variable utilizada para definir si el usuario debería tener un shell predeterminado. Se establece en /bin/false ya que no es requerido.
node_exporter_temp_path Ruta temporal donde se descarga y extrae el archivo de node_exporter.
node_exporter_bin_path Ruta en la que se coloca el node_exporter real.
node_exporter_bin_path_mode Permisos para el binario de node_exporter.
node_exporter_bin_path_remote_src Definido para permitir que ansible maneje la operación de descompresión en hosts remotos.
node_exporter_systemd_service_setup Utilizado como condición cuando se configura un archivo de servicio systemd para node_exporter. Si se establece en false, no se creará el archivo de servicio.
node_exporter_systemd_service_name Nombre del archivo de servicio systemd cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_systemd_service_flags Variable para almacenar y pasar cualquier bandera de línea de comandos de node_exporter en su archivo de servicio cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_systemd_service_template Archivo de plantilla de servicio systemd fuente Jinja2 para colocar en el host donde se aplica el rol cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_systemd_service_template_dest Nombre de archivo de destino del servicio systemd de node_exporter cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_systemd_service_template_user Propietario del archivo de servicio systemd de node_exporter cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_systemd_service_template_group Grupo del archivo de servicio systemd de node_exporter cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_systemd_service_template_dest_mode Modo del archivo de servicio systemd de node_exporter cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_systemd_service_template_backup Para hacer una copia de seguridad de cualquier archivo de servicio systemd existente de node_exporter cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_systemd_service_desired_state Estado deseado del servicio systemd de node_exporter cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_systemd_service_desired_boot_enabled Para habilitar el servicio node_exporter cuando node_exporter_systemd_service_setup está configurado en true.
node_exporter_app_port Como el puerto predeterminado de node_exporter es 9100, esta variable se utiliza en un manejador que verifica si node_exporter se está ejecutando en el puerto 9100 o no.
node_exporter_app_check_status_code Código de estado que el manejador busca cuando se ejecuta la verificación de node_exporter.
node_exporter_app_check_status_code_retries Número de veces que el manejador intenta verificar si node_exporter está en ejecución.
node_exporter_app_check_status_code_delay Número de segundos que el manejador espera entre verificaciones de node_exporter.

Dependencias

Ninguna

Ejemplo de Playbook

Para el comportamiento predeterminado del rol (es decir, la instalación de node_exporter) en playbooks de ansible.

- hosts: servers
  roles:
    - role: darkwizard242.node_exporter

Para personalizar el comportamiento del rol (es decir, especificar la versión deseada de node_exporter) en playbooks de ansible.

- hosts: servers
  roles:
    - role: darkwizard242.node_exporter
      vars:
        node_exporter_version: 1.0.1

Para personalizar el comportamiento del rol (es decir, deshabilitar la configuración del servicio systemd node_exporter) en playbooks de ansible.

- hosts: servers
  roles:
    - role: darkwizard242.node_exporter
      vars:
        node_exporter_systemd_service_setup: false

Licencia

MIT

Información del autor

Este rol fue creado por Ali Muhammad.

Acerca del proyecto

Installs & configures 'node_exporter' for scraping node metrics.

Instalar
ansible-galaxy install darkwizard242.node_exporter
Licencia
mit
Descargas
5.3k
Propietario
Senior DevOps/CloudOps Engineer. Dedicated to Automating everything I come across. Love to work on and learn new technologies/tools everyday!