Prometheus 和 Grafana 以进行服务器监控

部署 Prometheus 和 Grafana 以进行服务器监控是一项非常实用的任务,它们可以帮助你收集和可视化系统性能数据。以下是一个详细的步骤指南,帮助你在 Linux 服务器上部署 Prometheus 和 Grafana,进行监控配置。

1. 安装 Prometheus

1.1 下载并安装 Prometheus
  1. 访问 Prometheus 官方下载页面

  2. 下载适合你的操作系统和架构的 Prometheus 二进制文件。

    • 例如,Linux 64 位系统: prometheus-2.x.x.linux-amd64.tar.gz
  3. 解压文件并进入目录:

    bash 复制代码
    tar -xvzf prometheus-*.tar.gz
    cd prometheus-*
  4. 你会看到 prometheuspromtool 两个文件,它们是 Prometheus 的主要工具。

1.2 配置 Prometheus
  1. 编辑 prometheus.yml 配置文件来添加要监控的目标。

    • 配置示例:
    bash 复制代码
    global:
      scrape_interval: 15s # 每15秒抓取一次数据
    
    scrape_configs:
      - job_name: 'node'
        static_configs:
          - targets: ['localhost:9100'] # 监控本机的 Node Exporter
1.3 启动 Prometheus
  1. 在命令行启动 Prometheus:

    bash 复制代码
    ./prometheus --config.file=prometheus.yml
    默认情况下,Prometheus 会运行在 http://localhost:9090。
    

2. 安装 Node Exporter(用于服务器监控)

Node Exporter 是一个 Prometheus 导出器,用于收集操作系统和硬件的各种性能指标。

2.1 安装 Node Exporter
  1. 下载并解压 Node Exporter:

    bash 复制代码
    wget https://github.com/prometheus/node_exporter/releases/download/v1.x.x/node_exporter-1.x.x.linux-amd64.tar.gz
    tar -xvzf node_exporter-*.tar.gz
    cd node_exporter-*
  2. 启动 Node Exporter:

    bash 复制代码
    ./node_exporter

    默认情况下,Node Exporter 会运行在 http://localhost:9100,它将暴露服务器的各种硬件和系统指标。

2.2 配置 Prometheus 监控 Node Exporter

prometheus.yml 配置文件中添加 Node Exporter 作为抓取目标:

bash 复制代码
scrape_configs:
  - job_name: 'node'
    static_configs:
      - targets: ['localhost:9100']  # 指向 Node Exporter

3. 安装 Grafana

3.1 下载并安装 Grafana
  1. 访问 Grafana 官方下载页面
  2. 选择合适的操作系统并下载安装包。
  3. 安装 Grafana:
    • 对于 debian 系统,可以通过以下命令安装:

      bash 复制代码
      sudo apt-get install -y software-properties-common
      sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
      sudo apt-get update
      sudo apt-get install grafana
3.2 启动 Grafana
  1. 启动并设置 Grafana 为系统服务:

    bash 复制代码
    sudo systemctl start grafana-server
    sudo systemctl enable grafana-server
  2. 默认情况下,Grafana 会运行在 http://localhost:3000,并且默认的登录用户名和密码是 admin

4. 配置 Grafana 与 Prometheus 集成

4.1 登录到 Grafana
  1. 打开浏览器,访问 http://localhost:3000
  2. 使用默认的 admin 用户名和密码登录,并按提示修改密码。
4.2 添加 Prometheus 数据源
  1. 在 Grafana 仪表板左侧,点击 齿轮图标 (Configuration) -> Data Sources
  2. 点击 Add data source
  3. 选择 Prometheus 数据源。
  4. 在 URL 字段输入 Prometheus 的地址(通常是 http://localhost:9090)。
  5. 点击 Save & Test 测试连接是否成功。
4.3 创建 Grafana 仪表盘

以下是这两个模板的简要说明:

  1. 在左侧菜单选择 Create -> Dashboard

  2. 点击 Add new panel

  3. Query 中选择 Prometheus 数据源,并编写查询。例如,要显示 CPU 使用率,可以使用以下查询:

    bash 复制代码
    node_cpu_seconds_total{mode="idle"}
  4. 配置其他面板设置,例如图表类型、标题等,最后点击 Save 保存仪表盘。

  5. 在 Grafana 中,你可以使用社区提供的模板来快速搭建监控仪表盘。对于 Prometheus + Node Exporter 的服务器监控,常用的模板编号是 18608919。这些模板已经包含了许多常见的系统性能指标,如 CPU、内存、磁盘使用率和网络流量等。

    如何导入模板

  6. 登录 Grafana 并点击左侧菜单中的 + 图标,然后选择 Import

  7. Import via grafana.com 输入框中输入模板编号(例如,18608919),然后点击 Load

  8. 在数据源下拉菜单中选择你的 Prometheus 数据源,然后点击 Import

  9. 1860 - Node Exporter Full:一个完整的 Node Exporter 仪表盘,提供全面的系统监控信息。

  10. 8919 - Node Exporter for Prometheus Dashboard:这是一个更现代化的模板,提供了经过优化的性能监控图表。

5. 完成配置

现在你已经完成了 Prometheus 和 Grafana 的安装和配置,系统的各种性能指标(如 CPU、内存、磁盘等)应该已经可以通过 Grafana 仪表盘进行监控。

6. 高级配置(可选)

  • 报警设置:你可以在 Grafana 中设置报警,以便当某些指标超过阈值时收到通知。
  • 安全设置:为 Grafana 配置 HTTPS,启用用户认证等。
  • 自动化部署:使用 Docker 或 Kubernetes 等容器化工具,方便在多个服务器上部署 Prometheus 和 Grafana。
相关推荐
cominglately2 小时前
centos单机部署seata
linux·运维·centos
CircleMouse2 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos
Karoku0663 小时前
【k8s集群应用】kubeadm1.20高可用部署(3master)
运维·docker·云原生·容器·kubernetes
木子Linux3 小时前
【Linux打怪升级记 | 问题01】安装Linux系统忘记设置时区怎么办?3个方法教你回到东八区
linux·运维·服务器·centos·云计算
mit6.8243 小时前
Ubuntu 系统下性能剖析工具: perf
linux·运维·ubuntu
watermelonoops3 小时前
Windows安装Ubuntu,Deepin三系统启动问题(XXX has invalid signature 您需要先加载内核)
linux·运维·ubuntu·deepin
阿甘知识库4 小时前
宝塔面板跨服务器数据同步教程:双机备份零停机
android·运维·服务器·备份·同步·宝塔面板·建站
saynaihe4 小时前
安全地使用 Docker 和 Systemctl 部署 Kafka 的综合指南
运维·安全·docker·容器·kafka
zhou周大哥6 小时前
linux 安装 ffmpeg 视频转换
linux·运维·服务器
the丶only7 小时前
单点登录平台Casdoor搭建与使用,集成gitlab同步创建删除账号
linux·运维·服务器·docker·gitlab