Centos6.5 安装Zabbix3.4

目录


    • 前言

    • 编译安装

    • yum安装

    • zabbix深度了解

操作环境:VMware Workstation
操作系统:Centos 6.5

目录

前言
编译安装
yum安装
zabbix深度了解

操作环境:VMware Workstation
操作系统:Centos 6.5
前言

最近在学习Zabbix,发现这个监控系统对于初学者还真是不好装,期间遇到了好多问题,去网上搜了好长时间,也看了好多博客,最后终于安装成功,故把详细命令和遇到的一些坑给总结一下。以下介绍两种安装方式,分别是编译安装和yum安装

编译安装

1、获取zabbix安装包

#可去下面地址中去获取最新版本的Zabbix安装包,建议用迅雷下载而不用wget获取(wget获取速度太慢了,迅雷下载后用rz上传到Centos系统中)
#https://sourceforge.net/projects/zabbix/files/latest/download?source=files
#由于更新原因,现在最新的版本已经不是3.4.3。有些命令在粘贴复制的时候需要自己手动改版本号
#解压
tar -zxvf zabbix-3.4.3.tar.gz

2、安装MysqL5.6,由于Centos6.5默认安装的版本是5.1的,故要先卸载再安装5.6版本的

yum remove MysqL*


引导MysqL5.6的yum源

#vim /etc/yum.repos.d/MysqL.repo
#写入一下内容
[MysqL56]
name=MysqL 5.6 Community Server
baseurl=http://repo.MysqL.com/yum/mysql-5.6-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL

#vim /etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL
#导入gpgcheck文件,去官网复制然后粘贴,由于内容太长这里就不列出来了
#(https://dev.MysqL.com/doc/refman/5.6/en/checking-gpg-signature.html)

安装MysqL5.6

yum install MysqL-community-server

若有报错:warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY

gpg --import /etc/pki/rpm-gpg/RPM*
rpm --import /etc/pki/rpm-gpg/RPM*

编辑MysqL的配置文件并添加一下内容

#vim my.cnf

[MysqLd]
innodb_file_per_table=1

3、安装PHP5.6和Apache服务

2018-04-12补充说明

今天我测试了一下下面安装的PHP56 yum源(rpm 安装的latest.rpm),有点问题,我看了生成的三个repo文件,里面的mirrolist都是https的,于是我进浏览器测试访问,结果访问失败,故我把三个repo文件里面的https全部替换为http,再次测试就成功了。yum源也可以正常访问。若是有出现此类情况的网友可以参照这种方法解决。

#获取yum源
rpm -ivh http://repo.webtatic.com/yum/el6/latest.rpm

#安装下列所有包
yum -y install httpd PHP56w PHP56w-gd PHP56w-MysqLnd PHP56w-bcmath PHP56w-mbstring PHP56w-xml PHP56w-ldap

#编辑PHP的ini文件(vim /etc/PHP.ini)并修改一下内容,注意date.timezone一定要写对,否则在配置完zabbix后,显示的界面全部报错
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1

#配置/etc/httpd/conf/httpd.conf
DocumentRoot "/var/www/html/zabbix"
<Directory "/var/www/html/zabbix">
ServerName 127.0.0.1
DirectoryIndex index.html index.html.var index.PHP

#设置web前端
mkdir /var/www/html/zabbix
cp -a zabbix-3.4.3/frontends/PHP/ /var/www/html/zabbix

#设置apache的执行和所有者
chown -R apache:apache /var/www/html/zabbix

#赋予可执行权限
chmod +x /var/www/html/zabbix/conf/

4、创建zabbix用户和组

groupadd zabbix
useradd -g zabbix zabbix


5、编译并安装zabbix

cd zabbix-3.4.3/

./configure --enable-server --enable-agent --with-MysqL --enable-ipv6 --enable-java --with-net-snmp --with-libcurl --with-libxml2 --with-unixodbc --with-ssh2 --with-openipmi --with-openssl --prefix=/usr/local/zabbix

