zabbix详解之zabbix的安装

夜婷吖_6155

夜婷吖_6155

2024-10-21

862人浏览

转载

由于ubuntu源里自带有zabbix ,可以直接通过apt-get的方式进行安装,所以这里就以centos6.5为例,介绍下zabbix的源码包编译安装的过程。

一、lamp环境安装

1、yum安装lamp

#yum -y update
#yum -y install
gcc gcc-c++ autoconf
httpd php mysql mysql-server php-mysql
httpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xml php-mbstring php-ldap
php-pear
php-xmlrpc
php-bcmath
mysql-connector-odbc
mysql-devel
libdbi-dbd-mysql
net-snmp-devel curl-devel
unixODBC-devel
OpenIPMI-devel
java-devel

2、修改php.ini
由于后面的安装时会对php.ini的相关参数进行检测,发现不满足时在页面上会报错,所以这里需要提前修改相关参数,其中需要修改的部分如下:

# vim /etc/php.ini
date.timezone = Asia/Shanghai
max_execution_time = 300
post_max_size = 32M
max_input_time=300
memory_limit = 128M
mbstring.func_overload = 2

也可以直接通过shell语句的方式进行修改,如下:

# sed -i "s/;date.timezone =/date.timezone = Asia/Shanghai/g" /etc/php.ini
# sed -i "s#max_execution_time = 30#max_execution_time = 300#g" /etc/php.ini
# sed -i "s#post_max_size = 8M#post_max_size = 32M#g" /etc/php.ini
# sed -i "s#max_input_time = 60#max_input_time = 300#g" /etc/php.ini
# sed -i "s#memory_limit = 128M#memory_limit = 128M#g" /etc/php.ini
# sed -i "/;mbstring.func_overload = 0/ambstring.func_overload = 2n" /etc/php.ini
二、zabbix的安装

1、安装zabbix编译时所需的依赖包

# yum -y install curl curl-devel pcre pcre-devel libssh2-devel openldap-devel

2、zabbix的下载安装
到zabbix的下官方下载页面下载取新的stable版本 ,目前的最新版本为2.2.3

# wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.3/zabbix-2.2.3.tar.gz
# tar zxvf zabbix-2.2.3.tar.gz

3、编译安装

# useradd zabbix
# ./configure --prefix=/usr
--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
--with-ssh2
--enable-java
# make install
注:

a、如果你只是想安装一个服务端,只需开启--enable-server 即可,其他参数可以不用选,但这里是为了后面的各项功能都可以使用,所以开启了非常多的参数 。

b、通常在需要进行自动化处理的环境中,一般需要统一批量主机的用户名的ID值 ,可以通过

groupadd  -g 201 zabbix ;useradd -g zabbix -u 201 -m zabbix 

的方式新增用户 。

4、增加services配置

编辑/etc/services配置文件,新增下面部分:

# vim /etc/services
zabbix-agent 10050/tcp #Zabbix Agent
zabbix-agent 10050/udp #Zabbix Agent
zabbix-trapper 10051/tcp #Zabbix Trapper
zabbix-trapper 10051/udp #Zabbix Trapper
三、mysql 数据配置

配置mysql默认开机启动,并启动mysql服务:

# chkconfig mysqld on
# services mysqld start

修改mysql root密码,并登录测试:

# mysqladmin -uroot password 123456
# mysql -uroot -p123456

创建zabbix使用的数据库,并配置用户名密码:

mysql> create database zabbix character set utf8;
Query OK, 1 row affected (0.00 sec)
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

这里新建了一个用户名密码都为zabbix的账号 ,完成后记得使用zabbix -uzabbix -pzabbix 测试是否可以正常进行连接。

进入zabbix源码包解压目录,导入mysql数据:

[root@localhost zabbix-2.2.3]# mysql -uzabbix -pzabbix zabbix 
<div style="font-size: 14pt; color: white; background-color: black; border-left: red 10px solid; padding-left: 14px; margin-bottom: 20px; margin-top: 20px;"><strong>四、zabbix启动脚本及conf配置</strong></div>
<p><strong>1、配置zabbix启动脚本,并设置为开机自启动</strong></p>
<pre class="brush:php;toolbar:false;"># cp misc/init.d/fedora/core/zabbix_* /etc/init.d/
# chmod 755 /etc/init.d/zabbix_*
# sed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/#g" /etc/init.d/zabbix_server
# sed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/#g" /etc/init.d/zabbix_agentd
//设置开机自启动
# chkconfig zabbix_server on
# chkconfig zabbix_agentd on

