以下教程为openEuler22.03安装zabbix4.0,主要原因是openEuler官方和zabbix官方提供的提供的软件源中没有相关软件,因此需要使用zabbix源码进行编译,并且安装过程中会出现一些异常情况,建议先看过整个安装流程再进行
文章目录
- 1. 安装lamp环境
- 2. 安装Zabbix
- 3. 参考连接
1. 安装lamp环境
首先需要安装lamp环境作为zabbix运行的基础,即Linux+Apache+Mysql+PHP,这里我直接使用Mariadb来代替Mysql
[root@openEuler ~]
修改Apache配置文件/etc/httpd/conf/httpd.conf,添加index.php
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
修改PHP配置文件/etc/php.ini,去掉date.timezone前面的;注释,时区为中国时区
date.timezone = Asia/Shanghai
在/var/www/html/目录下创建index.php文件,写入以下内容
<?php
phpinfo();
?>
重启Apache和PHP服务,并设置为开机自启
[root@openEuler ~]
[root@openEuler ~]
[root@openEuler ~]
[root@openEuler ~]
[root@openEuler ~]
在浏览器中访问http://本机IP地址/index.php,如果出现以下界面则证明Apache和PHP环境已经搭建好了
初始化Mariadb数据库,执行以下命令,根据提示自行操作
[root@openEuler ~]
2. 安装Zabbix
到官网下载zabbix源码包,并解压
[root@openEuler ~]
安装zabbix依赖包
[root@openEuler ~]
创建zabbix用户,这一步一定要执行,不然无法启动zabbix项目
[root@openEuler ~]
创建zabbix数据库以及用户
[root@openEuler ~]
MariaDB [(none)]>create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]>grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
MariaDB [(none)]>flush privileges;
导入zabbix数据库数据,sql文件路径为/usr/local/zabbix-4.0.44/database/mysql/
[root@openEuler ~]
[root@openEuler mysql]
[root@openEuler mysql]
[root@openEuler mysql]
在导入过程中可能会出现以下问题,原因为导入的数据行太长
ERROR 1118 (42000) at line 1278: Row size too large (> 8126)
在Mariadb的配置文件/etc/my.cnf.d/mariadb-server.cnf中的[mysqld]标签下添加以下内容,再重启数据库
innodb_strict_mode=0
[root@openEuler ~]
编译安装zabbix
[root@openEuler ~]
[root@openEuler zabbix-4.0.44]
[root@openEuler zabbix-4.0.44]
配置zabbix服务端,修改配置文件中的数据库密码,并启动zabbix服务
[root@openEuler ~]
DBPassword=zabbix
[root@openEuler ~]
[root@openEuler ~]
如果执行以下命令后可以看见10051和10050端口号,则证明启动成功
[root@openEuler ~]
配置zabbix前端界面,修改PHP配置文件,并重启PHP服务
[root@openEuler ~]
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
[root@openEuler ~]
创建zabbix前端界面
[root@openEuler ~]
[root@openEuler ~]
[root@openEuler ~]
浏览器访问http://本地IP地址/zabbix/setup.php,在界面上根据提示填入相关信息
在最后一步如果出现以下界面,则需要点击界面上的蓝色链接下载配置文件并放到其指定的路径/var/www/html/zabbix/conf/zabbix.conf.php,重新刷新界面
点击Finish后直接跳转到登录界面,默认账号为Admin,默认密码为zabbix
如果在zabbix主页上看到这个以下错误,则需要修改zabbix的php代码/usr/local/zabbix-4.0.44/frontends/php/include/classes/db/DB.php
建议直接搜关键字修改,修改后刷新页面即可
// add output options
$sql_parts = self::applyQueryOutputOptions($table_name, $options, $sql_parts, $table_alias);
// add filter options
$sql_parts = self::applyQueryFilterOptions($table_name, $options, $sql_parts, $table_alias);
// add sort options
$sql_parts = self::applyQuerySortOptions($table_name, $options, $sql_parts, $table_alias);
private static function applyQueryOutputOptions($table_name, array $options, array $sql_parts, $table_alias = null)
private static function applyQueryFilterOptions($table_name, array $options, array $sql_parts, $table_alias = null)
private static function applyQuerySortOptions($table_name, array $options, array $sql_parts, $table_alias = null)
$sql_parts = self::dbFilter($table_name, $options, $sql_parts, $table_alias);
private static function dbFilter($table_name, array $options, array $sql_parts, $table_alias = null)
3. 参考连接
https://www.cnblogs.com/winyhan/p/16648007.html
https://blog.csdn.net/qq_60387497/article/details/121304334
https://blog.csdn.net/weixin_42236288/article/details/105880236
https://blog.csdn.net/qq_29073353/article/details/116592500
https://blog.csdn.net/weixin_40228200/article/details/123716971
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)