#可能会出现以下的报错信息,建议直接全部安装
yum install gcc* MysqL-devel libxml2-devel net-snmP* java* curl-devel -y

#(1)configure: error: in `/zabbix/zabbix-3.4.3':
#configure: error: no acceptable C compiler found in $PATH
yum install gcc* -y

#(2)configure: error: MysqL library not found
yum install MysqL-devel -y

#(3)configure: error: LIBXML2 library not found
yum install libxml2-devel -y

#(4)configure: error: Invalid Net-SNMP directory - unable to find net-snmp-config
yum install net-snmP* -y

#(5)configure: error: Unable to find "javac" executable in path
yum install java* -y
#在装java*的时候,我看到要安装1个多G的东西,于是我就改成了javac*,发现后来编译还是出错,所以还是老老实实装java*吧,虽然装的包有点多,但至少能编译成功啊!

#(6)configure: error: Curl library not found
yum install curl-devel -y

#以上是在编译的过程中可能会报错的信息及解决方法,当然也可能还有其它报错这里没列举出来,有问题找度娘,没毛病!

#编译成功会出现
***********************************************************
* Now run 'make install' *
* *
* Thank you for using Zabbix! *
* <http://www.zabbix.com> *
***********************************************************

make install

6、修改配置文件zabbix_server.conf

#vim /usr/local/zabbix/etc/zabbix_server.conf

dbname=zabbix
DBUser=zabbix
DBPassword=zabbix

7、添加Zabbix服务器和Zabbix代理启动脚本

cp zabbix-3.4.3/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server
cp zabbix-3.4.3/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd

#修改 /etc/init.d/zabbix_server /etc/init.d/zabbix_agentd的BASEDIR=/usr/local/为BASEDIR=/usr/local/zabbix
sed -i 's#BASEDIR=/usr/local/#BASEDIR=/usr/local/zabbix#g' /etc/init.d/zabbix_{server,agentd}


8、创建zabbix数据库并把导入一些sql表

#进入数据库,刚装的MysqL密码为空,直接回车就行
MysqL
MysqL>CREATE DATABASE zabbix CHaraCTER SET utf8 COLLATE utf8_bin;
MysqL>GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'zabbix';
MysqL>SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| MysqL |
| performance_schema |
| zabbix |
+--------------------+
4 rows in set (0.00 sec)
MysqL>use zabbix;
MysqL>source zabbix-3.4.3/database/MysqL/schema.sql;
MysqL>source zabbix-3.4.3/database/MysqL/images.sql;
MysqL>source zabbix-3.4.3/database/MysqL/data.sql;
MysqL>show tables;
+----------------------------+
| Tables_in_zabbix |
+----------------------------+
| ackNowledges |
| actions |
| alerts |
| application_discovery |
| application_prototype |
| application_template |
| applications |
| auditlog |
| auditlog_details |
| autoreg_host |
| conditions |
| config |
| corr_condition |
| corr_condition_group |
| corr_condition_tag |
| corr_condition_tagpair |
| corr_condition_tagvalue |
| corr_operation |
| correlation |
| dashboard |
| dashboard_user |
| dashboard_usrgrp |
| dbversion |
| dchecks |
| dhosts |
| drules |
| dservices |
| escalations |
| event_recovery |
| event_tag |
| events |
| expressions |
| functions |
| globalmacro |
| globalvars |
| graph_discovery |
| graph_theme |
| graphs |
| graphs_items |
| group_discovery |
| group_prototype |
| groups |
| history |
| history_log |
| history_str |
| history_text |
| history_uint |
| host_discovery |
| host_inventory |
| hostmacro |
| hosts |
| hosts_groups |
| hosts_templates |
| housekeeper |
| httpstep |
| httpstep_field |
| httpstepitem |
| httptest |
| httptest_field |
| httptestitem |
| icon_map |
| icon_mapping |
| ids |
| images |
| interface |
| interface_discovery |
| item_application_prototype |
| item_condition |
| item_discovery |
| item_preproc |
| items |
| items_applications |
| maintenances |
| maintenances_groups |
| maintenances_hosts |
| maintenances_windows |
| mappings |
| media |
| media_type |
| opcommand |
| opcommand_grp |
| opcommand_hst |
| opconditions |
| operations |
| opgroup |
| opinventory |
| opmessage |
| opmessage_grp |
| opmessage_usr |
| optemplate |
| problem |
| problem_tag |
| profiles |
| proxy_autoreg_host |
| proxy_dhistory |
| proxy_history |
| regexps |
| rights |
| screen_user |
| screen_usrgrp |
| screens |
| screens_items |
| scripts |
| service_alarms |
| services |
| services_links |
| services_times |
| sessions |
| slides |
| slideshow_user |
| slideshow_usrgrp |
| slideshows |
| sysmap_element_trigger |
| sysmap_element_url |
| sysmap_shape |
| sysmap_url |
| sysmap_user |
| sysmap_usrgrp |
| sysmaps |
| sysmaps_elements |
| sysmaps_link_triggers |
| sysmaps_links |
| task |
| task_ackNowledge |
| task_close_problem |
| task_remote_command |
| task_remote_command_result |
| timeperiods |
| trends |
| trends_uint |
| trigger_depends |
| trigger_discovery |
| trigger_tag |
| triggers |
| users |
| users_groups |
| usrgrp |
| valuemaps |
| widget |
| widget_field |
+----------------------------+
140 rows in set (0.00 sec)

