zabbix server源码安装
一.准备工作
yum -y install net-snmp-devel php-bcmath php-ctype php-xml php-xmlreader php-xmlwriter php-session php-net-socket php-mbsting php-gettext php-ldap #依赖关系
1.创建zabbix用户
groupadd zabbix
useradd -g zabbix -M -s /sbin/nologin zabbix
2.调整服务器时间
监控端和被监控端的时间应同步
yum install -y rdate
rdate -s time-b.nist.gov
yum install ntp.x86_64 -y
ntpdate cn.pool.ntp.org
clock -w
以上时间同步方法二选一
二.zabbix server安装
1.安装
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.2.7/zabbix-3.2.7.tar.gz/download -P /download
wget https://www.zabbix.com/downloads/3.2.0/zabbix_agents_3.2.0.linux2_6.amd64.tar.gz -P /download
cd /download
tar -zxvf zabbix-3.2.7.tar.gz
cd zabbix-3.2.7
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --enable-java
make && make install
2.创建zabbix数据库
mysql -uroot -p123456 -hlocalhost
create user 'zabbix'@'localhost' identified by 'aixocm';
create database zabbix character set utf8;
grant all on zabbix.* to zabbix@'%' identified by 'aixocm';
flush privileges;
3.顺序导入zabbix数据
cd /download/zabbix-3.2.7
mysql -uroot -paixocm -h localhost zabbix <database/mysql/schema.sql
mysql -uroot -paixocm -h localhost zabbix <database/mysql/images.sql
mysql -uroot -paixocm -h localhost zabbix <database/mysql/data.sql
4.修改php.ini
vi /usr/local/php/etc/php.ini
zabbix要求php下列参数为以下值
post_max_size 16M
max_execution_time 300
max_input_time = 300
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1
5.拷贝zabbix前端文件至nginx站点目录
cp -rf /download/zabbix-3.2.7/frontends/php/ /www/ mv /www/php /www/zabbix
6.修改nginx配置nginx.conf
vi /usr/local/nginx/conf/nginx.conf
user deamon;
worker_processes ; #指定了要开启的进程数,每进程占用10M~12M的内存,建议和CPU的核心数量一样多的进程就行了。
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx/nginx.pid;
#Specifies the value for maximum file descriptors that can be opened by this process.
#events 用来指定Nginx工作模式以及连接数上限
events {
use epoll; #使用epoll高效模式,适用于Linux,Unix使用kqueue
worker_connections ; #定义Ningx没个进程最大的连接数。默认为1024,受到文件句柄的约束。
}
worker_rlimit_nofile ; #打开的文件句柄数量最高为10万 http {
include mime.types;
default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout ;
keepalive_timeout ;
server_names_hash_bucket_size ;
client_header_buffer_size 32k; #客户端请求头部的缓冲区大小,一般一个请求头的大小不会超过1k
large_client_header_buffers 32k; #客户请求头缓冲大小 nginx默认会用client_header_buffer_size这个buffer来读取header值
client_max_body_size 8m; #设定通过nginx上传文件的大小 gzip on; #该指令用于开启或关闭gzip模块(on/off)
gzip_min_length 1k; #设置允许压缩的页面最小字节数,页面字节数从header头得content-length中进行获取
gzip_buffers 16k; #设置系统获取几个单位的缓存用于存储gzip的压缩结果数据流
gzip_http_version 1.0; #识别http的协议版本
gzip_comp_level ; #gzip压缩比,1压缩比最小处理速度最快
#匹配mime类型进行压缩,无论是否指定,”text/html”类型总是会被压缩的
gzip_types text/plain application/x-javascript text/css application/xml text/javascript;
gzip_vary on; #和http头有关系,加个vary头,给代理服务器用的 charset utf-; #字符集为utf- access_log off; # 日常日志关闭
log_not_found off; # 日常日志关闭 #fastcgi_temp_path /etc/nginx/tmp;
#fastcgi_cache_path /etc/nginx/cache levels=: keys_zone=MYAPP:100m inactive=60m;
#fastcgi_cache_key " request_method request_uri"; fastcgi_connect_timeout ; #指定连接到后端FastCGI的超时时间。
fastcgi_send_timeout ; #向FastCGI传送请求的超时时间,这个值是指已经完成两次握手后向FastCGI传送请求的超时时间。
fastcgi_read_timeout ; #接收FastCGI应答的超时时间,这个值是指已经完成两次握手后接收FastCGI应答的超时时间。
fastcgi_buffer_size 254k; #指定读取FastCGI应答第一部分需要用多大的缓冲区
fastcgi_buffers 256k; #指定本地需要用多少和多大的缓冲区来缓冲FastCGI的应答。
fastcgi_busy_buffers_size 512k; #这个指令我也不知道是做什么用,只知道默认值是fastcgi_buffers的两倍。
fastcgi_temp_file_write_size 512k; #在写入fastcgi_temp_path时将用多大的数据块,默认值是fastcgi_buffers的两倍。 server {
listen ; #监听端口号
#域名为
server_name localhost;
# 指定网站的目录
root /www/;
# localtion模块指定网站首页名称
location / {
index index.php index.html index.htm;
if (!-e $request_filename) {
return ;
}
}
location ~ \.php$ {
root /www;
#fastcgi_cache MYAPP;
#fastcgi_cache_valid 60m;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
fastcgi_cache_valid 60m;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location /zabbix{
alias /www/zabbix;
}
#指定对网页图片格式进行缓存max表示10年,也可以是30d(天)
location ~ \.(swf|js|css|xml|gif|jpg|jpeg|png|bmp)$ {
error_log off;
access_log off;
#expires 30d;
expires max;
}
}
}
nginx.conf
7.重启php-fpm和nginx
ps -ef |grep fpm |awk '{print $2}'| xargs kill -9
/usr/local/php/sbin/php-fpm /usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx
命令路径太复杂,将命令放入/usr/bin中
cp /usr/local/php/sbin/php-fpm /usr/bin
cp /usr/local/nginx/sbin/nginx /usr/bin
三.登陆web进行zabbix配置
浏览器url:
192.168.119.130/zabbix/setup.php
上述ip为server端ip地址
zabbix配置包括:必要条件检测、配置DB连接、zabbix服务器详细信息、安装前汇总、安装
作者在必要条件检测未通过,原因是PHP ldap未安装。可以通过phpize编译安装php扩展模块
yum install openldap openldap-devel
cd /download/tmp/php-5.6.31/ext/ldap/
/usr/local/php/bin/phpize
./configure --with-ldap --with-php-config=/usr/local/php/bin/php-config
make && make install #将编译后生成的so文件复制到php.ini配置文件指定的extension_dir中:
cp /download/tmp/php-5.6.31/ext/ldap/modules/ldap.so /usr/lib64/php/modules/
#修改php配置:
extension_dir = "/usr/lib64/php/modules/"
extension=ldap.so
四.修改zabbix配置
vim /usr/local/etc/zabbix_server.conf
DBName=zabbix #数据库名称
DBUser=zabbix #数据库用户名
DBPassword=aixocm #数据库密码
ListenIP=192.168.119.130 #数据库ip地址
AlertScriptsPath=${datadir}/zabbix/alertscripts #zabbix运行脚本存放目录
cp /www/zabbix/conf/zabbix.conf.php.example /www/zabbix/conf/zabbix.conf.php
<?php
// Zabbix GUI configuration file.
global $DB; $DB['TYPE'] = 'MYSQL';
$DB['SERVER'] = '192.168.119.130';
$DB['PORT'] = '';
$DB['DATABASE'] = 'zabbix';
$DB['USER'] = 'zabbix';
$DB['PASSWORD'] = 'aixocm'; // Schema name. Used for IBM DB2 and PostgreSQL.
$DB['SCHEMA'] = ''; $ZBX_SERVER = '192.168.119.130';
$ZBX_SERVER_PORT = '';
$ZBX_SERVER_NAME = 'zabbix'; $IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
zabbix.conf.php
解决zabbix中文乱码问题:
vim /www/zabbix/include/defines.inc.php
define('ZBX_GRAPH_FONT_NAME', 'simkai'); // font file name
从windows中拷贝楷体常规simkai.ttf到zabbix的字体目录/www/zabbix/fonts中(注意字体文件名大小写,simkai.ttf 或 SIMKAI.TTF,上述配置中的大小写应与文件大小写一致)
五.启动服务
/usr/local/sbin/zabbix_server
/usr/local/sbin/zabbix_agentd
#############安装时遇到的错误
Unable to create the configuration file.
点击下载配置文件链接下载
cp /download/zabbix.conf.php /www/zabbix/conf
############数据库
The frontend does not match Zabbix database
[问题原因] Zabbix的数据库版本不对或者没有导入三个sql文件到zabbix库中
############zabbix_server启动报错
/usr/local/sbin/zabbix_server
/usr/local/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or director
修改php.ini ------> always_populate_raw_post_data = -1,若仍然启动不成功,应该是库里缺少该模块
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18
#############
zabbix界面一直处于loading状态并且其它选项无反应,加载不完全 ------>https://www.zhihu.com/question/26625030/answer/63251942
php页面显示源码 ----> http://www.bubuko.com/infodetail-826808.html
#############
zabbix server is not running,the information dispalyed may not be current
修改/www/zabbix/conf/zabbix.conf.php文件
$DB['SERVER'] = '192.168.119.130';
$ZBX_SERVER = '192.168.119.130';
#############
#checking for javac... no
#configure: error: Unable to find "javac" executable in path,没装java-jdk
#解决
windows下载页面:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz
mkdir /usr/local/java
tar zxvf jdk-8u20-linux-x64.tar.gz -C /usr/local/java/
echo "JAVA_HOME=/usr/local/java/jdk1.8.0_20
JRE_HOME=/usr/local/java/jdk1.8.0_20/jre
PATH=\$JAVA_HOME/bin:\$PATH:\$JRE_HOME/bin
CLASSPATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar:\$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH" >> /etc/profile
source /etc/profile
java -version
zabbix server源码安装的更多相关文章
- 基于LNMP的Zabbbix之Zabbix Server源码详细安装,但不给图
Zabbix Server安装 看到那里有错或者有什么问题的话,求指点 邮箱:losbyday@163.com 上一篇PHP源码安装参见基于LNMP的Zabbbix之PHP源码安装:https://i ...
- linux 系统安装配置 zabbix服务(源码安装)
简介: zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定 ...
- zabbix的源码安装
前提:安装好lnmp环境,参考: 搭建LNMP环境 下载软件包 1. 下载并解压安装包 cd /usr/local/src wget https://ncu.dl.sourceforge.net/ ...
- zabbix之源码安装
#:官网地址 https://www.zabbix.com/documentation/4.0/zh/manual/installation/install #:解压并创建用户 root@ubuntu ...
- [原创] zabbix学习之旅一:源码安装
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存 ...
- 基于LNMP的Zabbbix之Zabbix Agent源码详细安装,但不给图
基于LNMP的Zabbbix之Zabbix Server源码详细安装:http://www.cnblogs.com/losbyday/p/5828547.html wget http://jaist. ...
- 源码安装和配置zabbix 3.0 LST
Zabbix是什么 Zabbix 是由Alexei Vladishev创建,目前由Zabbix SIA在持续开发和支持. Zabbix 是一个企业级的分布式开源监控方案. Zabbix是一款能够监控各 ...
- zabbix-3.4.14源码安装
此次介绍一下,zabbix的源码安装,因为zabbix的依赖很多,所以源码安装有很多依赖需要安装 首先,下载zabbix源码包 wget https://nchc.dl.sourceforge.net ...
- zabbix server端与agent端源码安装 自定义监控项
ZabbixServer的安装(只有源码装zabbix才能装支持java) 搭建自定义yum仓库并安装支持包 yum -y install createrepo #下载依赖关系命令 createrep ...
随机推荐
- AndroidStudio2.2 Preview3中NDK开发之CMake和传统 JNI在目录结构和配置文件上的区别(转载)
自从AndroidStudio更新到2.2,就有了CMake和传统JNI两种开发NDK的方法,主要就是在目录结构和build.gradle上的区别,下面我们将分别介绍目录区别和build.gradle ...
- R语言reads.table 自动将字符串变成了逻辑值
今天遇到了一个问题,文件中有一列的值为全为F, 用read.table 读取的时候,自动将F 变成了false 对于这样的转换,可以通过 colClass 参数控制 colClass 参数指定每一列的 ...
- laravel项目composer安装
1.下载 Composer (https://pkg.phpcomposer.com/#how-to-install-composer) 安装前请务必确保已经正确安装了 PHP.打开命令行窗口并执行 ...
- Apache Nginx URL 地址 重写
URL重写这东西在工作中用了很多次了,但每次都忘记了要记得把知道的积累下来. 哎,要么认为没必要,要么就是没时间?! 一.Apache 篇 官方地址:http://man.chinaunix.net/ ...
- python 字符串编码解码和格式化问题
转自:https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013868191962 ...
- Rsync实现多台Windows工作电脑文件同步
你要准备的软件有: 最新版 Rsync for windows 服务端:cwRsync_Server_2.1.5_Installer.zip 客户端:cwRsync_2.1.5_Installer.z ...
- js for in 获得遍历数组索引和对象属性
for in 遍历对象属性 获取的是对象的属性名 var person ={ name:"admin", age:"21", address:"sha ...
- zgrep用法
http://manpages.ubuntu.com/manpages/trusty/man1/zgrep.1.html NAME Zgrep - search compressed files fo ...
- Thrift的一些概念
Thrift最初是由Facebook开发的,因为随着流量和网络结构的扩展,一些操作如搜索.分发.事件日志记录等已经超出系统的处理范围,所以Facebook的工程师开发服务时选择了多种不同的编程语言来达 ...
- 微信小程序:bindtap等事件传参
事件是视图层到逻辑层的通讯方式. 事件可以将用户的行为反馈到逻辑层进行处理. 事件可以绑定在组件上,当达到触发事件,就会执行逻辑层中对应的事件处理函数. 事件对象可以携带额外信息,如 id, data ...