毕业论文Zabbix企业级分布式系统Word下载.docx
- 文档编号:21694734
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:19
- 大小:954.78KB
毕业论文Zabbix企业级分布式系统Word下载.docx
《毕业论文Zabbix企业级分布式系统Word下载.docx》由会员分享,可在线阅读,更多相关《毕业论文Zabbix企业级分布式系统Word下载.docx(19页珍藏版)》请在冰豆网上搜索。
多种应用构成复杂的IT业务系统,保证这些资源的正常运转,是一个公司IT部门的职责。
而要让这些应用能够稳定地进行,则需要专业IT人员进行设计、架构、维护和调试。
在这个过程中,为了及时掌控基础环境和业务应用系统的可用性,需要获取各个组件的运行状态,如CPU的利用率、系统的负载、服务的运行、端口的连通、带宽流量、网站访问状态码等信息。
而这一切都离不开监控系统。
2监控系统的开源软件及原理探究
2.1监控系统的开源软件
2.1.1流量监控
MRTG:
是一套可用来绘制网络流量图的软件,由瑞士奥尔滕的TobiasOetiker与SaveRand所开发,以GPL授权;
Cacti:
是一套基于PHP、MySQL、SNMP和RRDtool开发的网络流量监测工具,他通过snmpget来获得数据,使用RRDtool绘图,但使用者无需了解RRDtool复杂的参数;
SmokePing:
主要用来监视网络性能,包括常规的Ping、WWW服务器性能、DNS查询功能、SSH性能等;
Graphite:
是一个用于采集网站实时信息并进行统计的开源项目。
Graphite服务支持每分钟4800次更新操作,采用简单文本协议,具有绘图功能,其即插即用的功能可方便的用于任何需要监控的系统上。
2.1.2性能告警
Nagios:
:
是一个企业级的监控系统,可监控服务的运行状态和网络信息等,并能监听所指定的本地或远程主机参数以及服务,同时提供异常告警通知功能等;
ZenossCore:
是开源企业级IT管理软件,它允许IT管理员依靠单一的web控制台来监控网络架构的状态和健康度;
Ganglia:
是一个跨平台的、可扩展的、高性能的分布式监控系统,如集群和网格;
OpenTSDB;
是HBase存储所有时序(无需采样)的数据,来构建一个分布式、可伸缩的时间序列数据库;
Zabbix:
是一个分布式监控系统,支持采集方式和采集客户端,有专用的Agent(代理),也可以支持SNMP、IPMI、JMX、Telnet、SSH等多种协议,它将采集到的数据存放到数据库,然后对其进行分析整理,达到条件触发告警。
其灵活的扩展性和丰富的功能是其他监控系统所不能比的。
2.2Zabbix的原理探究
监控系统需要对故障数据进行分析汇总,从故障中分析出现的概率,从而可以积累经验,避免以后出现类似的问题。
例如,由于机器硬件导致的故障。
其概率有多大,问题解决的概率有多大,哪些部件最容易出问题,出问题的影响概率多大,问题解决的概率有多大。
从监控的数据中就可以分析并发现相关数据,在此基础上进行分析汇总,可以整理出相应的对策和相应的技术应急方案。
常见的监控系统性能指标如表2-1所示:
表2-1常见的监控系统性能指标
3Zabbix特点及运行流程
3.1Zabbix的特点
(1)支持自动发现网络设备和服务器
(2)支持分布式监控
(3)可设置报警阈值
(4)可通过多种方式进行数据收集
(5)可指定的报警方式
(6)实时的绘图功能
(7)通过Web监控系统与设置系统
3.2ZabbIx的运行流程
Zabbix的运行流程可以用图3-1来表示:
图3-1Zabbix运行流程
4总体设计
4.1设计思路
公司的规模在逐渐扩大,用户的需求越来越多,Zabbix适合中小型企业、大中型企业的用户使用。
单个的server节点可以支持上万台设备,每秒可处理1.5万次请求,理论上可支持5万台设备。
随着公司中设备的逐渐增加,人工手动检测已经越来越麻烦,而且人为检测错误率会增加,而自动化监控便于检测,减少错误率、安全可靠。
可以针对性的进行实时查看,监控系统及主机状态、CPU负载、磁盘使用率等。
搭建Zabbix-server服务器,利用电脑查看UI界面,进行操作以及服务配置。
服务器把监控到的数据存储在数据库中,服务端利用10051端口主动获取监控内容,客户端被监控。
服务器把数据发送到计算机,利用UI界面进行查看分析。
参考图4-1:
图4-1设计思路
4.2环境参数
如表4-2所示,各个服务器的名称,操作系统,服务器选型,软件包版本等
表4-2设备选型及参数
主机名称
操作系统
IP地址规划
设备选型
软件包版本
UI
Windows7
192.168.100.99
PC:
联想x230
Zabbix-server
CentOS6.5
192.168.100.100
DellPowerEdgeR720
Php-5.3.3、mysql-5.1.73、
OpenIPMI2.0.16、Zabbix-2.0.12
Zabbix-agentd
192.168.100.101
Zabbix-2.0.12
5Zabbix安装环境及前期准备
5.1Zabbix安装环境
Zabbix服务器运行的环境为Linux(UNIX)+PHP+WebService+DataBase,这里的WebService可以为Nginx、Apache,Database可以为MySQL、Oracle、PostgerSQL等。
硬件需求与监控的机器数量和监控的数据量大小等有密切的关系,对于硬盘的要求,在实际环境中,可以采用虚拟机来搭建Zabbix监控系统环境。
在整个Zabbix监控系统的搭建和维护中,磁盘I/O、数据库性能将成为整个监控系统运行良好的关键因素。
Zabbix所在服务器的磁盘配置和Zabbix的性能与维护密切相关。
Zabbix-Server的数据库大小取决于NVPS(Numberofprocessedvaluespersecond/每秒处理的数值数),NVPS从总体上反映了处理速度、监控项的数目、监控的类型、取值间隔、History的保留时间和Trends的保留时间的关系。
Zabbix-Server对时间的精准要求比较高,时间对数据的计算等都有影响,因此,最好设置ntp自动时间同步,也可以用crontab进行同步。
Zabbix-Server尽量部署在核心业务所在的机房,要求各分节点的网络稳定。
另外,要考虑到网络流量问题,做好安全策略。
注意:
如果仅仅检测网络服务FTP、SSH、HTTP、DNS、LDAP,无需安装任何客户端,即可支持监控数据的获取。
5.2Zabbix服务器安装前期准备
在搭建Zabbix服务器之前,我们需要配置IP地址,并且确保互联网的连接正常,在之前,我们需要关闭防火墙并限制SELinux服务,因为是rpm包安装方式,所以我们需要搭建yum仓库。
[root@localhost~]#/etc/init.d/iptablesstop
iptables:
将链设置为政策ACCEPT:
filter[确定]
清除防火墙规则:
[确定]
正在卸载模块:
[root@localhost~]#setenforce0
[root@localhost~]#cd/etc/yum.repos.d/
[root@localhostyum.repos.d]#ll
drwxr-xr-x.2rootroot409610月1922:
06bak
-rw-r--r--.1rootroot200612月12016CentOS6-Base-163.repo
6安装Zabbix服务器
6.1搭建LAMP平台、安装Zabbix依赖包
安装httpd、MariaDB(mysql-server)mysqlmysql-develphpphp-mysql。
搭建Zabbix环境需要很多依赖包,在其中有的起解析作用,有的会为zabbix提供服务。
Php测试如下图6-1:
[root@localhost~]#yum-yinstallhttpdmysql-servermysqlmysql-develphpphp-mysql
[root@localhost~]#yum-yinstallgccgcc-c++autoconfhttpd-manualmod_perlmod_auth_mysqlphp-gdphp-xmlphp-ldapphp-pearphp-xmlrpcmysql-connector-odbclibdbi-dbd-mysqlnet-snmp-develcurl-develunixODBC-develjava-developenldapopenldap-develphp-pdoncurses-devel
[root@localhost~]#yum-yinstallOpenIPMIOpenIPMI-devel
[root@localhost~]#yum–yinstallphp-bcmathphp-mbstring
[root@localhost~]#cd/var/www/html
[root@localhosthtml]#vimtest.php
<
?
php
phpinfo()
>
图6-1Apache解析PHP页面
6.2整合LAMP架构
配置php环境,修改php.ini,目的是zabbix的web代码要求这样配置才能正常运行,启动httpd和mysqld服务并设置成开机自启。
[root@localhost~]#vim/etc/php.ini
440max_execution_time=300
449max_input_time=300
457memory_limit=128M
729post_max_size=32M
946date.timezone=Asia/Shanghai
1586mbstring.func_overload=2
[root@localhost~]#sed-i'
276s/#//'
/etc/httpd/conf/httpd.conf
[root@localhost~]#servicehttpdrestart
停止httpd:
正在启动httpd:
[root@localhost~]#servicemysqlrestart
mysql:
未被识别的服务
[root@localhost~]#servicemysqldrestart
停止mysqld:
正在启动mysqld:
[root@localhost~]#chkconfighttpdon
[root@localhost~]#chkconfigmysqldon
6.3部署Zabbix
在编译安装Zabbix之前,首先安装Zabbix相关依赖包,然后我们需要创建用户并给其相应的权限然后进行相应的安装,安装Zabbix可使用源码安装或者rpm安装,编译安装是为了根据本身需要,灵活制定软件功能。
下面为源码安装、Zabbix的参数设置,在做配置文件之前要做一个备份,以防万一做错。
[root@localhost~]#useradd-s/sbin/nologinzabbix
[root@localhost~]#mkdir/etc/zabbix/var/log/zabbix
[root@localhost~]#chownzabbix.zabbix/var/log/zabbix/
[root@localhost~]#tarxfzabbix-2.0.12.tar.gz-C/usr/src/
[root@localhost~]#cd/usr/src/zabbix-2.0.12/
[root@localhostzabbix-2.0.12]#./configure--prefix=/usr/local/--sysconfdir=/etc/zabbix/
--enable-server--enable-proxy--enable-agent--enable-ipv6--with-mysql=/usr/bin/mysql_config--with-net-snmp--with-libcurl--with-openipmi--with-unixodbc--with-ldap--enable-java&
&
make&
makeinstall
[root@localhostzabbix-2.0.12]#cpmisc/init.d/fedora/core/zabbix_*/etc/init.d/
[root@localhostzabbix-2.0.12]#ll-d/etc/init.d/zabbix_*
-rwxr-xr-x.1rootroot21706月1611:
40/etc/init.d/zabbix_agentd
-rwxr-xr-x.1rootroot21816月1611:
40/etc/init.d/zabbix_server
[root@localhostzabbix-2.0.12]#cd/etc/zabbix/
[root@localhostzabbix]#cpzabbix_server.confzabbix_server.conf.origin
[root@localhostzabbix]#vimzabbix_server.conf
39LogFile=/var/log/zabbix/zabbix_server.log
87DBName=zabbix//数据库名称
103DBUser=zabbix
112DBPassword=zabbix
120DBSocket=/var/lib/mysql/mysql.sock//根据实际填写路径
128DBPort=3306
77DBHost=localhost
6.4创建Zabbix_agentd服务
我们使用Zabbix监控服务器信息,所以需要安装agentd服务,agentd的作用就是获得host数据,然后将收集到的数据发送给server,或者是server主动来拿取数据。
[root@localhostzabbix]#ls
[root@localhostzabbix]#cpzabbix_agentd.confzabbix_agentd.conf.bak
[root@zabbixzabbix]#vimzabbix_agentd.conf
21LogFile=/var/log/zabbix/zabbix_agentd.log
82Server=127.0.0.1,192.168.100.100//服务端IP
123ServerActive=192.168.100.100:
10051//服务端IP,端口固定
217Include=/etc/zabbix/zabbix_agentd.conf.d///自定义的agentd配置文件存放路径
228UnsafeUserParameters=1//自定义脚本功能,1为开启,默认0为关闭
6.5建立监控数据库
建立监控数据库,创建数据库root用户并配置密码,如果创建Zabbix的数据库字符集不为UTF8,会导致web界面在切换到中文环境时出现乱码。
且我们需要在创建完数据库后导入Zabbix_server的数据库。
并测试能否通过php访问数据库,如下图6-2:
[root@losthost~]#cd/usr/src/zabbix-2.0.12/
[root@localhostzabbix-2.0.12]#mysqladmin-urootpassword'
123123'
[root@localhostzabbix-2.0.12]#mysql-uroot-p123123
mysql>
createdatabasezabbixcharactersetutf8;
QueryOK,1rowaffected(0.13sec)
grantallonzabbix.*tozabbix@localhostidentifiedby'
zabbix'
;
QueryOK,0rowsaffected(0.09sec)
flushprivileges;
QueryOK,0rowsaffected(0.02sec)
exit
[root@localhostzabbix-2.0.12]#mysql-uzabbix-pzabbixzabbix<
database/mysql/schema.sql
database/mysql/images.sql
database/mysql/data.sql
[root@localhosthtml]#vimtest.php
$link=mysql_connect('
localhost'
'
root'
);
if($link)echo"
恭喜你,数据库连接成功啦!
!
"
mysql_close();
图6-2PHP访问数据库
6.6部署PHP页面
部署PHP页面文件,并给其相应的权限,访问(192.168.100.100/zabbix)并部署:
如果在配置web时提示某一项不满足安装配置要求,需要修改对应的参数后重启zabbix_server和httpd服务即可,如图6-3所示:
[root@localhostzabbix-2.0.12]#cp-rffrontends/php//var/www/html/zabbix
[root@localhostzabbix-2.0.12]#chown-Rapache.apache/var/www/html/zabbix/
图6-3配置PHP页面并进行测试
6.7锁定安装界面并启动Zabbix服务
为了安全起见,锁定PHP安装界面,配置权限,使其他人不能随意修改,启动Zabbix_server、Zabbix_agentd服务,启动服务之后,一定要看一下进程,确定服务端口开启,如果没有,检查配置文件,确保端口开启以后再开始其他操作。
如图6-4所示:
[root@localhost~]#cd/var/www/html/zabbix/
[root@localhostzabbix]#mvsetup.phpsetup.php.lock
[root@localhostzabbix]#chmod600setup.php.lock
图6-4启动Zabbix服务并进行网页登陆
在Zabbix-server其他参数配置正确的情况下,如果提示”zabbixserverisrunningnovalus”的情况下,进入zabbix-server系统进行调试,看端口是否开启(server-10051,agented-10050),如果没有开启,有可能是数据库连接问题。
7被监控端配置
Zabbix客户端的采集方式为Agent、SNMP等,在这里采用的是Agent方式对服务器进行监控。
7.1前期准备
在安装Zabbix-agented之前,需要给防火墙配置规则或者直接关闭防火墙(iptables-F),关闭SELinux服务。
7.2安装Zabbix_agentd代理程序
Zabbix-agented采用的是rpm包安装,因为这种方式比较简单,如果需要同时对1000台机器进行监控,就需要在1000台机器上安装zabbix-agented,对于这种规模的安装,可以采用自动化配置工具就是最佳的选择。
在安装zabbix-agented之前我们需要安装解析软件gcc、gcc-c++、make等工具,创建zabbix用户且分配权限。
[root@localhost~]#useradd-s/sbin/nologinzabbix
[root@localhost~]#mkdir/etc/zabbix/var/log/zabbix
[root@localhost~]#chownzabbix.zabbix/var/log/zabbix/
[root@localhost~]#tarxfzabbix-2.0.12.tar.gz-C/usr/src/
[root@localhost~]#cd/usr/src/zabbix-2.0.12/
[root@localhostzabbix-2.0.12]#./configure--prefix=/usr/local/zabbix/--sy
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 Zabbix 企业级 分布式 系统