MysqL>\q

9、启动所有服务,并设置开机自启

#启动Apache服务
service httpd start

#启用MysqL服务
service MysqLd start
/etc/init.d/zabbix_server start
/etc/init.d/zabbix_agentd start

#设置开机自启
chkconfig httpd on
chkconfig MysqLd on
chkconfig --add /etc/init.d/zabbix_server
chkconfig --add /etc/init.d/zabbix_agentd
chkconfig zabbix_server on
chkconfig zabbix_agentd on

#查看端口号80、3306、10050(zabbix_agentd)、10051(zabbix_server)是否监听
ss -tnul

/init.d/zabbix_agentdchkconfigzabbix_serveronchkconfigzabbix_agentdon#查看端口号80、3306、10050(zabbix_agentd)、10051(zabbix_server)是否监听ss-tnul123456789101112131415161718

10、浏览器访问zabbix页面并进行初始化

默认用户名:Admin
密码:zabbix

yum安装

1、引导zabbix3.4的yum源

rpm-ivhhttp://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm1

2、安装MysqL5.6,由于Centos6.5默认安装的版本是5.1的,故要先卸载再安装5.6版本的

yumremoveMysqL*1

引导MysqL5.6的yum源

#vim/etc/yum.repos.d/MysqL.repo#写入一下内容[MysqL56]
name=MysqL5.6CommunityServer
baseurl=http://repo.MysqL.com/yum/mysql-5.6-community/el/6/$basearch/enabled=1gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL#vim/etc/pki/rpm-gpg/RPM-GPG-KEY-MysqL#导入gpgcheck文件,去官网复制然后粘贴,由于内容太长这里就不列出来了#(https://dev.MysqL.com/doc/refman/5.6/en/checking-gpg-signature.html)123456789101112

安装MysqL5.6

yuminstallMysqL-community-server1

若有报错:warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY

gpg--import/etc/pki/rpm-gpg/RPM*rpm--import/etc/pki/rpm-gpg/RPM*12

编辑MysqL的配置文件并添加一下内容

#vimmy.cnf[MysqLd]
innodb_file_per_table=11234

创建zabbix数据库并把导入一些sql表

#进入数据库,刚装的MysqL密码为空,直接回车就行
MysqL
MysqL>CREATEDATABASEzabbixCHaraCTERSETutf8COLLATEutf8_bin;
MysqL>GRANTALLPRIVILEGESONzabbix.*TOzabbix@localhostIDENTIFIEDBY'zabbix';
MysqL>SHOWDATABASES;
+--------------------+
|Database|
+--------------------+|information_schema||MysqL||performance_schema||zabbix|+--------------------+4rowsinset(0.00sec)1234567891011121314

