天道酬勤,学无止境

Linux基本入门

轻量级日志监控平台LOKI实施方案详解(日志的过滤展示及LOKI告警配置详解)

一、简 介 Loki是受Prometheus启发由Grafana Labs团队开源的水平可扩展,高度可用的多租户日志聚合系统。 开发语言: Google Go。它的设计具有很高的成本效益,并且易于操作。使用标签来作为索引,而不是对全文进行检索,也就是说,你通过这些标签既可以查询日志的内容也可以查询到监控的数据签,极大地降低了日志索引的存储。系统架构十分简单,由以下3个部分组成 : * Loki 是主服务器,负责存储日志和处理查询 。 * promtail 是代理,负责收集日志并将其发送给 loki(只收集日志,不在本地进行运算) 。 * Grafana 用于 UI 展示。 只要在被监控服务器上安装promtail来收集日志然后发送给Loki存储,就可以在Grafana UI界面通过添加Loki为数据源进行日志查询(如果Loki服务器性能不够,可以部署多个Loki进行存储及查询)。作为一个日志系统不关只有查询分析日志的能力,还能对日志进行监控和报警 二、系 统 架 构 1、promtail收集并将日志发送给loki的 Distributor 组件 2、Distributor会对接收到的日志流进行正确性校验,并将验证后的日志分批并行发送到Ingester(存储) 3、Ingester 接受日志流并构建数据块,压缩后存放到所连接的存储后端 4、Querier(查询器)

2021-06-02 09:59:46    分类:博客    loki   elk   prometheus   Linux基本入门

通过python开发Prometheus的自定义exporter(通用版本)

背景 当Prometheus自带的exporter无法满足实际需求时,需要我们自定义开发监控项,本篇文章介绍通过python开发自定义的exporter 1.环境准备 yum install gcc libffi-devel python-devel openssl-devel -y # CentOS7 操作系统,自带python2.7 没有pip,需要手动安装 setuptools-41.1.0.post1.tar.gz tar -zxvf setuptools-41.1.0.post1.tar.gz cd setuptools-41.1.0.post1 python setup.py install pip-19.2.2.tar.gz tar -zxvf pip-19.2.2.tar.gz cd pip-19.2.2 python setup.py install pip install psutil -i https://pypi.tuna.tsinghua.edu.cn/simple/ pip install prometheus_client -i https://pypi.tuna.tsinghua.edu.cn/simple/ 2、exporter脚本编写 # -*- coding:utf-8 -*- import time import commands

2021-04-16 02:51:27    分类:博客    prometheus   监控   Linux基本入门

防火墙会话数监控取数脚本详解及部署说明(以H3C防火墙为例)

一、监控取防火墙会话数实现过程: 1、在一台机A(与防火墙设备数据连通性正常)上利用远程命令(expect)登录到防火墙设备,执行取数命令,重定向到机A的文本中2、根据实际情况过滤出需要的数据,利用zabbix_sender将数据发送到防火墙监控上 二、前期准备: 1、创建一个防火墙账户密码(只读),用于监控登录取数;2、获取取数命令。因厂家不一样,取数命令可能不一样,例如:DP防火墙获取会话数命令为:show session statisticH3C防火墙获取会话数命令为:display session statistics summary华为防火墙获取会话数命令为:display firewall session table3、手动登录后,执行获取命令,根据实际情况,编写过滤出需要获取数据的命令(一列的总和便为会话数总数) 三、机A上编写脚本 1、编写登录防火墙并取数的脚本/opt/aspire/product/zabbix/plugins/getfirewalld1.sh #!/bin/bash for IP in `cat /opt/aspire/product/zabbix/plugins/firewalld_iplist.txt|awk '{print $1}'`#获取文本的第一行作为防火墙IP,(将同品牌的防火墙及代理IP放在同一个文本中,第一行为防火墙IP

2021-04-16 02:42:03    分类:博客    zabbix   防火墙会话数   Linux基本入门

利用ZABBIX的snmptrap V1 V2及V3方式进行监控详细实例部署说明

概述 SNMPTrap监控主要用于设备发生故障时的主动通知的监控接收SNMP trap与查询启用SNMP的设备相反。 在这种情况下,信息发送自启用SNMP的设备并由Zabbix收集或“trapped”。 通常在某些条件更改时发送trap,并且代理通过端口162连接到服务器(相反的,代理端的161端口是用于查询代理的)。 使用trap可以检测在查询间隔期间发生的一些可能被查询数据遗漏的短期问题。 在Zabbix中接收SNMP trap旨在使用snmptrapd和内置机制之一来传递trap到Zabbix - 一个perl脚本或SNMPTT。 接收trap的工作流程: 1、snmptrapd 收到trap2、snmptrapd将trap传递给SNMPTT或调用Perl trap接收器3、SNMPTT或Perl trap接收器解析,格式化并将trap写入文件4、Zabbix SNMP trap读取并解析trap文件5、对于每个trap,Zabbix发现主机接口与接收的trap地址匹配的所有“SNMP trap”监控项。请注意,在匹配期间只使用主机接口中选定的“IP”或“DNS”。6、对于每个找到的监控项,将trap与“snmptrap[regexp]”中的regexp进行比较。 trap设置为all匹配项的值。如果没有7、找到匹配的监控项,并且有一个“snmptrap.fallback

2021-04-16 02:40:52    分类:博客    snmptrap   zabbix   Linux基本入门