centos7 zabbix-service 源码编译 安装部署服务端 和 常见安装错误

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: centos7 zabbix-service 源码编译 安装部署服务端 和 常见安装错误

centos7 安装部署zabbix监控服务端和客户端


部署zabbix服务端需要LNMP环境(nginx,mysql,php),其它数据库也可以,我这里使用mysql


系统信息:

[root@localhost ]#  cat /etc/redhat-release

CentOS Linux release 7.4.1708 (Core)

[root@localhost ]#  uname -r

3.10.0-693.el7.x86_64

部署zabbix服务端

首先要关闭firewall,就是防火墙(CentOS 7.0默认使用的是firewall作为防火墙)

  1. systemctl stop firewalld.service       #停止firewall    
  2. systemctl disable firewalld.service    #禁止firewall的开机自启动

1.添加用户和组:

[root@localhost ]# useradd zabbix -s /sbin/nologin

2.安装依赖软件库:

yum install mysql-devel libcurl-devel libxml2-devel mysql-devel curl-devel unixODBC-devel net-snmp-devel OpenIPMI-devel libevent-devel –y

3.下载zabbix源码包:

wget https://pilotfiber.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.3/zabbix-3.2.3.tar.gz

4.进入源码包进行编译安装

解压:tar xf zabbix-3.2.3.tar.gz

cd zabbix-3.2.3

./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-gettext

编译源码是最容易出错的 常见的'Not found XXX library',

 Not found mysqllclient library : 安装mysql-devel   yum install  mysql-devel  -y

LIBXML2 library not found :安装libxml2-devel

cannot useunixODBC library: 安装 unixODBC-devel

Curl library not found: 安装 curl-devel

lnvalid Net-SNMP directory - unable to find net-snmp-config 安装net-snmp-config

lnvalid OPENIPMI directory - unable to find ipmiif.h 安装OpenIPMI-devel

configure: error: Unable to use libevent (libevent check failed)安装 libevent-devel

 

make && make install 一般来说,我们会开启SNMP监控,那么要加上 --with-snmp 如果想一步到位

 

--启动 server---/usr/local/zabbix/sbin/zabbix_server  

下面有两个启动脚本  cp /usr/local/src/zabbix-3.2.3/misc/init.d/fedora/core5/zabbix_server  /etc/init.d/

修改路径 vim /etc/init.d/zabbix_server

ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"

同理agent也是 --启动agent---   /usr/local/zabbix/sbin/zabbix_agentd

也可以使用系统启动脚本来启动:

配置 Agnet 开机启动   cp /usr/local/src/zabbix-3.2.3/misc/init.d/fedora/core5/zabbix_agentd  /etc/init.d/

 

5.配置mysql数据库:

创建数据库,设置utf8避免zabbix中文乱码:

create database zabbix default charset utf8;

数据库用户授权:

grant all on zabbix.* to zabbix@'%' identified by 'zabbix';

刷新生效

flush privileges;

导入以下数据库

[root@localhost mysql]# ls /usr/local/src/zabbix-3.2.3/database/mysql    //你的源码包目录

data.sql  images.sql  schema.sql

/usr/local/mysql/bin/mysql -uzabbix -p zabbix zabbix < /usr/local/src/zabbix-3.2.3/database/mysql/schema.sql    //导入顺序不能错

/usr/local/mysql/bin/mysql -uzabbix -p zabbix  zabbix < /usr/local/src/zabbix-3.2.3/database/mysql/images.sql

/usr/local/mysql/bin/mysql -uzabbix -p zabbix zabbix < /usr/local/src/zabbix-3.2.3/database/mysql/data.sql

6.配置zabbix服务端

[root@wiki mysql]# vim /usr/local/zabbix/etc/zabbix_server.conf

DBName=zabbix //数据库名

DBUser=zabbix //数据库用户

DBPassword=zabbix //数据库密码

DBPort=3306 //数据库监听端口

ListenIP=服务器ip //服务器ip

LogFile=/tmp/zabbix_server.log //zabbix日志保存路径

DBHost=数据库所在服务器ip //填数据库所在的机器ip

systemctl start zabbix-server

编辑PHP配置

# vi /etc/httpd/conf.d/zabbix.conf

php_value max_execution_time 300

php_value memory_limit 128M

php_value post_max_size 16M

php_value upload_max_filesize 2M

php_value max_input_time 300