3、安装PHP5.6和Apache服务

#获取yum源rpm-ivhhttp://repo.webtatic.com/yum/el6/latest.rpm#安装下列所有包yum-yinstallhttpdPHP56wPHP56w-gdPHP56w-MysqLndPHP56w-bcmathPHP56w-mbstringPHP56w-xmlPHP56w-ldap#编辑PHP的ini文件(vim/etc/PHP.ini)并修改一下内容,注意date.timezone一定要写对,否则在配置完zabbix后,显示的界面全部报错post_max_size=16M
max_execution_time=300max_input_time=300date.timezone=Asia/Shanghai
always_populate_raw_post_data=-1#配置/etc/httpd/conf/httpd.confdocumentRoot"/var/www/html/zabbix"<Directory"/var/www/html/zabbix">
ServerName127.0.0.1DirectoryIndexindex.htmlindex.html.varindex.PHP12345678910111213141516171819

4、创建zabbix用户和组

groupaddzabbix
useradd-gzabbixzabbix12

5、yum安装zabbix

若一台服务器上即是zabbix_server又是zabbix_agent和web Server则需要安装以下程序包

yuminstallzabbixzabbix-agentzabbix-getzabbix-senderzabbix-serverzabbix-server-MysqLzabbix-webzabbix-web-MysqL-y1

若服务器是zabbix_server

yuminstallzabbixzabbix-getzabbix-serverzabbix-server-MysqLzabbix-sender-y1

若服务器是zabbix_agent

yuminstallzabbixzabbix-agentzabbix-getzabbix-sender-y1

若服务器是web Server

yuminstallzabbixzabbix-getzabbix-senderzabbix-webzabbix-web-MysqL-y1

6、往数据库中导入一些数据

cd/usr/share/doc/zabbix-server-MysqL-3.4.3/create/

#把下面三个表给导入zabbix数据库中
MysqLzabbix<schema.sqlMysqLzabbix<images.sqlMysqLzabbix<data.sql123456

7、修改/etc/zabbix/zabbix_server.conf 和 zabbix_agentd.conf

#若是本机DBHost=localhost#若不是本机DBHost=x.x.x.x#设置数据库用户名和密码,可自己在数据库中设置用户和密码DBUser=DBPassword=12345678

8、浏览器访问zabbix页面并进行初始化,详见上面步骤

总结:两种安装方法大同小异,核心思想还是一样的,就是在安装的时候可能会遇到很多坑,有报错又解决不了就找度娘吧,一般都能解决的!

END!

参考博客:
http://blog.csdn.net/mingjie1212/article/details/54619461
http://blog.csdn.net/mingjie1212/article/details/52704987
http://www.jb51.cc/article/p-buwmrulg-nx.html

zabbix深度了解

Zabbix2.4安装及自定义监控图表、报警机制

转载:https://blog.csdn.net/Mr_rsq/article/details/78457587