2、zabbix_server.conf服务端配置

修改/etc/zabbix/zabbix_server.conf 配置文件,修改后配置文件结果类似如下:

# egrep -v "(#|^$)" /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
//以下部分为可选项,可以使用默认值即可
DBSocket=/var/lib/mysql/mysql.sock
DBPort=3306
StartPollers=160
StartTrappers=20
StartPingers=100
StartDiscoverers=120
MaxHousekeeperDelete=5000
CacheSize=1024M
StartDBSyncers=16
HistoryCacheSize=1024M
TrendCacheSize=1024M
HistoryTextCacheSize=512M
AlertScriptsPath=/etc/zabbix/alertscripts
LogSlowQueries=1000

3、zabbix_agentd.conf

需要注意的是在/etc/zabbix/目录下会有一个zabbix_agent.conf和一个zabbix_agentd.conf ,这里使用的是带 d 的配置文件,两都的区别是:zabbix_agent.conf是用超级服务(xinetd)的方式来启动的,zabbix_agentd.conf是以独立进程的方式来启动的 。

Obsidian (Linux)
Obsidian (Linux)

操作 Obsidian 库(纯 Markdown 笔记),并通过 notesmd-cli 实现自动化。

下载
# egrep -v "(#|^$)" /etc/zabbix/zabbix_agentd.conf
LogFile=/var/log/zabbix/zabbix_agentd.log
EnableRemoteCommands=0
Server=127.0.0.1,192.168.1.100
StartAgents=8
ServerActive=192.168.1.100:10051
Hostname=test1
Timeout=30
Include=/etc/zabbix/zabbix_agentd.conf.d/
UnsafeUserParameters=1

工作模式:
Server 是采用被动工作模式,允许访问的 ip 地址,server 端获取数据 。
ServerActive 是采用主动工作模式,将数据上传到哪台服务器,需要填写 server 的端口,默认是 10051语法是 “ip1,ip2 ”,可以填写多个 server 端,中间用逗号隔开。
UnsafeUserParameters 的值表示是否启用自定义脚本,默认是0表示不启用。

4、启动服务

完成以上配置后,通过以下命令启动服务:

# service zabbix_server start
# service zabbix_agentd start
五、zabbix frontends前端配置

1、复制frontend页面文件

# cp -r ./frontends/php/ /var/www/html/zabbix
# chown -R apache.apache /var/www/html/zabbix
# service httpd start

2、配置apache 虚拟主机

ServerAdmin admin@361way.com
DocumentRoot /var/www/html/zabbix
ServerName zabbix.361way.com
ErrorLog logs/dummy-zabbix.361way.com-error_log
CustomLog logs/dummy-zabbix.361way.com-access_log common

3、zabbix.conf.php配置文件的生成

在浏览器中输入上面配置的虚拟主机名,进入zabbix_frontend配置安装界面,如下:

zabbix详解之zabbix的安装

上图中如果不按第一步中lamp的安装中修改/etc/php.ini的参数,这里会出现红色告警。

zabbix详解之zabbix的安装

以上为zabbix 的数据库配置部分。

zabbix详解之zabbix的安装

此处建议使用主机名,因为IP地址可能会更改,而主机名更改的机率要小 。使用主机名的话,IP地址更改对参数也不会有影响 。

zabbix详解之zabbix的安装

此处可能会遇到无法创建文件的问题,该问题是由于没有写权限造成的。可以通过下面的命令解决:

# chown -R apache.apache /var/www/html/zabbix

按finish完成安后,默认登录的用户名是admin,密码是zabbix  。

六、selinux防火墙问题

进入web页面登录后,发现报错内容如下:

Zabbix server is not running:the information displayed may not be cuurrent .

解决方法:vim /etc/sysconfig/selinux修改里面的selinux=disabled后,重启服务器后解决。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

2023.06.20

2333

6

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

2023.06.21

1419

5

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

2023.07.18

835

5

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.19

3252

5

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.25

5528

4

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

2023.08.08

1219

3

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.11

5791

4

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

2023.08.14

5042

7

mysql事务隔离级别
mysql事务隔离级别

mysql规范中定义了四种事务隔离级别,不同的隔离级别对事务的处理有所不同。本专题为大家提供mysql事务隔离级别相关的文章内容,大家可以免费体验。

2023.08.16

6734

11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习