监控利器-prometheus安装与部署+实现邮箱报警

监控利器-prometheus安装与部署+实现邮箱报警

作为网站站长,我们经常需要监控网站的性能和运行状态。为了实现这一目的,通常需要使用一些监控工具。其中,prometheus是一款功能强大的监控利器,可以监控许多不同类型的系统和服务,并提供灵活的警报通知方式。在本文中,将介绍prometheus的安装、部署和实现邮箱报警的过程。

安装与部署

安装prometheus

在开始安装prometheus之前,确保您已经安装了Docker和Docker-compose。

1.创建一个新的目录并切换到该目录下

shell
mkdir prometheus && cd prometheus

2.创建一个新的docker-compose.yaml文件,如下所示

yaml
version: "3.8"
services:
prometheus:
container_name: prometheus
image: prom/prometheus:v2.26.0
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml

3.从Docker Hub上拉取最新的prometheus镜像并且运行

shell
docker-compose up -d

4.使用浏览器访问http://localhost:9090,进入prometheus后台管理界面,在这里可以配置监控的targets以及警报规则等等。

部署Node Exporter

Node Exporter是用于监视Linux服务器资源使用情况的一种服务,它可以帮助我们收集本地服务器的各类监控指标。

1.创建一个新的目录并切换到该目录下

shell
mkdir node_exporter && cd node_exporter

2.创建一个新的docker-compose.yaml文件,如下所示

yaml
version: "3.8"
services:
node_exporter:
container_name: node_exporter
image: prom/node-exporter:v1.2.2
ports:
- "9100:9100"

3.从Docker Hub上拉取最新的node_exporter镜像并且运行

shell
docker-compose up -d

4.在prometheus的配置文件prometheus.yml中添加Node Exporter的exporter,如下所示

yaml
scrape_configs:
- job_name: 'node_exporter'
scrape_interval: 5s
static_configs:
- targets: ['node_exporter:9100']

实现邮箱报警

安装Alertmanager

Alertmanager是prometheus中的一个组件,它用于对警报进行收集、分类、传递、暂停等操作。通过这个可以非常方便地实现邮件报警。

1.创建一个新的目录并切换到该目录下

shell
mkdir alertmanager && cd alertmanager

2.下载并解压最新版本的Alertmanager二进制文件

shell
wget https://github.com/prometheus/alertmanager/releases/download/v0.23.0/alertmanager-0.23.0.linux-amd64.tar.gz
tar zxvf alertmanager-0.23.0.linux-amd64.tar.gz
cd alertmanager-0.23.0.linux-amd64

3.在alertmanager的配置文件alertmanager.yml中配置邮件报警相关信息,如下所示

yaml
global:
smtp_smarthost: 'smtp.gmail.com:587'
smtp_from: 'sender@gmail.com'
smtp_auth_username: 'sender@gmail.com'
smtp_auth_password: 'password'
smtp_require_tls: true
email_config:
to: 'receiver@example.com'
from: 'sender@example.com'
headers:
Subject: '[Alert] {{ template "subject" . }}'
route:
receiver: 'email'
group_wait: 30s
group_interval: 5m
repeat_interval: 24h
routes:
- match:
alertname: Watchdog
receiver: 'email'
receivers:
- name: 'email'
email_configs:
- to: 'receiver@example.com'
send_resolved: true

其中需要将smtp_smarthost、smtp_from、smtp_auth_username和smtp_auth_password等信息更换成您的邮箱账号和密码。另外,还需要将to和from地址这两个配置信息中的email地址更换成您自己的邮箱地址。

4.运行Alertmanager

shell
./alertmanager --config.file=alertmanager.yml &

5.在prometheus配置文件prometheus.yml中配置报警规则,如下所示

yaml
rule_files:
- "/etc/prometheus/rules/*.rules"
scrape_configs:
- job_name: 'node_exporter'
scrape_interval: 5s
static_configs:
- targets: ['node_exporter:9100']
alerting:
alertmanagers:
- static_configs:
- targets: ['alertmanager:9093']

6.创建报警规则文件,并放置在/prometheus/rules文件夹中,如下所示

yaml
groups:
- name: Node_Exporter_Rules
rules:
- alert: Memory_Usage_Too_High
expr: (node_memory_MemTotal-node_memory_MemFree-node_memory_Buffers-node_memory_Cached)/node_memory_MemTotal*100 > 70
for: 1m
labels:
severity: warning
annotations:
summary: "Instance {{$labels.instance}} memory usage is high."
description: "The memory usage of instance {{$labels.instance}} has exceeded 70%."

这里的报警规则可以根据不同需求自行编写。

7.重启Prometheus

shell
docker restart prometheus

现在,当监测指标满足报警规则时,Alertmanager就会通过邮件的形式发送警报信息到指定邮箱。

