zabbix

架构设计 | 分布式体系下,服务分层监控策略

老子叫甜甜 提交于 2020-10-24 22:47:08
本文源码: GitHub·点这里 || GitEE·点这里 一、分布式故障 分布式系统的架构,业务开发,这些在良好的思路和设计文档规范之下,是相对来说好处理的,这里的相对是指比较分布式架构下生产环境的突然故障。 在实际的开发中,有这样一个很妖娆的情况:越是核心复杂的业务,越是担心出问题,越容易出问题。 所以当核心服务的链路出现故障时,如何快速定位问题就是一件很头疼的事情,尤其是一些特殊情况下,问题很模糊很难复现,外加客户或者领导催促,这种场景心里阴影是大部分开发都有的。更有甚者,可能问题发生的切入点的开发是某人负责的,实际问题是发生在请求链路的其他服务上,这种情况遇多了,甩锅水平会直线上升。 越是复杂的系统,越是经验丰富的开发或者运维,对监控系统就越是有执念,尤其是全链路的监控,底层,网络,中间件,服务链路,日志观察预警等,用来快速定位问题,省时省心。 二、全链路监控 1、监控层次 在分布式系统中,需要监控的体系和层次极其复杂,通常整体上划分为三个层次:应用服务,软件服务,硬件服务。 通常情况,运维管理硬件服务,开发管理应用和软件服务。 2、应用服务 应用层为开发的业务逻辑服务,也是最容易突发问题的一个层面,当在一家公司待久了,因为开发过多个业务线,就会感觉自己不是开发,是个打杂的,每天都要分出大量时间处理各种问题。应用层监控涉及下面几个核心模块: 请求流量 任何服务

技术同步

不羁岁月 提交于 2020-10-16 10:30:09
1、rabbitmq集群工作原理 2、elasticsearch集群工作原理 3、nginx高可用 4、zabbix监控哪些项 5、redis持久化、集群模式 6、activemq集群模式 7、mq软件对比 8、MySQL高可用 来源: oschina 链接: https://my.oschina.net/u/4419179/blog/4496842

Zabbix技术交流|安装netdata监控服务器

陌路散爱 提交于 2020-10-15 06:24:34
执行下列命令,安装netdata依赖包 yum install zlib-devel gcc make git autoconf autogen automake pkgconfig 安装netdata,需要root wget http://firehol.org/download/netdata/releases/v1.0.0/netdata-1.0.0.tar.gz 解压netdata的安装包 接用浏览器访问: http://服务器:19999 即可进入主界面 来源: oschina 链接: https://my.oschina.net/u/4375265/blog/4658367

LLD处理重复对象

