Skip to content
Snippets Groups Projects
Select Git revision
  • d0a44e3ff8c63905ab8d47b5d61816f8e5f07852
  • main default
  • qsx
3 results

main.yml

  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    main.yml 1.62 KiB
    ---
    
    - name: Install node_exporter
      apt:
        name: prometheus-node-exporter
        state: present
      when: ansible_distribution_major_version|int >= 10
      tags:
        - prometheus
        - prometheus-exporter
    
    - name: Install node_exporter (stretch)
      apt:
        name: prometheus-node-exporter
        state: present
        default_release: stretch-backports
      when: ansible_distribution_major_version|int == 9
      tags:
        - prometheus
        - prometheus-exporter
    
    - name: Install additional node_exporter collectors
      apt:
        name: prometheus-node-exporter-collectors
        state: present
      when: ansible_distribution_major_version|int >= 11
      tags:
        - prometheus
        - prometheus-exporter
    
    - name: Ensure smartmontools is present only on bare-metal hosts
      apt:
        name: smartmontools
        state: >-
          {% if force_smartmontools_on_vm_guest or
            (ansible_virtualization_role is defined
              and not ansible_virtualization_role == "guest") -%}
            present
          {%- else -%}
            absent
          {%- endif %}
    
    - name: Configure node_exporter
      template:
        src: prometheus-node-exporter.j2
        dest: /etc/default/prometheus-node-exporter
        owner: root
        group: root
        mode: "0644"
      notify:
        - Restart node_exporter
      tags:
        - prometheus
        - prometheus-exporter
        - config
    
    - name: Configure Prometheus server to scrape us
      template:
        src: scrape.yml.j2
        dest: "/etc/prometheus/scrape/node_{{ ansible_fqdn }}.yml"
        owner: root
        group: root
        mode: "0644"
      delegate_to: "{{ prometheus_host }}"
      tags:
        - prometheus
        - prometheus-exporter
        - config
    
    - import_tasks: needrestart.yml