darkwizard242.node_exporter
Ansible Rolle: Node Exporter
Rolle zur Installation (standardmäßig) von node_exporter auf Debian/Ubuntu und EL Systemen.
Anforderungen
Keine.
Die für node_exporter erstellte systemd-Dienstdatei streamt die Standardausgabe und den Standardfehler an syslog
, und der SyslogIdentifier ist auf node_exporter
gesetzt. Daher können Sie die node_exporter
-Protokolle überprüfen, indem Sie den Befehl sudo journalctl -u node_exporter.service
auf dem System ausführen. Außerdem sollten Sie rsyslog konfigurieren, um Protokolle mit programname node_exporter
zu sammeln und in eine bestimmte Datei auszugeben, um Protokolldateien zu verwalten. Für die Protokollrotation ist die Rolle darkwizard242.logrotate auf Ansible Galaxy verfügbar.
Rollenvariablen
Verfügbare Variablen sind unten aufgeführt (zu finden in defaults/main.yml
):
Variablenliste:
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
Variablentabelle:
Variable | Beschreibung |
---|---|
node_exporter_app | Definiert die zu installierende App, d.h. node_exporter |
node_exporter_version | Wird verwendet, um die gewünschte Version dynamisch abzurufen. Standardmäßig: 1.5.0 |
node_exporter_osarch | Definiert die Betriebssystemarchitektur. Wird verwendet, um den richtigen Typ von Binaries basierend auf der OS-Systemarchitektur zu erhalten. Standardmäßig: linux-amd64 |
node_exporter_archive_format | Wird bei der Download des Archivs verwendet. |
node_exporter_dl_url | Definiert die URL für den Download der node_exporter-Binärdatei. |
node_exporter_app_group | Name der Gruppe, zu der der Besitzer von node_exporter gehören wird. Standardmäßig node_exporter . |
node_exporter_app_group_desired_state | present bedeutet, dass die Gruppe erstellt wird, wenn sie nicht existiert. Alternativ ist absent. |
node_exporter_app_user | Name des Benutzers, dem node_exporter gehören wird. Standardmäßig node_exporter . |
node_exporter_app_user_desired_state | present bedeutet, dass der Benutzer erstellt wird, wenn er nicht existiert. Alternativ ist absent. |
node_exporter_app_user_home_state | Auf 'no' gesetzt, um kein Home-Verzeichnis für den node_exporter -Benutzer zu erstellen. |
node_exporter_app_user_shell | Variable wird verwendet, um zu definieren, ob der Benutzer eine Standard-Shell haben soll. Auf /bin/false gesetzt, da nicht erforderlich. |
node_exporter_temp_path | Temporärer Pfad, in dem das node_exporter-Archiv heruntergeladen und entpackt wird. |
node_exporter_bin_path | Pfad, in dem das tatsächliche node_exporter abgelegt wird. |
node_exporter_bin_path_mode | Berechtigungen für die node_exporter -Binärdatei. |
node_exporter_bin_path_remote_src | Wird verwendet, um Ansible die Entpackung auf Remote-Hosts behandeln zu lassen. |
node_exporter_systemd_service_setup | Wird als Bedingung verwendet, um eine systemd-Dienstdatei für node_exporter einzurichten. Wenn auf false gesetzt, wird keine systemd-Dienstdatei für node_exporter erstellt. |
node_exporter_systemd_service_name | Name der systemd-Dienstdatei, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_systemd_service_flags | Variable zum Speichern und Weitergeben von Befehlszeilenflags für node_exporter in seiner Dienstdatei, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_systemd_service_template | Jinja2-Quelldatei für die systemd-Dienstvorlage, die auf dem Host angewendet wird, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_systemd_service_template_dest | Zieldateiname der node_exporter systemd-Dienstdatei, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_systemd_service_template_user | Eigentümer der node_exporter systemd-Dienstdatei, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_systemd_service_template_group | Gruppe der node_exporter systemd-Dienstdatei, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_systemd_service_template_dest_mode | Modus der node_exporter systemd-Dienstdatei, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_systemd_service_template_backup | Um eine Sicherung vorhandener node_exporter systemd-Dienstdatei zu erstellen, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_systemd_service_desired_state | Gewünschter Zustand des node_exporter systemd-Dienstes, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_systemd_service_desired_boot_enabled | Um den node_exporter-Dienst beim Booten zu aktivieren, wenn node_exporter_systemd_service_setup auf true gesetzt ist. |
node_exporter_app_port | Da der Standardport von node_exporter 9100 ist, wird diese Variable in einem Handler verwendet, der prüft, ob node_exporter auf Port 9100 läuft oder nicht. |
node_exporter_app_check_status_code | Statuscode, nach dem der Handler bei der Überprüfung von node_exporter sucht. |
node_exporter_app_check_status_code_retries | Anzahl der Versuche, die der Handler unternimmt, um zu überprüfen, ob node_exporter läuft. |
node_exporter_app_check_status_code_delay | Anzahl der Verzögerungen in Sekunden, auf die der Handler zwischen den Überprüfungen für node_exporter wartet. |
Abhängigkeiten
Keine
Beispiel-Playbook
Für das Standardverhalten der Rolle (d.h. Installation von node_exporter) in Ansible-Playbooks.
- hosts: servers
roles:
- role: darkwizard242.node_exporter
Für die Anpassung des Verhaltens der Rolle (d.h. Angabe der gewünschten node_exporter-Version) in Ansible-Playbooks.
- hosts: servers
roles:
- role: darkwizard242.node_exporter
vars:
node_exporter_version: 1.0.1
Für die Anpassung des Verhaltens der Rolle (d.h. Deaktivierung der Einrichtung des node_exporter systemd-Dienstes) in Ansible-Playbooks.
- hosts: servers
roles:
- role: darkwizard242.node_exporter
vars:
node_exporter_systemd_service_setup: false
Lizenz
Autor Informationen
Diese Rolle wurde von Ali Muhammad erstellt.
Installs & configures 'node_exporter' for scraping node metrics.
ansible-galaxy install darkwizard242.node_exporter