自动化运维工具之Zabbix分布式监控应用(五)

发布时间:2020-08-06 08:04:39 作者:OpenSamlee
来源:网络 阅读:1137

分布式监控概述
proxy and node
Zabbix常用3种架构
-->Server-agent
-->Server-Node-agent
-->Server-Proxy-agent

Zabbix能高效地监控分布式IT架构
在大型环境中Zabbix提供两种解决方案
-->使用代理(proxy)
-->使用节点(node)
Proxy or Node?
-->代理(proxy)用于本区域数据收集,并将数据发送给server
-->节点(node)提供完整的Zabbix server用以建立分布式监控中的层级



Proxy
Node
Lightweight
Yes
No
GUI
No
Yes
Works independently
Yes
Yes
Easy maintenance
Yes
No
Automatic DB creation
Yes
No
Local administration
No
Yes
Ready for embedded hardware
Yes
No
One way TCP connections
Yes
Yes
Centralised configuration
Yes
No
Generates notifications
No
Yes


Proxy模式与Node模式

Node本身是一台server,它有完整的Web页面,完整的数据库,它将数据源源不断传送给Master。

Proxy只有一个proxy的daemon进程,Proxy也有自己的数据库,但它的数据库只会保存一定时间的数据,它与Master通信是将一批信息打包后发送到Master,Master将这些数据merge入Master数据库。

Master-Proxy相比Master-Node的有点有以下:

-->proxy压力小,数据库只存储一定时间数据;

-->Master压力变小,数据不是源源不断获取,减少IO压力;

-->架构更清晰,易维护;


Server-Node-Client特性

--解决host过多时单台Server面临性能瓶颈的问题



-->使用多个instance

-->每个instance是独立的一套zabbix,有database和Frontend(optional)

-->支持热插拔,Node和Server的连接可以随时断开,但不影响Node的正常运行。

-->Node定时给Server发送configuration,history,event

-->Server定时给Node发送configuration

-->所有配置变更只能在Node节点操作,不能在Server操作。

-->支持树状结构,Node又可以是个Server


Server-Proxy-Client工作特性

--Proxy不会向Server同步configuration,只会接收

--Proxy的数据库定时会将数据传送给Server,Proxy本地数据库只保存最近没有发送的数据


配置zabbix_proxy服务器如下:

(1)配置mysql数据库如下:

mysql> CREATE DATABASE zabbix_proxy CHARACTER SET utf8;
mysql> GRANT ALL ON zabbix_proxy.* TO 'zbxuser'@'172.16.%.%' IDENTIFIED BY 'redhat';
mysql> FLUSH PRIVILEGES;

(2)安装zabbix组件

# ls
zabbix-2.0.8-3.el6.x86_64.rpm        zabbix-proxy-mysql-2.0.8-3.el6.x86_64.rpm
zabbix-proxy-2.0.8-3.el6.x86_64.rpm
# yum -y localinstall *.rpm

(3)创建zabbix_proxy表

# mysql -uzbxuser -predhat -h272.16.100.3 zabbix_proxy< /usr/share/doc/zabbix-proxy-mysql-2.0.8/create/schema.sql

(4)配置zabbix_proxy配置文件如下:

# cat /etc/zabbix/zabbix_proxy.conf | grep -E '(Server|DBHost|DBName|DBUser|DBPassword)'
Server=172.16.100.2
Hostname=172.16.100.101
DBHost=172.16.100.3
DBName=zabbix_proxy
DBUser=zbxuser
DBPassword=redhat

(5)启动zabbix-proxy服务

# service zabbix-proxy  start

(6)在zabbix web interface中添加proxy:

Administration-->GM-->proxies[create proxy]

自动化运维工具之Zabbix分布式监控应用(五)

(7)在proxy下的被监控主机的zabbix_agentd.conf配置,如下所示:

vim /etc/zabbix/zabbix_agentd.conf 
Server=172.16.100.101  --修改为proxy地址
ServerActive=172.16.100.101
UserParameter=memory.free,/usr/bin/free |awk '/^Mem:/{print $4}'
UserParameter=memory.usage[*],/bin/cat /proc/meminfo | awk '/^$1:/{print $$2}'

重启agent服务
# service zabbix-agent restart

(8)在zabbix web interface中创建主机及item如下

自动化运维工具之Zabbix分布式监控应用(五)

自动化运维工具之Zabbix分布式监控应用(五)






zabbix-agent在Windows环境内客户端的安装与管理
Windows环境内客户端的安装
1)在目标机器上C:\windows目录下新建一个目录,如zabbix-->(bin/conf/logs)目录;

2)复制(zabbix_agents_2.0.8.win)文件至创建的目录上;

3)在新建的logs目录中新建一个zabbix_agentd.log文件;

如下所示:

自动化运维工具之Zabbix分布式监控应用(五)

自动化运维工具之Zabbix分布式监控应用(五)

自动化运维工具之Zabbix分布式监控应用(五)

4)配置zabbix_agentd.win.conf文件如下选项:

LogFile=c:\Windows\zabbix\logs\zabbix_agentd.log
Server=172.16.100.101
Hostname=Windows Host

5)在目标机器上进入CMD界面;
6)在CMD界面进入新建的目录:cd \windows\zabbix\bin;
7)输入以下命令进行安装:

>cd c:\WINDOWS\zabbix\bin
>zabbix_agentd.exe -c c:\WINDOWS\zabbix\conf\zabbix_agentd.win.conf -i

8)在"运行"输入 "services.msc",在里面找到"ZABBIXAGENT",并启动服务。


9)最后在zabbix web interface如下:

自动化运维工具之Zabbix分布式监控应用(五)

自动化运维工具之Zabbix分布式监控应用(五)

自动化运维工具之Zabbix分布式监控应用(五)

自动化运维工具之Zabbix分布式监控应用(五)


10)在Zabbix中添加windows网络流量监控
(1)在客户端获取网卡参数列表:

>typeperf -qx | find"Network Interface" | find "Bytes"

自动化运维工具之Zabbix分布式监控应用(五)

(2)编辑目标机器中的zabbix_agentd.win.conf文件添加以下内容,并保存:

### Option:Network
PerfCounter=NetIn,"\Network Interface(AMD PCNET Family PCI Ethernet Adapter)\Bytes Received/sec",15
PerfCounter=NetOut,"\Network Interface(AMD PCNET Family PCI Ethernet Adapter)\Bytes Sent/sec",15

其中红色字部分取自于上图中的网卡参数,
蓝色的NetIn和NetOut是在Zabbix中配置时的Key。
最后的15是指取值时间,单位为“秒”
(3)在服务中或是用命令重启zabbix_agentd服务。
(4)进入Zabbix,在configurationa-->host-->windows host相关的host中(如Windows New)-->Applications-->create application 启名为“Network”;
(5)以上步骤新建完成,并save后,然后点击Items-->Create Item分别建立网络接口的IN和OUT,
下图中的Key就是配置文件中的值,Units为bps,但收到的值是Byte,所以要乘上8;

自动化运维工具之Zabbix分布式监控应用(五)

自动化运维工具之Zabbix分布式监控应用(五)

最后在相应的模板组中为这两个Item建上Graphs,如下图:

自动化运维工具之Zabbix分布式监控应用(五)

以上为自动化运维工具之Zabbix分布式监控应用所有内容。

推荐阅读:
  1. zabbix邮件监控配置
  2. 配置Zabbix监控之邮件报警、微信报警

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

server 监控 解决方案

上一篇:关于hadoop官方手册MapReduce的示例代码问题

下一篇:MongoDB Python驱动

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》