总结

本文介绍了prometheus的安装、部署和实现邮箱报警的过程。通过这些步骤,我们可以快速搭建一个强大的监控系统来监控网站的性能和运行状态,并且实现灵活的警报通知方式。希望对大家有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:监控利器-prometheus安装与部署+实现邮箱报警 - Python技术站

(0)
上一篇 2023年3月28日
下一篇 2023年3月28日

相关文章

  • cny是什么货币?

    CNY是什么货币? CNY是中国货币的简写,全称为“人民币”。人民币是中国的法定货币,在国内有广泛的流通。人民币由中国人民银行发行,目前有纸币和硬币两种形式。 人民币的历史 人民币起源于1948年,当时新成立的中国人民银行开始发行人民币。初期的人民币以等价交换的方式发行,即原先流通的旧钞换取等额新钞。后来,人民银行逐渐完善了货币体系,发行了一系列新的货币,如…

    其他 2023年4月16日
    00
  • vue父组件异步传递props值,子组件接收不到解决方案

    对于”vue父组件异步传递props值,子组件接收不到”这种情况,解决方案主要有以下两种: 方法一:在子组件中使用$nextTick 如果父组件异步修改了props值导致子组件接收不到,可以在子组件中使用Vue的nextTick函数: // 父组件 <template> <child :propA="data"> …

    other 2023年6月26日
    00
  • Win10鼠标右键一直转圈怎么办?Win10鼠标右键一直转圈的解决方法

    Win10鼠标右键一直转圈通常是由于系统文件损坏或错误、系统更新、软件冲突等原因导致的。下面是解决方法的详细讲解。 方法一:更新或修复系统文件 这是最常见的解决办法之一,可以通过系统自带的命令行工具修复系统文件。进入命令提示符(管理员权限),输入以下命令: sfc /scannow 等待一段时间后,系统会自动扫描并修复损坏的系统文件。如果此时还有问题,可以再…

    other 2023年6月27日
    00
  • 关于工伤事故索赔计算很好用的一款APP

    关于工伤事故索赔计算很好用的一款APP的完整攻略 工伤事故索赔计算是一项繁琐的工作,需要考虑多种因素,如伤残程度、工龄、工资等。为了方便工伤事故索赔的计算,有一款很好用的APP可以帮助我们完成这项工作。本文将为您提供一份详细的关于工伤事故索赔计算很好用的一款APP的完整攻略,包括APP的基本介绍、使用方法和两个示例说明。 APP的基本介绍 这款APP是一款专…

    other 2023年5月5日
    00
  • 电脑开不了机的原因和解决方法

    电脑开不了机的原因和解决方法 电脑开不了机时,首先不要惊慌失措,可以先从以下几个方面排查问题。 1. 电源问题 电脑开不了机的常见原因之一是电源问题。电源模块可能会出现故障,或者电源插头松动。这时,可以检查一下电源插头是否插紧,也可以尝试更换电源插头。 如果电源出现故障,可能需要更换新的电源模块。建议选择适当功率的电源模块,并确保安装正确。 示例一:如果电源…

    other 2023年6月27日
    00
  • ubuntu卸载软件命令 apt-getremove

    以下是关于在Ubuntu中使用apt-get remove命令卸载软件的完整攻略,包括定义、使用方法、示例说明和注意事项。 定义 apt-get remove是操作系统中用于卸载软件的命令。它可以从系统中删除指定的软件包及其相关依赖项。 使用方法 以下使用apt-get remove命令卸载软件的步骤: 打开终端。 输入以下命令: bash sudo apt…

    other 2023年5月8日
    00
  • vsftpd添加用户

    当然,我很乐意为您提供有关“vsftpd添加用户”的完整攻略。以下是详细的步骤和两个示例: 1 vsftpd添加用户 要在vsftpd中添加用户,请按照以下步骤进行操作: 1.1 创建用户 首,您需要创建一个新用户。您可以使用以下命令创建一个用户: sudo adduser username 请将“username”替换为您要创建的用户名。 1.2 设置用户…

    other 2023年5月6日
    00
  • 龙之信条黑暗觉者无法启动 出现0xc0000005的解决方法

    龙之信条黑暗觉者无法启动 出现0xc0000005的解决方法 问题描述 玩家在启动游戏“龙之信条黑暗觉者”时,遇到了错误提示“无法启动该程序, 因为计算机中丢失 vcomp140.dll”,尝试重新安装游戏及VC运行库并不能解决问题,仍然提示“该应用程序无法正常启动(0xc0000005)。单击确定关闭应用程序。” 解决方法1:重新安装游戏 在出现错误提示后…

    other 2023年6月27日
    00
合作推广
合作推广
分享本页
返回顶部