暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Centos7.2迷你版 zabbix3.0.1 LNMP安装部署+中文包+配置自动发邮件

原创 枫狐狸 2021-02-22
557

Centos7.2迷你版 zabbix3.0.1 LNMP安装部署+中文包+配置自动发邮件

  1. 安装前准备:

1.1 本实例运行环境说明:
操作系统版本:CentOS 7.2迷你版

首先,要先搭建Zabbix运行环境:LAMP(Linux + httpd+ MySQL + PHP(5.4以上))
本实例的数据库、WEB、SERVER都在同一台主机上
CentOS 7
httpd Server version: Apache/2.4.6 (CentOS)
Php 5.4.16
Mysql Ver 15.1 Distrib 5.5.44-MariaDB, for Linux (x86_64) using readline 5.1

1.2 安装包下载
1.2.1官网安装包更新地址:
http://www.zabbix.com/download.php

1.3 安装依赖包:
yum -y install wget net-snmp-devel mailx.x86_64 OpenIPMI-devel httpd openssl-devel java java-devel lrzsz libcurl-devel perl-DBI pcre-devel libxml2 libxml2-devel mysql-devel gcc php php-bcmath php-gd php-xml php-mbstring php-ldap php-mysql.x86_64 libssh2.x86_64 libssh2-devel.x86_64 php-pear php-xmlrpc unixODBC* java* libevent-devel

1.4 zabbix3.0.1 下载:
cd /home
wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.1/zabbix-3.0.1.tar.gz

1.5 关闭防火墙:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

需要关闭 selinux,一定要关闭这个,开启selinux会引起一连串问题,甚至zabbix的discovery功能也不能正常使用

sed -i “s/SELINUX=enforcing/SELINUX=disabled/g” /etc/selinux/config

确认是否修改成功

grep SELINUX /etc/selinux/config

然后重启系统即可

reboot

1.6 添加zabbix用户:
useradd -d /home/zabbix -s /sbin/nologin zabbix

1.7 安装MySQL:
从最新版本的linux系统开始,默认的是 Mariadb而不是mysql!使用系统自带的repos安装很简单:

yum install -y mariadb mariadb-server

启动mariadb

systemctl start mariadb

之前的服务管理命令还可以用

service mariadb start

设置开机自启动

systemctl enable mariadb

安全初始化,设置root密码等

mysql_secure_installation

测试登录

mysql -uroot -p123456

编辑/etc/my.cnf文件 在[mysqld]下面添加
max_connections=2000
open_files_limit=2048
innodb_file_per_table=1

重启数据库

  1. 安装及配置
    2.1 源码包编译安装
    cd /home
    tar xzvf zabbix-3.0.1.tar.gz
    cd zabbix-3.0.1
    ./configure --prefix=/home/zabbix --enable-server --enable-agent --enable-proxy --enable-java --with-unixodbc --with-ssh2 --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi
    make install

2.2 配置zabbix程序目录拥有权
chown -R zabbix:zabbix /home/zabbix
2.3 添加端口
vim /etc/services
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper

2.4 建立数据库及结构导入

mysql -uroot -p

mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by ‘XXXXXXXXX’;
mysql> quit;

如要让远程访问数据库:
GRANT ALL PRIVILEGES ON . TO ‘zabbix’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;

从 zabbix 源码目录导入sql脚本:
mysql –uroot –p123456 zabbix < /home/zabbix-3.0.1/database/mysql/schema.sql
mysql –uroot –p123456 zabbix < /home/zabbix-3.0.1/database/mysql/images.sql
mysql –uroot –p123456 zabbix < /home/zabbix-3.0.1/database/mysql/data.sql

2.5 修改zabbix配置文件
cd /home/zabbix/etc
vi /home/zabbix/etc/zabbix_server.conf
DBName=zabbix #数据库名称
DBUser=zabbix #数据库用户名
DBPassword=123456 #数据库密码
ListenIP=127.0.0.1 #数据库ip地址

