jille_Jr icon

jetporch blackbox_exporter role

jille_Jr | PRO | 09/29/23 07:28:00 PM UTC (Edited) | 0 ⭐ | 6355 👁️ | Never ⏰ | [jetporch]
YAML |

3.14 KB

|

None

|

0 👍

/

0 👎

# roles/blackbox_exporter/role.yml
name: blackbox_exporter
 
defaults:
  jet_managed: This file is managed by blackbox_exporter playbook using Jetporch
 
  blackbox_exporter_version: 0.24.0
 
  blackbox_exporter_directory: /opt/blackbox_exporter
  blackbox_exporter_configuration_directory: /etc/blackbox_exporter
  blackbox_exporter_user: app_exporter
  blackbox_exporter_group: app_exporter
 
tasks:
  - tasks.yml
 
handlers:
  - handlers.yml
 
---
# tasks from roles/blackbox_exporter/tasks/tasks.yml
 
- !directory
  path: "{{ item }}"
  attributes:
    owner: "{{ blackbox_exporter_user }}"
    group: "{{ blackbox_exporter_group }}"
    mode: 0o755
  with:
    items:
      - "{{ blackbox_exporter_directory }}"
      - "{{ blackbox_exporter_configuration_directory }}"
 
- !shell
  name: Check if file is downloaded or extracted
  cmd: stat {{ blackbox_exporter_directory }}/blackbox_exporter-{{ blackbox_exporter_version }}.linux-amd64.tar.gz || stat {{ blackbox_exporter_directory }}/blackbox_exporter-{{ blackbox_exporter_version }}.linux-amd64
  save: file_stat
  failed_when: false
  changed_when: false
 
- !shell
  name: Download blackbox_exporter
  cmd: wget -P{{ blackbox_exporter_directory }}/ https://github.com/prometheus/blackbox_exporter/releases/download/v{{ blackbox_exporter_version }}/blackbox_exporter-{{ blackbox_exporter_version }}.linux-amd64.tar.gz
  with:
    condition: (ne file_stat.rc 0)
 
- !shell
  name: Check if file is extracted
  cmd: stat {{ blackbox_exporter_directory }}/blackbox_exporter-{{ blackbox_exporter_version }}.linux-amd64
  save: dir_stat
  failed_when: false
  changed_when: false
 
- !shell
  name: Extract tarball
  cmd: tar -C {{ blackbox_exporter_directory }} -xzf {{ blackbox_exporter_directory }}/blackbox_exporter-{{ blackbox_exporter_version }}.linux-amd64.tar.gz
  with:
    condition: (ne dir_stat.rc 0)
  and:
    notify: Restart blackbox exporter
 
- !shell
  name: Remove tarball
  cmd: rm -v {{ blackbox_exporter_directory }}/blackbox_exporter-{{ blackbox_exporter_version }}.linux-amd64.tar.gz
  with:
    condition: (ne dir_stat.rc 0)
 
- !directory
  path: "{{ blackbox_exporter_directory }}/blackbox_exporter-{{ blackbox_exporter_version }}.linux-amd64"
  attributes:
    owner: "{{ blackbox_exporter_user }}"
    group: "{{ blackbox_exporter_group }}"
    mode: 0o755
  recurse: true
 
- !template
  src: blackbox_exporter.yml.hbs
  dest: "{{ blackbox_exporter_configuration_directory }}/blackbox_exporter.yml"
  attributes:
    owner: root
    group: root
    mode: 0o644
  and:
    notify: Restart blackbox exporter
 
- !template
  src: blackbox_exporter.service.hbs
  dest: /etc/systemd/system/blackbox_exporter.service
  attributes:
    owner: root
    group: root
    mode: 0o644
  and:
    notify: Restart blackbox exporter
 
- !shell
  name: Reload systemd units
  cmd: systemctl daemon-reload
 
- !sd_service
  service: blackbox_exporter
  started: true
  enabled: true
 
---
# handlers from roles/blackbox_exporter/handlers/tasks.yml
 
- !sd_service
  service: blackbox_exporter
  restart: true
  with:
    subscribe: Restart blackbox exporter
 

Comments

  • jille_Jr icon
    jille_Jr PRO
    09/29/23 07:28:00 PM UTC (Edited)
    text |

    0 B

    |

    0 👍

    /

    0 👎

    Fails when running with `jetp check-ssh`.
     Example:
     ```console
    $ jetp check-ssh -i inventory -p playbooks/prometheus.yml --tags blackbox_exporter -r roles
    ----------------------------------------------------------
    > playbook start: redacted/jetp/playbooks/prometheus.yml
    ----------------------------------------------------------
    > play: Install blackbox exporter
    ----------------------------------------------------------
    > batch 1/1, 1 hosts
    ----------------------------------------------------------
    > (blackbox_exporter) begin task: directory
    … redacted.example.com => running
    ✓ redacted.example.com => matched
    ----------------------------------------------------------
    > (blackbox_exporter) begin task: Check if file is downloaded or extracted
    … redacted.example.com => running
    ✓ redacted.example.com => would run
    ----------------------------------------------------------
    > (blackbox_exporter) begin task: Download blackbox_exporter
    … redacted.example.com => running
    ! error: redacted.example.com: failed to parse conditional: (ne file_stat.rc 0): one or more parameters may be undefined
    ----------------------------------------------------------
    > play failed: Install blackbox exporter
    no hosts remaining
    ```
  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎

    
        
  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