1.zabbix是告警告什么
2.2020-08-25
3.在suselinux上怎么部署zabbix
4.记录一次zabbix6.0 server和agent安装并部署监控
5.网络工程师的zabbix之旅(实战) -- zabbix_server5.0安装部署
zabbix是什么
Zabbix是一个开源的企业级监控解决方案。 Zabbix是源码原理一个基于Web界面的提供分布式监控以及基于代理的监控功能的软件。它能够监控各种网络参数,告警告如服务器的源码原理可用性、应用程序的告警告性能以及其他关键网络问题。它是源码原理文档改单源码为大多数环境和应用的快速设置和发展而生的一个高效软件解决方案。以下是告警告关于Zabbix的详细解释: 一、基本概念与功能 Zabbix的源码原理主要功能是监控网络和服务器资源的使用情况,包括CPU负载、告警告内存占用、源码原理磁盘空间、告警告网络流量等。源码原理此外,告警告它还可以监控各种应用程序的源码原理性能数据,确保关键业务服务正常运行。告警告通过Zabbix,运维团队可以轻松地识别和解决潜在的hubbs论坛源码问题,从而提高系统的稳定性和性能。 二、开源与灵活性 作为一个开源项目,Zabbix拥有广泛的社区支持。这意味着用户可以自由地获取源代码,根据自己的需求进行定制和扩展。它的模块化结构使得集成其他系统和工具变得相对简单,从而满足企业不断变化的监控需求。 三、分布式监控与可扩展性 Zabbix支持分布式监控架构,这意味着它可以轻松地扩展到大规模的环境。通过添加更多的监控代理和服务器,Zabbix可以有效地监控成千上万台设备,而不会导致性能下降。这种可扩展性使得Zabbix成为大型企业理想的监控解决方案。 四、糖心源码用户友好界面 Zabbix提供了一个用户友好的Web界面,使得监控和管理变得非常简单。通过直观的图表和报告,用户可以快速地了解系统的状态,并采取相应的措施。此外,它还提供了丰富的API和插件,使得与其他系统和工具集成变得更加容易。 总之,Zabbix是一个强大而灵活的企业级监控解决方案,适用于各种规模和类型的企业。它的开源性质、分布式监控能力以及用户友好的界面使其成为市场上受欢迎的监控工具之一。--
Prometheus å®ç°é®ä»¶åè¦ï¼Prometheus+Alertmanager+QQé®ç®±æè ç½æé®ç®±ï¼ç®åæµè¯è¿è¿ä¸¤ç§é®ç®±é½å¯ä»¥åéåè¦é®ä»¶ï¼
Prometheuså®ç°é®ä»¶åè¦åçå¦ä¸ï¼
Prometheuså®æ¹æä¸ä¸ªé带çä¸é´ä»¶ï¼alertmanagerï¼éè¿è®¾ç½®rulesè§ååè·¯ç±è½¬åå¯ä»¥å®ç°é®ä»¶åè¦ï¼åææ¯ä½ éè¦æä¸ä¸ªå¯ä»¥åéé®ä»¶çé®ä»¶æå¡ç«¯ï¼å¯ä»¥èªå»ºæè 使ç¨äºèç½å ¬å¸æä¾çå è´¹é®ç®±ï¼
åè¦åçå¾
Prometheuså®æ´æ¶æå¾
æä¹åå¾åºçé误ç»è®ºå¦ä¸ï¼
æ¨èç´æ¥å¨èææºæä½ç³»ç»ä¸ç´æ¥å®è£ PrometheusåAlertmanagerï¼ä¸æ¨èå ¶ä¸ä»»ä½ä¸æ¹å¨å®¹å¨ä¸è¿è¡ï¼å 为æµè¯è¿å¨å®¹å¨ä¸è¿è¡Prometheusåalertmanagerï¼ç»æåºç°å¦ä¸é误æ åµ
第ä¸ç§æ åµæ¯ï¼æçnode-exporteræ线è·æºäºï¼æå¨å ³æºï¼æ¨¡æçªç¶æ线è·æºï¼ï¼Prometheuså´æ示èç¹ä¾ç¶å¨çº¿ï¼ææ¶åå´è½å¤æ£å¸¸æ¾ç¤ºèç¹æ线è·æºï¼çæåè¦åéé®ä»¶
第äºç§æ åµæ¯ï¼æçnode-exporteræ线è·æºäºï¼æå¨å ³æºï¼æ¨¡æçªç¶æ线è·æºï¼ï¼Prometheusæ示èç¹æ线ï¼åè¦çæï¼ä½æ¯æ²¡æåéé®ä»¶ï¼ææå¨æ¢å¤node-exporteråï¼åè¦è§£é¤ï¼é®ä»¶è½æ£å¸¸åéé®ä»¶æ示åè¦å·²ç»è§£é¤ãããã
第ä¸ç§æ åµæ¯ï¼æçnode-exporteræ线è·æºäºï¼æå¨å ³æºï¼æ¨¡æçªç¶æ线è·æºï¼ï¼Prometheusæ示èç¹æ线ï¼åè¦çæï¼æ£å¸¸æååéé®ä»¶ï¼ææå¨æ¢å¤node-exporteråï¼åè¦è§£é¤ï¼é®ä»¶æ²¡æåéåºæ¥ãããã
以ä¸ä¸ç§æ åµä¹åç»å¸¸åºç°ï¼å½æ¶ç¬¬ä¸æ¥ä»¥ä¸ºæ¯èªå·±è®¾ç½®çscrape_intervalä¸åç导è´çï¼ç»æè°è¯å 次ï¼é®é¢æ²¡æ解å³ï¼ç¬¬äºæ¥ä»¥ä¸ºæ¯èªå·±çæå¡å¨æ¶é´æ²¡æåå°ç²¾ç¡®åæ¥ï¼ç¶åæå»è®¾ç½®åé¿éäºçntpæå¡å¨åæ¥ï¼ç»æé®é¢ä¾ç¶æ²¡æ解å³ï¼ç¬¬ä¸æ¥ï¼æ¢ä¸ªæ¹åï¼æalertmanagerè¿ç§»å°èææºæä½ç³»ç»ä¸å®è£ è¿è¡ï¼é®é¢è§£å³ï¼
å京æ¶é´æ¯GMT+8å°æ¶ï¼æäºåå¿çæ¶é´å¯è½æ¯UTCçï¼ä½æ¯å¦ææ¯å¨è¦æ±ä¸å¤ªåå精确çæ åµä¸ï¼UTCæ¶é´æ¯åå好çäºGMTæ¶é´
为äºé¿å æ¶åºçæ··ä¹±ï¼prometheusææçç»ä»¶å é¨é½å¼ºå¶ä½¿ç¨Unixæ¶é´ï¼å¯¹å¤å±ç¤ºä½¿ç¨GMTæ¶é´ã
è¦æ¹æ¶åºæ两个åæ³
1 .ä¿®æ¹æºç ï¼éæ°ç¼è¯ã
2. ä½¿ç¨ docker è¿è¡ Prometheusï¼æè½½æ¬å°æ¶åºæ件
docker run --restart always -e TZ=Asia/Shanghai --hostname prometheus --name prometheus-server -d -p : -v /data/prometheus/server/data:/prometheus -v /data/prometheus/server/conf/prometheus.yml:/etc/prometheus/prometheus.yml -u root prom/prometheus:v2.5.0
æ£æå¼å§
å®è£ alertmanager
容å¨å®è£ æ¹å¼ï¼
docker run -d --name alertmanager -p : -v /usr/local/Prometheus/alertmanager/alertmanager.yml:/etc/alertmanager/alertmanager.yml prom/alertmanager:latest
å å¨å®¿ä¸»æº/usr/local/Prometheusä¸å建ä¸ä¸ªæ件夹alertmanagerï¼ç¶åå¨æ件夹éå建alertmanager.ymlé ç½®æ件ï¼å¾ ä¼æè½æ å°å°alertmanager容å¨éç/etc/alertmanagerç®å½ä¸
globalï¼å ¨å±é ç½®
resolve_timeout: é®é¢è§£å³çè¶ æ¶æ¶é´
smtp_from: åéåè¦é®ä»¶çé®ç®±è´¦å·
smtp_smarthost: é®ç®± SMTP æå¡å°å,è¿éæ¯ä»¥QQé®ç®±ä¸ºä¾ï¼ä¹å¯ä»¥ç¨ç½æé®ç®±ï¼è¿ä¸ªåæä¹å设置zabbixé®ä»¶åè¦æ¶çé ç½®ä¸æ ·
smtp_auth_username: å¦æ没æ设置é®ç®±å«åï¼é£å°±æ¯è´¦æ·å
smtp_auth_password: é®ç®±çææç ï¼ä¸æ¯ è´¦æ·å¯ç ï¼ä½ å¯ä»¥å¨QQé®ç®±æè ç½æé®ç®±ç½é¡µç«¯è®¾ç½®ï¼å¼å¯ POP3/SMTP æå¡æ¶ä¼æ示ï¼åé ç½®zabbixé®ä»¶åè¦çæ¶åå ä¹ä¸æ ·
smtp_require_tls: æ¯å¦ä½¿ç¨ tlsï¼æ ¹æ®ç¯å¢ä¸åï¼æ¥éæ©å¼å¯åå ³éãå¦ææ示æ¥é email.loginAuth failed: Must issue a STARTTLS command firstï¼é£ä¹å°±éè¦è®¾ç½®ä¸º trueãçé说æä¸ä¸ï¼å¦æå¼å¯äº tlsï¼æ示æ¥é starttls failed: x: certificate signed by unknown authorityï¼éè¦å¨ email_configs ä¸é ç½® insecure_skip_verify: true æ¥è·³è¿ tls éªè¯ã
templatesï¼ åè¦æ¨¡æ¿ç®å½ï¼å¯ä»¥ä¸ç¼å模æ¿ï¼æé»è®¤æ¨¡æ¿
Subject: '{ { template "email.default.subject" . }}'
html: '{ { template "email.default.html" . }}'
routeï¼æ¥è¦çåå设置
group_byï¼åç»
group_wait: åç»çå¾ æ¶é´
group_interval: 5m æ¯ç»æ¶é´é´é
repeat_interval: m éå¤é´é
receiver: æ¥æ¶æ¹å¼ï¼è¯·æ³¨æï¼è¿éçååè¦å¯¹åºä¸é¢receiversä¸çä»»ä½ä¸ä¸ªååï¼ä¸ç¶ä¼æ¥éï¼è¿éå ¶å®å°±æ¯éæ©æ¹å¼ï¼æé®ç®±ï¼ä¼ä¸å¾®ä¿¡ï¼wehookï¼victoropsçç
receiversï¼æ¥åæ¹å¼æ±æ»ï¼å³åè¦æ¹å¼æ±æ»
ä¾åï¼
receivers:
- name:'default-receiver'
email_configs:
- to:'whiiip@.com'
html: '{ { template "alert.html" . }}'
headers: { Subject: "[WARN] æ¥è¦é®ä»¶test"}
inhibit_rules: æå¶è§å
å½åå¨ä¸å¦ä¸ç»å¹é çè¦æ¥ï¼æºï¼æ¶ï¼æå¶è§åå°ç¦ç¨ä¸ä¸ç»å¹é çè¦æ¥ï¼ç®æ ï¼ã
å æ¬æºå¹é åç®æ å¹é
alertmanagerå®æ¹æ¯è¿æ ·è¯´ç
Inhibition
Inhibition is a concept of suppressing notifications for certain alerts if certain other alerts are already firing.
Example: An alert is firing that informs that an entire cluster is not reachable. Alertmanager can be configured to mute all other alerts concerning this cluster if that particular alert is firing. This prevents notifications for hundreds or thousands of firing alerts that are unrelated to the actual issue.
Inhibitions are configured through the Alertmanager's configuration file.
å½åå¨ä¸å¦ä¸ç»å¹é å¨å¹é çè¦æ¥ï¼æºï¼æ¶ï¼ç¦æ¢è§åä¼ä½¿ä¸ä¸ç»å¹é å¨å¹é çè¦æ¥ï¼ç®æ ï¼éé³ãç®æ è¦æ¥åæºè¦æ¥çequalå表ä¸çæ ç¾å称é½å¿ é¡»å ·æç¸åçæ ç¾å¼ã
å¨è¯ä¹ä¸ï¼ç¼ºå°æ ç¾å带æ空å¼çæ ç¾æ¯åä¸ä»¶äºãå æ¤ï¼å¦æequalæºè¦æ¥åç®æ è¦æ¥é½ç¼ºå°ååºçæææ ç¾å称ï¼åå°åºç¨ç¦æ¢è§åã
为äºé²æ¢è¦æ¥ç¦æ¢èªèº«ï¼ä¸è§åçç®æ åæºç«¯ é½ å¹é çè¦æ¥ä¸è½è¢«è¦æ¥ï¼å æ¬å ¶æ¬èº«ï¼ä¸ºçæ¥ç¦æ¢ãä½æ¯ï¼æ们建议éæ©ç®æ å¹é å¨åæºå¹é å¨ï¼ä»¥ä½¿è¦æ¥æ°¸è¿ä¸ä¼åæ¶å¹é åæ¹ãè¿å¾å®¹æè¿è¡æ¨çï¼å¹¶ä¸ä¸ä¼è§¦åæ¤ç¹æ®æ åµã
æ¥çæ¯è§årules
ä¸è§£éäºï¼èªå·±ç 究å®æ¹ææ¡£
alertmanagerçé容å¨å®è£ æ¹å¼æ¯
wget /prometheus/alertmanager/releases/download/v0..0/alertmanager-0..0.linux-amd.tar.gz
tar xf alertmanager-0..0.linux-amd.tar.gz
mv alertmanager-0..0.linux-amd /usr/local/alertmanager
vim /usr/lib/systemd/system/alertmanager.service
[Unit]
Description=alertmanager
Documentation=/prometheus/alertmanager
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/alertmanager/alertmanager --config.file=/usr/local/alertmanager/alertmanager.yml
Restart=on-failure
[Install]
WantedBy=multi-user.target
Alertmanager å®è£ ç®å½ä¸é»è®¤æ alertmanager.yml é ç½®æ件ï¼å¯ä»¥å建æ°çé ç½®æ件ï¼å¨å¯å¨æ¶æå®å³å¯ã
å ¶ä½æ¹å¼åä¸é¢ä¸æ ·
æ¥çæ¯Prometheusï¼æä¹åçå客éæåäºå®¹å¨å®è£ åé容å¨å®è£ çæ¹æ³ï¼èªå·±å»ç¿»é
ç¶åæ¯å¨prometheus.ymléä¿®æ¹ç¸å ³é ç½®
é¦å å»æalertmanagerç注éï¼æ¹æIPå ä½ è®¾ç½®ç端å£å·ï¼é»è®¤æ¯
æ¥çå¨rule_files: ä¸é¢åä¸è§åæ件çç»å¯¹è·¯å¾ï¼å¯ä»¥æ¯å ·ä½æ件åï¼ä¹å¯ä»¥æ¯*ï¼ä¹å¯ä»¥åå 级æ件ï¼*é»è®¤æ¯å ¨é¨å¹é
æ¥çæ¯è¢«çæ§é¡¹ç设置ï¼è¿é设置å®æå¯ä»¥å¨Prometheusç½é¡µéçtargetséçå¾å°
请注æï¼è¿é设置çåæ°ååè¦åruleè§åä¸è®¾ç½®çåæ°ååä¸æ¨¡ä¸æ ·ï¼å¦åä½ çprometheusæå¡ä¼æ æ³å¯å¨ï¼ç¶åæ¥é
å¦æä¸å¨ç¹å®çjobä¸è®¾ç½®scrape_intervalï¼ä¼å 级é«äºå ¨å±ï¼,åé»è®¤éç¨gobalä¸çscrape_interval
æå模æèç¹æ线ï¼æå¨å ³énode-exporteræè Cadvisor
docker stop node-exporter æè 容å¨ID
docker stop cadvisor æè 容å¨ID
æè æup{ { job='prometheus'}} == 1 设置æ1ï¼åå设置ï¼ä¸ç¨å ³ææå¡ï¼å°±å¯ä»¥ççåè¦æä¸æå
说æä¸ä¸ Prometheus Alert åè¦ç¶ææä¸ç§ç¶æï¼InactiveãPendingãFiringã
Inactiveï¼éæ´»å¨ç¶æï¼è¡¨ç¤ºæ£å¨çæ§ï¼ä½æ¯è¿æªæä»»ä½è¦æ¥è§¦åã
Pendingï¼è¡¨ç¤ºè¿ä¸ªè¦æ¥å¿ 须被触åãç±äºè¦æ¥å¯ä»¥è¢«åç»ãåæ/æå¶æéé»/éé³ï¼æ以çå¾ éªè¯ï¼ä¸æ¦ææçéªè¯é½éè¿ï¼åå°è½¬å° Firing ç¶æã
Firingï¼å°è¦æ¥åéå° AlertManagerï¼å®å°æç §é ç½®å°è¦æ¥çåéç»æææ¥æ¶è ãä¸æ¦è¦æ¥è§£é¤ï¼åå°ç¶æè½¬å° Inactiveï¼å¦æ¤å¾ªç¯ã
没æé ç½®åè¦æ¨¡æ¿æ¶çé»è®¤åè¦æ ¼å¼æ¯è¿æ ·ç
èç¹æ¢å¤åé®ä»¶åç¥æ¯è¿æ ·ç
åäºæ¨¡æ¿åæ¯è¿æ ·ç
è¿è¦éæ°æ å°æ¨¡æ¿æ件夹路å¾å°alertmanager容å¨éçç¸å¯¹è·¯å¾ï¼ç¶åéå¯alertmanagerï¼å½ç¶ï¼å¦æç®å½ä¸æ²¡æ模æ¿æ件ï¼åä¸æ¾ç¤º
åè¦æ¨¡æ¿
å¨alertmanager.ymlä¸ä¿®æ¹ç¸å ³è®¾ç½®
éå¯alertmanager
docker restart alertmanager
æç»ææä¸æ¯å¾å¥½
在suselinux上怎么部署zabbix
Linux环境下,Zabbix是一款流行的系统监控工具,它能够帮助我们有效地监控服务器状态,工作安排源码并及时发现系统问题。接下来,我们将探讨如何在SuseLinux上部署Zabbix。
首先,了解Zabbix的基础知识是必要的。Zabbix是一个企业级的开源监控解决方案,它由Zabbix服务器和可选的Zabbix代理组成。Zabbix服务器能够通过SNMP、Zabbix代理、ping和端口监控等多种方式,提供对远程服务器和网络状态的监控。而Zabbix代理则安装在需要监控的目标服务器上,主要负责收集与硬件或操作系统相关的信息,如内存和CPU使用情况。
Zabbix的主要特点包括:安装和配置简单、支持多语言、引擎源码导出免费且开源、能够自动发现服务器和网络设备、具备分布式监控和Web集中管理功能、无需代理即可监控、提供用户安全认证和灵活的授权方式、以及通过Web界面进行配置和查看监控结果等功能。此外,Zabbix还能通过email等途径发送通知。
在SuseLinux上部署Zabbix的步骤如下:
1. 准备环境
Zabbix的部署需要一个运行LAMP或LNMP的环境。确保所需的软件包已安装,例如mysql-dev、gcc、net-snmp-devel、curl-devel和perl-DBI等。
2. 安装Zabbix服务器和Web界面
下载Zabbix源码包,解压后,导入数据库表结构,并编译安装Zabbix服务器。
3. 配置数据库
为Zabbix数据库设置用户和权限,确保Zabbix服务器能够访问数据库。
4. 配置Zabbix服务器和代理
编辑Zabbix服务器和代理的配置文件,指定数据库密码、监听IP和其他相关设置。
5. 启动Zabbix服务
启动Zabbix服务器和代理服务,并设置开机自启。
6. 访问Zabbix Web界面
通过浏览器访问Zabbix Web界面,按照提示完成安装和配置。
完成以上步骤后,即可开始使用Zabbix进行监控。后续,我们可以进一步学习如何配置客户端监控、创建监控模板以及自定义监控服务。通过这些步骤,我们能够在SuseLinux上成功部署Zabbix,从而提高系统管理的效率和安全性。
记录一次zabbix6.0 server和agent安装并部署监控
本文详细记录了如何安装与部署Zabbix6.0服务器和agent。首先,确保需要安装的依赖如mysql版本8.0及以上、Nginx和PHP在服务器上可用。若未安装满足版本的mysql,可以选择使用低版本的Zabbix。其次,完成mysql、Nginx与PHP部署,并通过浏览器访问服务器ip以验证部署是否成功,注意检查服务器端口状态。
接着,介绍Zabbix服务器的安装步骤。需根据官方说明,在服务器上下载并解压source安装包,选择TLS长久维护版进行安装。针对可能出现的源码安装报错,如在zabbix-6.0./src/libs/zbxeval目录中修改第行for循环语句的格式,以及解决数据库连接问题时关闭SELinux以执行setenforce 0命令,确保服务器通过ip访问初始化页面。若遇到中文乱码问题,将楷体字体文件从windows的C:\Windows\Fonts复制至linux的/data/web/assets/fonts目录下。
agent的安装与部署是安装过程的一部分。在服务器上下载agent,按照官方指引进行安装与配置。验证agent连通性的步骤,包括通过服务端观察agent日志确保其状态正常运行。
为了实现自动化主机注册,需要在server端配置自动注册规则。在server管理页面左侧选择配置-动作-自动注册动作,创建新的动作,根据界面指示完成配置,以实现自动在主机列表中添加agent。
网络工程师的zabbix之旅(实战) -- zabbix_server5.0安装部署
在开始网络工程师的zabbix_server5.0安装部署之旅前,确保你的系统环境如下:CentOS 7.0操作系统
2个CPU
8GB内存
GB磁盘空间
建议具备网络访问权限以获取最新软件包
在安装前,需进行一些基础设置:临时关闭并后续永久关闭selinux
关闭防火墙服务,禁用开机自启,并确认服务状态
接下来是zabbix_server5.0的正式安装步骤:从阿里云提供的centos7.0和zabbix5.0源码中安装zabbix rpm包,并清除yum缓存
通过yum安装zabbix-server-mysql和zabbix-agent
分两步安装zabbix前端:
安装CentOS SCL
修改zabbix.repo配置文件,启用zabbix-frontend
安装mariadb数据库,设置开机自启,检查服务状态
初始化数据库,创建zabbix库、用户及权限
导入zabbix数据库,配置相关配置文件,如DBPassword和timezone
启动相关服务并设置开机自启
通过浏览器访问"http://服务器ip/zabbix"进行web页面配置
安装完成后,可能会遇到一个字体问题,解决方法是将simhei.ttf字体文件从家用电脑移到服务器的/usr/share/zabbix/assets/fonts目录,并进行相关文件操作。 希望本文能为网络工程师提供清晰的指导,如有疑问,请随时交流。作者致力于开源分享,期待你的支持与反馈,每一份鼓励都将推动我不断改进。感谢关注、阅读和可能的打赏,你的认可是我创作的动力。