ableton.prometheus_node_exporter

Ansible 角色 ableton.prometheus_node_exporter

此角色会在指定主机上安装 Prometheus node_exporter 作为服务。如果目标系统有带有 node_exporter 软件包的包管理器,则该角色将通过这种方式安装软件。否则,将从源代码构建该软件。

在 Windows 上,该角色会安装 windows_exporter

要求

需要 Ansible >= 2.10。该角色支持在以下操作系统类型上基于软件包的安装:

  • Debian Linux(通过 apt 模块)
  • macOS(通过 homebrew 模块)
  • Windows(通过 win_chocolatey 模块)

对于所有其他平台,将执行基于源代码的安装。在这些不支持基于软件包安装的系统上,以下软件是必需的:

  • Go (golang)
  • GNU Make

此角色不会在主机上安装上述任何软件;您必须在应用此角色之前自行解决。

角色变量

以下角色变量用于 node_exporter 的服务配置:

  • node_exporter_args:传递给 node_exporter 服务的参数列表,每个参数对应列表中的一项。
  • node_exporter_create_user:当为 true 时,创建 node_exporter_user 用户和相应的 node_exporter_group(仅在 Unix 平台上使用,默认值为 true)。
  • node_exporter_group:用于 node_exporter_user 用户的组(仅在 Unix 平台上使用)。
  • node_exporter_port:用于暴露指标的端口。
  • node_exporter_user:以哪个用户身份运行 node_exporter(仅在 Unix 平台上使用)。

以下变量在从源代码构建 node_exporter 时使用。

  • node_exporter_install_from_binary:当为 true 时,从二进制下载安装 node_exporter,而不是通过包管理器。这一选项并非在所有系统类型上都支持(请参见上面的“要求”部分)。
  • node_exporter_binary_arch:下载 node_exporter 二进制文件时需要获取的二进制架构。
  • node_exporter_version:要从源代码安装的 node_exporter 版本。

在 Windows 上使用以下变量:

  • windows_exporter_version:使用 Chocolatey 安装的 windows_exporter 版本。

请参见 defaults/main.yml 文件,以获取关于所需和可选角色变量的完整文档。

示例剧本

---
- name: 在主机上安装 node_exporter
  hosts: "all"
  vars:
    node_exporter_port: 9100
    node_exporter_binary_arch: "amd64"
    node_exporter_group: "{{ ansible_user }}"
    node_exporter_user: "{{ ansible_user }}"
    node_exporter_version: "0.18.1"

  pre_tasks:
    - name: 强制 macOS 主机从源代码安装,以便使用特定版本
      set_fact:
        node_exporter_install_from_binary: true
      when: ansible_os_family == "Darwin"

    - name:  macOS 主机安装先决软件
      homebrew:
        name: golang
        state: present

  roles:
    - ableton.prometheus_node_exporter

许可证

MIT

维护者

该项目由以下 GitHub 用户维护:

关于项目

Installs the Prometheus node exporter service

安装
ansible-galaxy install ableton.prometheus_node_exporter
许可证
mit
下载
38.5k
拥有者
Ableton makes Live, Push and Link — unique software and hardware for music creation and performance.