[亡魂溺海] 提交于 2020-10-12 04:04:25
Zabbix LLD可以有效发现规则性对象,节省手动添加对象时的重复性操作,但如果是相同的对象,监控项原型在生成的时候就会不可避免的冲突。以下是我在处理该问题上用到的一个小技巧: 下面以发现tuxedo中间件psr信息为例: tmadmin进入tuxedo命令行,psr查看节点的进程的信息。 图一 如图一所示,Prog Name列有重复的值,如果ZABBIX自动发现规则想使用Prog Name列内容作为监控项原型名称,就会不可避免地出现冲突现象。 图二是比较常规的一个生成JSON的shell脚本,该脚本会把{#PROG_NAME}作为键、Prog Name列内容作为值存到JSON中以供ZABBIX LLD使用,JSON内容见图三。 图二 图三 如果我就是想用ProgName作自动发现,那可以在现在JSON的基础上再一个键值用来区分ProgName,比如前面图一中的ID列就不存在重复值,我们可以用该列作值去区分ProgName,这有点像数据库的联合主键。如图四,JSON内容见图五 图四 图五 这样的话LLD冲突的监控项原型名称问题就解决了。如图六; 同理:如果两个JSON键值还冲突的话,可以再加一个键值区分。 图六 来源: oschina 链接: https://my.oschina.net/u/4271740/blog/4560015

一键部署zabbix-3.4.4

微笑、不失礼 提交于 2020-10-09 18:50:58
一键部署zabbix-3.4.4 一、编写一键部署脚本 二、加执行权限 三、运行脚本 四、初始化zabbix并登录 此次使用的环境是 : CentOS Linux release 7.5.1804 (Core) 使用的软件包:nginx-1.12.2.tar.gz、zabbix-3.4.4.tar.gz 主机准备: 主机名 IP地址 端口 备注 zabbix 192.168.1.2 10051 zabbix监控服务器 一、编写一键部署脚本 vim zabbix.sh #! /bin/bash ip = ` ifconfig | awk '/inet 192/{print $2 }' ` name = ` hostname ` #安装软件包及依赖包! yum -y install gcc pcre-devel openssl-devel yum -y install php php-mysql php-fpm openldap openldap-devel php-ldap yum -y install mariadb mariadb-devel mariadb-server yum -y install net-snmp-devel curl-devel php-gd php-xml php-bcmath php-mbstring systemctl enable --now

zabbix监控交换机流量详细方法

风格不统一 提交于 2020-10-08 04:24:43
首先需要了解交换机端口速率的计算方法: 端口入方向的实际流量速率(bps)=8×[ifHCInOctets(T2时刻的值)-ifHCInOctets(T1时刻的值)]/(T2-T1) 端口出方向的实际流量速率(bps)=8×[ifHCOutOctets (T2时刻的值)-ifHCOutOctets (t1时刻的值)]/(T2-T1) 假设T2-T1的值为1,则8×[ifHCInOctets(T2时刻的值)-ifHCInOctets(T1时刻的值)]即为端口流量速率。 查看交换机端口信息: 以GigabitEthernet1/0/8端口为例:需要获取OID和健值 配置zabbix监控端口,我的版本是Zabbix 4.0.6: 1、配置GigabitEthernet1/0/8端口入方向流量 2、创建图形观察,取值是否递增,每秒递增的差值即端口每秒经过的流量字节: 3、获取每秒的递增的差值并转换成比特: 清除历史重新观察: 4、下载文件并测试效果如图: GigabitEthernet1/0/8出去的流量速率配置截图略,自行克隆和修改对应的健值和OID即可,完整图形大致如下: ———————————————— 版权声明:本文为CSDN博主「zdl244」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接: https://blog.csdn.net

Grafana安装与配置

烈酒焚心 提交于 2020-10-07 07:31:18
zabbix 基于 WEB 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案图形,但是 zabbix 图形需要创建,并且 zabbix 图形组合比较麻烦。而 Grafana 创建相对简单,并且可以实时直接调用 zabbix 系统的数据,并不把数据存在本地,因此占用资源较少。 Grafana 优化了图形的展现,可以用来做监控大屏。 下载地址: 实战环境: 1、 zabbix server 已经安装创建完毕 2、 Grafana 版本 grafana-6.3.2 安装启动: 下载 grafana 软件并上传到服务器 yum -y localinstall grafana-6.3.2-1.x86_64.rpm (自动安装依赖包) 配置文件位置: /etc/grafana/grafana.ini 修改端口 4000 ,默认为 3000 。 systemctl enable grafana-server# 开机自动启动 systemctl start grafana-server# 启动 grafana 服务 验证: ps -auxf|grep grafana liuxian+ 1779 0.0 0.0 12320 1060 pts/1 S+ 17:35 0:00 \_ grep --color=auto grafana grafana 1358 0.5 0.3 2735208

Linux基础命令(一)

别等时光非礼了梦想. 提交于 2020-10-06 07:38:18
Linux是一个主要通过命令行来进行管理的操作系统 Linux系统的优势基因还是快速,批量,自动化,智能化地管理系统和处理业务 [root@localhost ~]# uname -r 2.6.32-754.el6.x86_64 Linux命令行结尾提示符有 # 和 $两种 [root@zabbix ~]# root为用户名,zabbix为主机名称,~表示当前路径为用户家目录,#表示当前用户为root [root@zabbix ~]# whoami root [root@zabbix ~]# hostname zabbix [root@zabbix ~]# pwd /root Linux的命令提示符由PS1环境变量控制 [root@zabbix ~]# echo $PS1 [\u@\h \W]\$ [root@zabbix ~]# set|grep PS1 PS1='[\u@\h \W]\$ ' 这里环境变量PS1的值可以通过全局配置文件/etc/bashrc或/etc/profile进行调整 Linux常用远程连接工具:xshell,SecureCRT,putty,Xmanager,mobaxterm Linux系统常用快捷键: tab 命令和路径补全 ctrl+a 光标移动到命令行首 ctrl+e 光标移动到命令行尾 ctrl+k 删除光标处到行尾的字符 ctrl+u

Zabbix 4.0 API 实践,主机/主机群组 批量添加模板和删除模板

北城余情 提交于 2020-10-02 21:57:40
场景 我们日常在管理Zabbix 的时候,经常会需要批量添加模板和批量删除模板,Zabbix页面是提供的批量链接的功能,但是它链接的也只是当前页的主机,我们想扩展这个功能,在链接的时候,可以批量链接整个主机群组,也可以指定链接某台主机,也可以指定链接包含某个字符的多个主机。 提供的功能 查询模板id select_template(self, template_name) 查询主机群组id select_group(self, group_name) 查询指定主机id select_host(self, hostname='', groupid=''): 当需要查询所有的主机id时 online_zabbix.select_host() 当需要查询指定主机名称id时 online_zabbix.select_host(name) 当需要查询指定主机群组的指定主机名称id时 online_zabbix.select_host(name,groupid) hostslist = online_zabbix.select_host('biz') print(hostslist) 主机链接模板 hosts_add_template(self, template_name, hostname, group_name='') 当我们想所有的主机链接某个模板,写法 为 online_zabbix

CentOS7 最小化系统安装操作指引

懵懂的女人 提交于 2020-10-02 13:42:21
准备好Centos 系统安装盘,电脑开机按F12(dell电脑,不同品牌主机进BIOS方式不一样)进入BIOS配置界面,选择从光盘启动。 1.选择 install centos 7 2.按默认选择语言 3.进行系统分区 4.可以选择系统自动分区或手动分区,我们选择手动分区 5.至少需要建立以下几个分区: 引导挂载点 /boot ,一般配置为200M就足够 交换挂载点 /swap,一般配置为内存的2倍,也可视服务器应用配置不同大小swap区 主挂载点 / ,剩余所有空间 6.划分无误后,点击 done 确定 7.分区好了后,选择最小化安装 选择最小化安装,可以勾选连接库及开发工具,也可以不选,后续再安装 8.安装过程中可以配置root密码 9.安装完后重启电脑 Zabbix5.0企业级分布式监控系统: 精讲与企业应用 来源: oschina 链接: https://my.oschina.net/u/4414119/blog/4658340