Zabbix安装搭建以及解决乱码问题

 

都需要监控什么呢?

CPU,内存,硬盘,服务等等等,你想监控什么就监控什么,用自己的脚本写出来

 

  • 硬件监控:智能平台管理接口   ipmitools(查看物理服务器信息),Megacli(查看raid磁盘信息)

      yum install ipmitool -y

  • 系统监控:CPU(lscpu,uptime,top,vmstat 1,mpstat 1,htop)  内存(free -m) 硬盘(df -h,iotop)  网络(iftop,netstat,ss)

      htop需要安装,epel源(很强大)

      yum install htop -y

      没有的都yum install一下

  • 应用监控:nfs,mysql,nginx,apache,php,rsync等
  • 日志监控:系统日志(安全日志secure  message  sudo日志)服务日志(错误日志error)
  • 业务监控:网站是否能访问

 

zabbix有两个部分构成,zabbix server和zabbix agent  可选组件zabbix proxy

zabbix的官网 :https://www.zabbix.com/

 

搭建LNMP环境

配置环境

 yum install pcre pcre-devel openssl-devel zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel libmcrypt-devel mhash mcrypt -y

 

 Nginx安装方法

PHP安装方法

Mysql安装方法

(我这里直接使用自己定制的RPM包安装了)

 

编译安装zabbix

 安装依赖包(数据库如果是二进制安装的 需要加上  mysql-devel)

yum install fping net-snmp-devel unixODBC-devel openssl-devel OpenIPMI-devel java-devel -y

 

创建zabbix用户

useradd zabbix -s /sbin/nologin

mkdir - p /application/tools

cd /application/tools/

 

下载zabbix

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

解压安装

tar xf zabbix-3.0.15.tar.gz

cd zabbix-3.0.15

./configure --prefix=/application/zabbix-3.0.15 --enable-server --enable-agent --enable-java --enable-ipv6 --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --with-unixodbc --with-openssl

make && make install

 ln -s /application/zabbix-3.0.15/ /application/zabbix

 

 

对数据库操作

创建zabbix数据库,并制定字符集

create database zabbix character set utf8 collate utf8_bin;

 创建用户

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

刷新权限

flush privileges;

 

 

找到路径*(在zabbix压缩包里),下面有三个SQL文件

/application/tools/zabbix-3.0.15/database/mysql

导入数据文件(数据库里操作,确定路径,顺序不要错)

use zabbix
source /application/tools/zabbix-3.0.15/database/mysql/schema.sql    #表结构,首先导入
source /application/tools/zabbix-3.0.15/database/mysql/images.sql     #图形,其次导入
source /application/tools/zabbix-3.0.15/database/mysql/data.sql        #数据,最后导入

 

创建站点目录

mkdir -p /application/nginx/html/zabbix

 

拷贝源码包里的PHP文件到  站点(tar解压出来的包)

cp -a /application/tools/zabbix-3.0.15/frontends/php/* /application/nginx/html/zabbix/

chown -R www.www /application/nginx/html/zabbix/

 

 

修改配置PHP文件(修改后的)

egrep -n "^post_max_size|^max_execution|^max_input_time|^date.timezone" /application/php/lib/php.ini

372:max_execution_time = 300
382:max_input_time = 300
660:post_max_size = 16M
910:date.timezone = Asia/Shanghai

 

重启

pkill php

/application/php/sbin/php-fpm 

 

 

配置nginx文件

cat >/application/nginx/conf/nginx.conf<<EOF

worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.php index.html index.htm;
} 
location ~ .*\.(php|php5)?$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
access_log logs/zabbix.log;
}

}

EOF

 

重启

/application/nginx/sbin/nginx -s reload

 

配置zabbix文件

vim /application/zabbix/etc/zabbix_server.conf

修改77行,指定数据库的IP地址

 77 DBHost=127.0.0.1

111行指定数据库密码

111 DBPassword=zabbix

 

拷贝启动脚本

cp /application/tools/zabbix-3.0.15/misc/init.d/fedora/core/zabbix_{server,agentd} /etc/init.d/

ls /etc/init.d/zabbix_*
/etc/init.d/zabbix_agentd /etc/init.d/zabbix_server

修改启动脚本

sed -i "s#BASEDIR=/usr/local#BASEDIR=/application/zabbix#g" /etc/init.d/zabbix_{server,agentd}

 

启动

/etc/init.d/zabbix_server start
Starting zabbix_server: /application/zabbix/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
[失败]

没有libmysqlclient.so.18库文件

ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib64/

/etc/init.d/zabbix_server start 
Starting zabbix_server:         [确定]

可以访问

http://192.168.70.134/zabbix/

 

 

要装这个模块,要不然用不了中文

找到PHP源码包(tar.gz的包)

在里面找到

cd /home/daxian/tools/php-5.5.32/ext

cd gettext/

(一定要在这个目录下执行)

/application/php/bin/phpize 

./configure --with-php-config=/application/php/bin/php-config

make && make install

 echo "extension = gettext.so" >>/application/php/lib/php.ini 

查看是否加入进去

/application/php/bin/php -m

重启PHP

pkill php

/application/php/sbin/php-fpm 

 

提示:如果之前是二进制安装数据库,最好把mysqli也装一下

cd mysqli/

/application/php/bin/phpize

./configure --with-php-config=/application/php/bin/php-config

make && make install

echo "extension = mysqli.so" >>/application/php/lib/php.ini 

/application/php/bin/php -m|grep mysqli
mysqli

 

 

 

 

 

搭建好了

 ==============客户端搭建===============

直接在zabbix端启动(先监控自己)

/etc/init.d/zabbix_agentd start

 

连接一台web服务器,安装客户端

下载客户端

 wget https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/6/x86_64/zabbix-agent-3.0.14-1.el6.x86_64.rpm

安装(解决依赖关系)

yum localinstall zabbix-agent-3.0.14-1.el6.x86_64.rpm

修改配置文件

vim /etc/zabbix/zabbix_agentd.conf 

95 Server=192.168.70.134

启动

 /etc/init.d/zabbix-agent start

 

 

 

 

查看数据

 

 

 

 

 

 解决乱码问题

 

服务端操作

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
下载字体包
yum install wqy-microhei-fonts -y
替换字体
cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /application/nginx/html/zabbix/fonts/DejaVuSans.ttf 

 

解决了

 

posted @ 2018-03-20 12:16  大仙儿没溜儿  阅读(325)  评论(0编辑  收藏  举报