php_value always_populate_raw_post_data -1

php_value date.timezone Asia/Shanghai

快捷修改命令

# sed -i "s/# php_value date.timezone Europe\/Riga/php_value date.timezone Asia\/Shanghai/g" /etc/httpd/conf.d/zabbix.conf

启动Apache服务

# systemctl start httpd

开机启动Apache服务

# systemctl enable httpd

7.zabbix管理网站配置: 这个是你得项目路径 我的是根目录下的/www/zabbix 如果是apache 它默认的路径是/var/www/html

复制zabbix的web端到你的项目路径

cp zabbix-3.2.3/frontends/php/* /www/zabbix

8.访问

 

记得给zabbix下的conf文件权限  

-----报错------

53221:20190126:143402.331 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

53221:20190126:143402.331 database is down: reconnecting in 10 seconds

53221:20190126:143412.332 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

53221:20190126:143412.332 database is down: reconnecting in 10 seconds

53221:20190126:143422.332 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

53221:20190126:143422.332 database is down: reconnecting in 10 seconds

53221:20190126:143432.332 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

53221:20190126:143432.333 database is down: reconnecting in 10 seconds

53221:20190126:143442.333 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

53221:20190126:143442.333 database is down: reconnecting in 10 seconds

53221:20190126:143452.333 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

53221:20190126:143452.333 database is down: reconnecting in 10 seconds

53221:20190126:143502.334 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

53221:20190126:143502.334 database is down: reconnecting in 10 seconds

解决办法:

[root@localhost lib]# mkdir /var/lib/mysql

[root@localhost lib]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

重启mysql service mysqld restart

 

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
Kubernetes Linux 开发者
在CentOS 7.8上使用kubeadm安装k8s 1.26
至此,你已经在CentOS 7.8上使用kubeadm成功安装了k8s 1.26。你可以通过输入 `kubectl get nodes`来查看节点状态,如果显示为Ready,那么恭喜你,你的Kubernetes集群已经准备好了。
115 23
|
7天前
|
Oracle 关系型数据库 Linux
MyEMS开源系统安装之CentOS/RHEL/Rocky/AlmaLinux/Oracle Linux
本指南介绍如何在CentOS/RHEL/Rocky/AlmaLinux/Oracle Linux服务器上部署MyEMS开源能源管理系统。内容涵盖系统准备、数据库配置、多个MyEMS服务(如myems-api、myems-admin、myems-modbus-tcp等)的安装与配置,以及Nginx服务器设置和防火墙规则调整。通过完成所有步骤,您将能够访问MyEMS Admin UI和Web UI,默认端口分别为8001和80,初始登录凭据已提供。
32 0
|
2月前
|
Linux
CentOS系统中rpm包与源码包的主要区别
总的来说,RPM包和源码包各有优缺点,选择哪种包主要取决于你的需求和技术水平。希望这个答案能帮助你更好地理解RPM包和源码包的区别。
118 27
|
2月前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
544 26
|
2月前
|
Kubernetes Linux 网络安全
CentOS 7.8下使用kubeadm安装Kubernetes 1.26
这就是所有的前线报告,冒险家们,你们已经做好准备,开始在CentOS 7.8上通过Kubeadm安装Kubernetes 1.26的挑战了吗?走上这段旅程,让你的代码飞翔吧。
98 16
|
2月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
88 10
|
2月前
|
Linux 网络安全 数据安全/隐私保护
在CentOS 7.9中安装sshpass教程
如果在控制台显示出sshpass的使用方法,那就说明我们的大餐已经准备好,sshpass已经成功安装。 以上就是在 CentOS 7.9 中安装 sshpass 的彩色步骤,专业而生动,就像大厨在厨房一样顺利。
111 8
|
3月前
|
存储 Linux 网络安全
如何从CentOS7升级到8?CentOS8最新安装教程
从CentOS 7升级到8只需三步:清理系统、更换软件包及存储库、安装新内核与发布版本。首先确保系统最新并清理冗余包,接着替换基础系统包为CentOS 8版本,最后通过DNF工具完成内核更新与系统同步。整个过程需在终端执行,建议升级前备份VPS快照以防数据丢失。此方法可避免重装系统导致的数据清除问题,实现平滑升级。
347 6
|
Linux Apache
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
97 0
|
监控 Linux Apache
CentOS7.0源码安装Apache
CentOS7.0源码安装Apache
1653 0