Centos6.5 安装Zabbix3.4的更多相关文章

  1. iOS – 友好的NSDate格式

    我需要在我的应用程序中显示帖子的日期给用户,现在我用这种格式:“5月25日星期五”.如何格式化NSDate以阅读“2小时前”的内容?使其更加用户友好.解决方法NSDateFormatter不能做这样的事情;你将需要建立自己的规则.我想像:所以这是打印’x分钟前’或’x小时前’从日期起24小时,通常是一天.

  2. xcode – 为什么Jenkins在我的Mac上运行不会连接到本地的git repo?

    我正在尝试使用Jenkins实现自动化构建,用于我的iOS项目.我添加了Git插件,但是一旦我尝试将git的URL放在项目的git配置中,它会在下面的屏幕截图中显示错误.这里Jenkins不能从repo克隆到其工作空间.解决方法在大多数情况下,gitbarerepo有扩展名.git我的意思是(其他)/test1看起来不正确,我认为应该是(其他)/test1.git在我的mac上有同样的错误.

  3. 哪些Xcode项目文件可以从我的git repo中排除?

    我正在开发一个iOS项目,并使用git进行版本控制.我正在与另一位开发人员合作.我应该保留哪些Xcode项目文件在repo中,哪些可以排除,这样不会对其他开发者产生负面影响?这里有一些非代码文件,git告诉我已被修改或添加…

  4. 从iOS应用程序发送帖子到PHP脚本不工作…简单的解决方案就像

    我之前已经做了好几次了但是由于某些原因我无法通过这个帖子…我尝试了设置为_POST且没有的变量的PHP脚本……当它们未设置为发布时它工作精细.这是我的iOS代码:这里是PHP的一大块,POST变量不在正确的位置?我想这对于更有经验的开发人员来说是一个相当简单的答案,感谢您的帮助!解决方法$_POST是一个数组,而不是一个函数.您需要使用方括号来访问数组索引:

  5. Xcode 4:使用Git repo commit版本在每个构建上更新CFBundleVersion

    我正在将Xcode4与Git结合使用,并希望在每个版本的Info.plist中增加CFBundLeversion.密钥CFBundLeversion的值应更新为我对Git存储库的最后一次提交的数量.我发现thatpython脚本运行良好,但遗憾的是它没有更新我的Xcode项目中的Info.plist–它只是更新了“BUILT_PRODUCTS_DIR”中的Info.plist.有没有人知道如何让Xcode4获取最新提交的版本并将该信息放入项目的Info.plist中?

  6. 记一次云计算测试实验-openstack-icehouse-安装swift

    -----------------------controller:---------------------------------sourceadmin-openrc.shkeystoneuser-create--name=swift--pass=000000--email=swift@localhostkeystoneuser-role-add--user=swift--tenant=ser

  7. 如何使用“repo”克隆最小的android源码?

    我可以使用“repo”工具克隆Android源代码.但是,我想要做的是以比没有11GB足迹的更小的方式克隆源代码.它似乎下载了与每个Android设备和每个先前版本相关的内容.我试过想通过检查这样的特定分支来减少这个:然而,最终发生的事情是,我仍然只涉及一个特定的快照(可理解).但有没有办法限制克隆的数量?

  8. android – Gradle自定义存储库和依赖项解析

    我正在开发的项目需要scribe-java和crashlytics库.这两个库都可以从自定义存储库中获得.build.gradle看起来像:使用这样的设置存储库解决方案在构建过程中变得混乱,以至于gradle尝试从不适当的存储库中解析工件:它试图从scribe存储库中检索crashlytics文件.解决方法按声明的顺序搜索存储库,直到找到依赖关系.如果在scribe存储库中搜索crashlytics库,则意味着在crashlytics存储库中找不到它.

  9. 暂停和恢复Android Repo Sync

    reposync解决方法你不能真正暂停一个repo同步,但是如果你使用Ctrl-C中止它然后再运行它,它将有效地从它停止的地方继续.虽然它将从头开始再次通过项目列表,并且可能仍然为已经处理的项目获取一些新数据,但它应该通过这些项目,因为它之前获取的所有数据仍将存在在隐藏的.repo目录中.有关repoinit和reposync工作方式的精彩描述,请参见thisanswer.请注意,您不会立即看到任何已提取的项目,因为在完成克隆.repo/projects中的所有git存储库之前,reposync不会创建并

  10. android – 从AOSP master切换到froyo

    我刚用回购检查了主人.现在我想切换到froyo.如果不再下载一堆东西我怎么能这样做?我不想再次下载一堆东西,我只是希望能够在分支之间自由移动,就像在普通的gitclone中一样.解决方法由于您使用repo下载了所有内容,因此您可以轻松地使用repo在分支之间切换而无需再次下载所有内容:repoinit-bfroyo;回购同步这将只下载切换分支所需的文件,就像使用git在分支之间移动一样.

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部