2.6 添加zabbix服务启动及开机启动
2.6.1 从源码目录复制启动脚本到/etc/init.d/
cp /home/zabbix-3.0.1/misc/init.d/fedora/core5/zabbix_server /etc/init.d/
cp /home/zabbix-3.0.1/misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/
ln -s /home/zabbix/etc /etc/zabbix

sed -i “s/# CacheSize=8M/CacheSize=4G/g” /etc/zabbix/zabbix_server.conf

2.6.2 设置运行权限
chmod 700 /etc/init.d/zabbix_*

2.6.3 修改启动脚本程序目录正确路径
vim/etc/init.d/zabbix_server
修改:
ZABBIX_BIN="/usr/local/sbin/zabbix_server"
为:
ZABBIX_BIN="/home/zabbix/sbin/zabbix_server"
vim/etc/init.d/zabbix_agentd
修改:
ZABBIX_BIN="/usr/local/sbin/zabbix_agentd"
为:
ZABBIX_BIN="/home/zabbix/sbin/zabbix_agentd"

2.6.4 启动服务并设置开机启动
systemctl start zabbix_server
systemctl start zabbix_agentd
systemctl enable zabbix_server
systemctl enable zabbix_agentd

  1. zabbix web 管理界面配置
    3.1 部署web 目录
    3.1.1从解压目录拷贝web代码
    cp -rf /home/zabbix-3.0.1/frontends/php/* /var/www/html/
    代码目录 zabbix web 项目目录
    cp /var/www/html/conf/zabbix.conf.php.example /var/www/html/conf/zabbix.conf.php
    修改zabbix.conf.php文件内容
    ---------------------------->>

---------------------------->>
3.1.2 启用zabbix的中文

vi /var/www/html/include/locales.inc.php

在第55行开启zh_CN语言显示
‘zh_CN’ => [‘name’ => _(‘Chinese (zh_CN)’), ‘display’ => false],
修改为
‘zh_CN’ => [‘name’ => _(‘Chinese (zh_CN)’), ‘display’ => true],

3.2 php配置
3.2.1修改php/etc/php-fpm.d/www.conf.default或/etc/php.ini,下面值是最低要求(非php7的按3.2.2修改):
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 date.timezone Europe/Riga

3.2.2修改php.ini
sed -i “s@;date.timezone =@date.timezone = Asia/Shanghai@g” /etc/php.ini
sed -i “s@max_execution_time = 30@max_execution_time = 300@g” /etc/php.ini
sed -i “s@post_max_size = 8M@post_max_size = 32M@g” /etc/php.ini
sed -i “s@max_input_time = 60@max_input_time = 300@g” /etc/php.ini
sed -i “s@memory_limit = 128M@memory_limit = 128M@g” /etc/php.ini
sed -i “s@;mbstring.func_overload = 0@ambstring.func_overload = 2@g” /etc/php.ini
sed -i “s@upload_max_filesize = 2M@upload_max_filesize = 16M@g” /etc/php.ini

  1. 启动httpd服务
    4.1 配置httpd的主目录
    修改/etc/httpd/conf/httpd.conf文件
    DocumentRoot “/var/www/html”

4.2 开启httpd服务关设置为开机启动
systemctl start httpd
systemctl enable httpd

  1. web界面配置
    打开nginx 配置的域名链接http://服务器IP/setup.php,按如下配置:
    1.png (34.66 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-30 10:03 上传

2.png (44 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-30 10:03 上传

输入要连接的数据库地址及zabbix数据库名:
3.png (36.44 KB, 下载次数: 1)

下载附件 保存到相册

2016-3-30 10:03 上传

可默认,下一步:
4.png (32.3 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-30 10:03 上传

显示确认信息,下一步:
5.png (38.64 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-30 10:03 上传

提示安装成功:
6.png (32.43 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-30 10:03 上传

输入默认用户:Admin,密码:zabbix,点击”Sign in”登录,进入zabbix 界面:
7.png (19.19 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-30 10:03 上传

登录后页面
8.png (41.9 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-30 10:03 上传

设置中文后,查看图形有乱码,文字变成了方块

Win+R打开运行,输入fonts,回车进入Windows字体目录,找到微软雅黑-常规字体,复制出来将文件名修改为msyh.ttf,注意后缀ttf。

9.png (47.31 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-30 10:03 上传
将msyh.ttf上传到服务器zabbix字体目录中:
/var/www/html/fonts/
修改配置文件

执行快捷替换

sed -i “s/DejaVuSans/msyh/g” /var/www/html/include/defines.inc.php

确认是否替换成功# grep FONT_NAME /var/www/html/include/defines.inc.php -n
45:define(‘ZBX_GRAPH_FONT_NAME’, ‘msyh’); // font file name
93:define(‘ZBX_FONT_NAME’, ‘msyh’);

字体配置修改成功后,刷新图形界面即可看到图形字体显示正常了。
10.png (48.51 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-30 10:03 上传

中文包
附上一下改过的界面中文文件,覆盖/var/www/html/locale/zh_CN/LC_MESSAGES目录同名文件重启httpd服务即可 frontend.rar (149.7 KB, 下载次数: 61) 2016-3-31 13:51 上传
点击文件名下载附件
界面中文修改
11.png (22.84 KB, 下载次数: 3)

下载附件 保存到相册

2016-3-30 13:36 上传

配置自动邮件
安装mailx
yum -y install mailx dos2unix.x86_64

which mailx

/usr/bin/mailx

邮件发送配置
vi /etc/mail.rc
在最后加上
set from=XXXX@com.cn #邮箱地址
set smtp=xxx.xxx.xxx.xxx #邮件服务器IP
set smtp-auth-user=xxxxxx #邮箱帐号
set smtp-auth-password=xxxxxx #邮箱密码
set smtp-auth=login

发送邮件脚本Sendmail.sh
################
#!/bin/bash
file=/home/zabbix/bin/zabbix_mail.txt
echo “$3” > $file
/usr/bin/dos2unix $file
/usr/bin/mail -s “$2” $1 < $file

################

测试一下
echo “this is test!”>test.txt
mail -s “test” xxxxx@163.com.cn < test.txt

配置zabbix自动邮件报警
vi /etc/zabbix/zabbix_server.conf
19.png (10.4 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

这里指定为AlertScriptsPath=/home/zabbix/bin

重启zabbix_server服务
#systemctl restart zabbix_server

添加用户,此处以test为例
15.png (28.02 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

添加报警方式及报警内容(邮箱地址)
16.png (10.81 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

17.png (17.83 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

18.png (14.45 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

添加自动邮件脚本参考官方说明:
https://www.zabbix.com/documentation/3.0/manual/config/notifications/media/script?s[]=script&s[]=parameters
30.png (26.41 KB, 下载次数: 0)

下载附件 保存到相册

2016-4-1 14:02 上传

20.png (17.49 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

21.png (11.76 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

22.png (15.92 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

这里使用中文报警内容
23.png (32.6 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

名称:test
默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1} 发生: {TRIGGER.NAME}故障!

默认信息:
告警主机:{HOSTNAME1} {HOST.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

恢复主旨:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!

恢复信息:
告警主机:{HOSTNAME1} {HOST.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

设置报警条件
24.png (16.07 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

设置操作行为
25.png (29.12 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

26.png (16.11 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

完成成配置,启用
27.png (11.01 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:43 上传

报警效果,鼠标指到主界面的动作下面的数字上即可看到邮件发送情况
28.png (39.2 KB, 下载次数: 0)

下载附件 保存到相册

2016-3-31 14:57 上传

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

目录
  • sed -i “s/SELINUX=enforcing/SELINUX=disabled/g” /etc/selinux/config
  • grep SELINUX /etc/selinux/config
  • reboot
  • yum install -y mariadb mariadb-server
  • systemctl start mariadb
  • service mariadb start
  • systemctl enable mariadb
  • mysql_secure_installation
  • mysql -uroot -p123456
  • mysql -uroot -p
  • vi /var/www/html/include/locales.inc.php
  • php_value date.timezone Europe/Riga
  • sed -i “s/DejaVuSans/msyh/g” /var/www/html/include/defines.inc.php
  • which mailx