运维工程师不可缺少的职责是保证服务器的正常稳定的运行,进行实时监控网站、服务器的运行状态,并且出现故障能够及时定位处理
zabbix是一款基于web界面的提供分布式系统监控的服务
在服务端和客户端之间的联系主要如图所示:
因此zabbix的搭建主要是基于LAMP或者LNMP集群环境搭建的
apache-web:只能承载静态网页(.html、.jpg、.htm)
php:主要是连接apache和MySQL数据库,便于进行数据传输
由于yum安装会安装很多不必要的依赖,有可能会造成服务器的cpu承载过高,因此企业安装主要是以编译安装为主。此次编译安装主要是以3.2.6为主。
源码安装可以进行选择性安装
一、搭建LAMP环境(省略)
yum install -y httpd mariadb mariadb-server php php-mysql
php-mysql:主要是用于连接数据库与web界面的插件
二、编译安装zabbix
wget https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.2.6/zabbix-3.2.6.tar.gz/download
编译安装三部曲:
1)./configure 预编译 排查安装过程中是否缺少什么依赖(用于挑选使用的软件模块以及检测系统环境)
2)make 编译 将高级语言php-->计算机语言
3)make install 安装
echo $? 检查编译是否成功 返回值为0
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-libcurl
--prefix 配置安装路径
--enable-server 允许服务端访问
--enable-agent 允许客户端访问
--with-mysql 连接MySQL数据库,可使用MySQL数据库进行连接
--with-libcurl 使用curl包,可指定到curl配置的路径
预编译用来排查安装过程中是否缺少什么依赖
遇到的问题的时候遇到缺少library、缺少.h .c,选择安装对应的开发包-devel
启动zabbix
cp -a /data/zabbix/misc/init.d/tru64/zabbix_server /etc/init.d/
cp -a 保持原有尺经
更改权限:
chmod +x /etc/init.d/zabbix_server
/etc/init.d/zabbix_server start
创建系统用户:
useradd zabbix -s /sbin/nologin
启动完成之后依旧没有没有看到端口但是有进程在响应:
查看zabbix启动日志:
tail -f /tmp//tmp/zabbix_server.log
数据库连接不上
配置MySQL数据库
1)主配置文件/etc/my.cnf(配置utf8)
资料:
创建zabbix的库表
create database zabbix default charset 'utf8';
grant all on zabbix.* to zabbix@localhost identified by 'zabbix';
flush privileges
show variables like 'character%';
将zabbix中的表导入到zabbix库中,其中schema.sql文件是zabbix的服务框架,因此需要先导入
配置php网络访问页面
yum安装的apache的默认页面访问路径为:/var/www/html
cp -a /data/zabbix/frontends/php/* /var/www/html/
配置server端主配置文件
vi /usr/local/zabbix/etc/zabbix_server.conf
页面访问出现以下错误
再次访问:
主要是php的配置文件进行更改
vi /etc/php.ini(按照提示更改)
配置agent端主配置文件
其他操作参照上面操作
zabbix_agent.conf的配置文件详解:
Server=IP地址或者主机名,建议填写IP地址
在有二级代理的情况下,此IP地址应该填写二级代理服务器的IP,若无,则该IP地址因设为服务端的IP
ServerActive=IP:port 在主动模式下,ServerActive为二级代理服务器或者服务端,默认监听端口是10051,若需更改端口,则直接是IP:port,若非特殊情况下,不建议进行修改
Hostname=主机名 手工自定义的主机名,可以和系统的主机名保持一致
HostnameItem 自动获取主机名
特别的:system.hostname是zabbix内置的一个自动获取主机名的方法,为了方便配置,建议达赖此参数而关闭Hostname参数,但是Hostname参数的优先级要高于HostnameItem
LoadModulePath=${libdir}/modules 扩展模块路径,如非有开发的能力,不建议打开
参考链接:
https://blog.csdn.net/chen55bo/article/details/79022035