joshbenner.sensu

Sensu

Build-Status

Installiere und konfiguriere Sensu Core (Community-Version).

Variablen der Rolle

Verfügbare Variablen sind unten aufgeführt. Für Standardwerte siehe defaults/main.yml.

Variable Beschreibung
sensu_install_repo Ob das benutzerdefinierte Debian-Repository installiert werden soll.
sensu_debian_repo_key_url URL zum GPG-Schlüssel des Debian-Repositorys.
sensu_debian_repo_url URL des zu verwendenden Debian-Repositorys.
sensu_redhat_repo_url URL des zu verwendenden RedHat-Repositorys.
sensu_state Installationsstatus von Sensu (z.B: vorhanden/nicht vorhanden).
sensu_version Bestimmte Version von Sensu, die installiert werden soll.
sensu_user Der Sensu-Benutzer.
sensu_group Die Sensu-Gruppe.
sensu_config_file Pfad zur Hauptkonfigurationsdatei von Sensu.
sensu_config_dir Pfad zum Verzeichnis mit zusätzlichen Sensu-Konfigurationen.
sensu_enable_server Ob der Server ausgeführt werden soll.
sensu_enable_api Ob die API ausgeführt werden soll.
sensu_enable_client Ob der Client ausgeführt werden soll.
sensu_config Konfigurationsbaum für die Hauptkonfigurationsdatei. Bestimmte Einstellungen überschreiben.
sensu_transport_name Welches Transportmittel Sensu verwenden soll (rabbitmq oder redis).
sensu_rabbitmq_config RabbitMQ-Konfigurationsbereich.
sensu_redis_config Redis-Konfigurationsbereich.
sensu_api_config API-Konfigurationsbereich.
sensu_client_config Client-Konfigurationsbereich.
sensu_pin_version Ob eine bestimmte Version festgelegt werden soll (abhängig von sensu_version).
sensu_install_yum_versionlock Ob das YUM-Versionlock-Plugin installiert werden soll. Benötigt, wenn festgelegt.

Zusammengesetzte Konfigurationen

Die Rolle wird Variablen mit bestimmten Endungen zusammenführen, um Konfigurationen für Dinge wie Prüfungen aus mehreren Quellen zu erstellen, ohne dass das Zusammenführen in Ansible aktiviert werden muss.

Wenn du also Variablen in group_vars/all hast:

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

und in group_vars/rabbit-servers:

rabbitmq_sensu_checks:
  check_rabbitmq_alive:
    command: check-rabbitmq-amqp-alive.rb
    interval: 60
    standalone: true

Dann werden auf einem Server in der Gruppe rabbit-servers die Prüfungen kombiniert, um eine Konfiguration wie folgt zu ergeben:

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

Die folgenden Endungen werden für Sensu-Konfigurationen zusammengeführt:

  • _sensu_checks - Sensu-Prüfungsdefinitionen

  • _sensu_handlers - Sensu-Handlerdefinitionen

  • _sensu_filters - Sensu-Filterdefinitionen

  • _sensu_mutators - Sensu-Mutatordefinitionen

  • _sensu_plugins - Sensu-Plugins, die installiert werden sollen, als String-Name oder Objekt mit mehr Details:

    some_prefix__sensu_plugins:
      - name: pagerduty
        version: 3.0.1
    
  • _sensu_plugin_dependencies

  • _sensu_extensions - Erweiterung und Version, die installiert werden sollen:

    some_prefix__sensu_extensions:
      some-extension: 1.2.3
      other-extension: absent
    

Beispiel-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

Lizenz

BSD

Über das Projekt

Install and configure sensu core (OSS version).

Installieren
ansible-galaxy install joshbenner.sensu
GitHub Repository
Lizenz
bsd-3-clause
Downloads
79
Besitzer