zabbix 在linux上安装以及一些配置
本文章将演示zabbix 3.2版本的安装,供有需要的伙伴们参考:
网络也有很多关于zabbix的安装文档,甚至每一步的配置都有详细的截图,我这里就不演示截图了,多配置几次自然就熟练了。多折腾。
楼主也是安装过很多次,也安装过很多版本,每次都会遇到一点问题,还不一样,都可以通过网络上搜索解决。
--环境准备
[root@mysqlhq ~]# cat /etc/issue
\nKylin 3.3
Kernel \r on an \m
\KRelease (Trial)
# yum -y install lrzsz
 # groupadd zabbix
 # useradd -d /home/zabbix -g zabbix -m zabbix
 # passwd zabbix
--安装相关依赖包
# yum -y install wget unzip libxml2 libxml2-devel httpd php php-mysql php-common php-mbstring php-gd php-odbc \
php-pear curl curl-devel net-snmp net-snmp-devel perl-DBI php-xml ntpdate  php-bcmath zlib-devel glibc-devel \
curl-devel gcc automake libidn-devel openssl-devel net-snmp-devel rpm-devel OpenIPMI-devel
# tar zxvf zabbix-3.2.7.tar.gz
# cd zabbix-3.2.7
# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libxml2 --with-libcurl #安装server
# ./configure --prefix=/usr/local/zabbix --enable-agent #安装agent
# make && make install
--可能会遇到一些错误,都可以在网络上进行搜索解决
--configure: error: Invalid Net-SNMP directory - unable to find net-snmp-config
yum install -y net-snmp-devel
--configure: error: no acceptable C compiler found in $PATH
--yum install -y gcc
--server mysql的配置
mysql> create database zabbix default character set utf8;
mysql> grant all privileges on *.* to 'zabbix'@'127.0.0.1' identified by 'zabbix';
mysql> use zabbix;
mysql> source /data/soft/zabbix-3.2.7/database/mysql/schema.sql
mysql> source /data/soft/zabbix-3.2.7/database/mysql/images.sql
mysql> source /data/soft/zabbix-3.2.7/database/mysql/data.sql
--zabbix的zabbix_server.conf和zabbix_agentd.conf 文件
[root@mysqlhq ~]# cat /usr/local/zabbix/etc/zabbix_server.conf | grep -v '^#' | grep -v '^$'
LogFile=/tmp/zabbix_server.log
DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/home/data/mysqldata/3306/mysqld.sock
DBPort=3306
Timeout=4
LogSlowQueries=3000
[root@mysqlhq ~]# cat /usr/local/zabbix/etc/zabbix_agentd.conf | grep -v '^#' | grep -v '^$'
LogFile=/tmp/zabbix_agentd.log
Server=192.168.19.145
StartAgents=5
ServerActive=192.168.19.145
Hostname=mysqlhq
UnsafeUserParameters=1
UserParameter=mysql.ping,/usr/bin/mysqladmin -uzabbix -pzabbix -h127.0.0.1 -P3306  2>/dev/null  ping|grep alive|wc -l
UserParameter=mysql.status[*],/usr/bin/mysql -h 127.0.0.1 -P3306  -uzabbix -p'zabbix' -N -e "show global status  where Variable_name='$1'" 2>/dev/null | cut -f2
UserParameter=mysql_variable_status[*],/usr/bin/mysql -h 127.0.0.1 -P3306 -uzabbix -p'zabbix' -N -e "show variables where Variable_name='$1'" 2>/dev/null | cut -f2
UserParameter=mysql.version,/usr/bin/mysql -V
UserParameter=mysql.mysql_process_status,sh /usr/local/zabbix/lib/alertscripts/check_mysql_status_3306.sh
--zabbix一些php,apach的设置
cd /data/soft/zabbix-3.2.7/frontends
 mkdir /var/www/html/zabbix/
 cp -r php/* /var/www/html/zabbix/
 vim /etc/httpd/conf/httpd.conf
ServerName 192.168.19.145:80
 # cp /etc/php.ini /etc/php.ini.bk
# sed -i 's/max_execution_time = 30/max_execution_time = 300/g' /etc/php.ini
---sed -i 'date.timezone =/a\date.timezone = Asia/Shanghai' /etc/php.ini
# sed -i '/max_input_time =/s/60/300/' /etc/php.ini
# sed -i '/mbstring.func_overload = 0/a\mbstring.func_overload = 1' /etc/php.ini
# sed -i '/post_max_size =/s/8M/32M/' /etc/php.ini
# sed -i "s@;date.timezone =@date.timezone = Asia/Shanghai@g" /etc/php.ini
–PHP option "always_populate_raw_post_data" must be set to "-1"
# vim /etc/ld.so.conf
/usr/local/mysql/lib
/sbin/ldconfig
# ldconfig
php -v
[root@mysqlt1 yum.repos.d]# rpm -qa|grep php
php56w-pdo-5.6.37-1.w6.x86_64
php56w-ldap-5.6.37-1.w6.x86_64
php56w-xml-5.6.37-1.w6.x86_64
php56w-bcmath-5.6.37-1.w6.x86_64
php56w-mysql-5.6.37-1.w6.x86_64
php56w-cli-5.6.37-1.w6.x86_64
php56w-5.6.37-1.w6.x86_64
php56w-gd-5.6.37-1.w6.x86_64
php56w-common-5.6.37-1.w6.x86_64
php56w-mbstring-5.6.37-1.w6.x86_64
--关于php的版本问题:
# yum list installed | grep php
# yum list | grep php;
# yum remove php.x86_64 php-cli.x86_64 php-common.x86_64 php-gd.x86_64 php-ldap.x86_64 \
php-mbstring.x86_64 php-mcrypt.x86_64 php-mysql.x86_64 php-pdo.x86_64
#yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64 php56w-ldap.x86_64 \
php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64
rpm -ivh http://repo.webtatic.com/yum/el6/latest.rpm
#  rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
# yum install -y php56w php56w-gd php56w-mysql php56w-bcmath php56w-mbstring php56w-xml php56w-ldap
[root@mysqlhq ~]# /usr/local/zabbix/sbin/zabbix_server --version
zabbix_server (Zabbix) 3.2.7
Revision 70298 18 July 2017, compilation time: Sep 19 2018 10:48:27
#  chown -R zabbix.zabbix /usr/local/zabbix/
# chown -R apache:apache /var/www/html/zabbix/
#  rpm -qa|grep httpd
# service httpd start
# chkconfig --add httpd
# chkconfig --list httpd
# netstat -lnp |grep zabbix
#  ps -ef|grep zabbix
#  /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf #启动zabbix server
#  /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf #启动zabbix agent
--开启启动
# vim /etc/rc.local 
sudo -i -u mysql /data/mysqldata/scripts/mysql_db_startup.sh 3306> /home/mysql/mysql_db_startup.log 2>&1
/usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
/usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf
Sudo命令如果遇到错误
 Sudo:sorry,you must have a tty to ruan sudo
[root@localhost scripts]# vim /etc/sudoers
56 #Defaults    requiretty –注释掉
--zabbix 中文配置
1、确认zabbix是否开启了中文支持功能(/var/www/html/zabbix/include/locales.inc.php)
vim /var/www/html/zabbix/include/locales.inc.php
###'zh_CN' => ['name' => _('Chinese (zh_CN)'),     'display' => true]
2 登录zabbix后,设置用户profile,设置语言为中文,然后点击Update
3 其他也乱码
--这个问题是zabbix web端没有中文库导致
从window-->控制面板-->字体-->选择一种中文字库例如“楷体”,将其拷贝到zabbix服务器上即可
将我们选择的字体文件上传到zabbix web服务,/var/www/html/zabbix/fonts目录下
修改此/var/www/html/zabbix/include/defines.inc.php文件中字体的配置,将里面关于字体设置从DejaVuSans替换成stsong
vim /var/www/html/zabbix/include/defines.inc.php
:%s/DejaVuSans/stsong/g
--Zabbix server 基本配置
-----create hosts
Zabbix server 服务自带
hostname=Zabbix server
groups in groups =Zabbix servers
ip address=10.0.1.134
port=10050
-----create Templates/MySql_check_alive/check_mysql_slave2_status
template name=MySql_check_alive
groups in groups=Zabbix servers
----create application
group=Zabbix servers
host=Zabbix server
name=MySql_check_alive
----create Items/名字就是.cnf中的UserParameter=mysql.check_mysql_slave_status
name=mysql.mysql_process_status
type=zabbix agent
key=mysql.mysql_process_status
applications =MySql_check_alive
----create trigger
name=mysql.mysql_process_status
expression={Zabbix server:mysql.check_mysql_status.last()}=1
--{check_mysql_slave2_status:mysql.check_mysql_slave_status.last()}=1
-----create Templates
template name=MySql_check_alive
groups in groups=mysqltest
hosts/template in=192.168.1.112
----create application/host=MySql_check_alive
name=MySql_check_alive
----create Items
name=mysql.mysql_process_status
mysql.check_mysql_status
type=zabbix agent
key=mysql.mysql_process_status
applications =my3306_check_status
----create trigger
name=mysql.mysql_process_status on {HOST.NAME}
expression={MySql_check_alive:mysql.mysql_process_status.last(0)}=1
{192.168.1.113:mysql.mysql_process_status.last()}=1
---expression= SELECT 10.0.1.135: mysql.check_mysql_status
---Previous value is =NO
---N=1
----create Screens
点击configuration--screen--create screen
serverity=high
----create Graphs
name=mysql.mysql_process_status
items=MySql_check_alive: mysql.mysql_process_status
zabbix的告警流程
host goups(设备组)--hosts(设备)--applications(监控项组)--
items(监控项)--triggers(触发器)--actions(告警动作)--medias(
告警方式)--user groups(用户组)--users(用户)
1 trigger
configureation--host/template--triggers--create trigger on {HOST.NAME}
2 actions
configureation--actions
--event source-create action
--action--name=send_email_to_user
		--recovery message=1
		--enabled=1
--conditions--type of calculation= and/or
			--conditions=host group/trigger name
			--trigger value=problem 任何问题都会发送消息
			--maintenance status=not in maintenance在维护时间段内将不发送消息
--operations--send message
			--send to user groups =dba
			--send to users=txyyhq
			--send only to=sendmail
	Default operation step duration 为60秒 
	Steps 为3,表示触发3次动作 1-5-1200
	Send to User groups 选择Zabbix administrators 
	Send to Users 选择 Admin (Zabbix Administrator)
	Send only to 选择 sendmail.sh	
--recovery operation
3 media Administration-> Media types -> Create mediatype ->
--administration--media type
--create media type 
	--name=sendmail
	--type=script
	--script name=sendemail.sh
	--Script parameters----3.2 需要自己添加3个参数,
{ALERT.SENDTO}收件人地址
{ALERT.SUBJECT}主题
{ALERT.MESSAGE}详细内容
在users里面添加,Administration –>  Users-> Create user -> Media ->Add
--administration--user--create user			
4 events
--monitoring--events
--administration--audit
vim /usr/local/zabbix/lib/alertscripts/sendemail.sh $1 $2 $3 ###3个参数
./sendemail.sh  yhq1314@163.com  1111 hello
$1 收件人 user--media中的send to
$2 为actions中配置的默认主题
$3 为actions中默认的配置消息
##monitoring--triggers 看已发生故障
##查看日志administration--audit--actions
---Admin (Zabbix Administrator)	sendmail	Sent
[zabbix@hqmysql1 alertscripts]$ ./sendemail.sh  yhq1314@163.com  1111 hellotest
Jul 19 01:56:24 hqmysql1 sendEmail[3551]: ERROR => Connection attempt to smtp.163.com:25 failed: IO::Socket::INET: Bad hostname 'smtp.163.com'
zabbix 在linux上安装以及一些配置的更多相关文章
- 如何简单的在linux上安装jdk并配置环境变量
		
这篇文章是为了给我一会自己安装的时候方便使用的,所以内容很简单,平时在wendows系统上安装很容易,但是换到linux系统上面就蒙圈了. 一.下载jdk文件 我这提供的是官方的地址:http://w ...
 - linux上安装配置samba服务器
		
linux上安装配置samba服务器 在linux上安装配置samba服务器 在这给大家介绍一个不错的家伙,samba服务.如果您正在犯愁,如何在Windows和Linux之间实现资源共享,就请看看这 ...
 - redis3.0.5在linux上安装与配置
		
redis3.0.5在linux上安装与配置 rhel6/ubuntu14 1 下载 # wget http://download.redis.io/releases/redis-3.0.5.tar. ...
 - Linux上安装jdk1.8和配置环境变量
		
前言 Linux 上安装jdk1.8 和配置环境变量,参考相关文档,本人在此总结,操作归纳如下. 第一步:创建jdk安装目录(该/usr/local/src 目录是空的,最好把我们自己下载的放到这,容 ...
 - Linux上安装配置Keepalived
		
Linux上安装配置Keepalived 1.下载 自行去Keepalived官网进行下载,也可以通过如下链接进行下载2.0.18版本(目前的稳定版) 链接:https://pan.baidu.com ...
 - 【转】linux 编译安装nginx,配置自启动脚本
		
linux 编译安装nginx,配置自启动脚本 本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装ng ...
 - 在Linux上安装Oracle RAC 12 c(12.1) 虚拟机,一步一步向导
		
Oracle RAC 12 c(12.1)在Linux上安装虚拟机,一步一步向导 今天我们将看到如何安装 12 c版本1 RAC(真正的应用程序集群)数据库2 Linux 64位的虚拟机 使用VMWa ...
 - WINDOWS和Linux上安装php7 alpha 并安装 yaf
		
WINDOWS和Linux上安装php7 alpha 并安装 yaf PHP技术 widuu 2个月前 (06-15) 126浏览 0评论 windows 1.windows上安装 php7 ...
 - linux 编译安装nginx,配置自启动脚本
		
本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装nginx,记录下安装过程: 参照这篇文章:Linu ...
 
随机推荐
- QQ钱包,微信,京东钱包,百度钱包,支付宝AGENT
			
微信Mozilla/5.0 (Linux; Android 7.0; LON-AL00 Build/HUAWEILON-AL00; wv) AppleWebKit/537.36 (KHTML, lik ...
 - 在Windows Server 2012上安装SharePoint 2010 SP1
			
现在很多企业的系统都开始用上了Windows 2012,最近公司需要建立一个门户系统,一开始就想到了微软的SharePoint2010,这玩意确实非常强悍,2008已经褪去,当然直接在Windows ...
 - Ceph:pg peering过程分析
			
转自:https://www.ustack.com/blog/ceph%ef%bc%8dpg-peering/ Peering:互为副本的三个(此处为设置的副本个数,通常设置为3)pg的元数据达到一致 ...
 - IIS(IISReset.exe)命令行
			
(转自:http://www.cnblogs.com/itech/archive/2009/05/18/1459231.html) 一 IIS命令行 Iisreset.exe 的概述 Iisreset ...
 - WPF控件开源资源
			
(转)WPF控件开源资源 Textbox Drag/Drop in WPFhttp://www.codeproject.com/Articles/42696/Textbox-Drag-Drop-in- ...
 - JavaScript中url 传递参数(特殊字符)解决方法及转码解码的介绍
			
有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了.下表中列出了一些URL特殊符号及编码 十六进制值 1. + URL 中+号表示空格 %2B 2. 空 ...
 - OC-SEL 和 Class
			
[认识选择器]============================================ SEL 1.选择器(SEL)是一个变量类型. 2.选择器用来装成员消息(成员方法) people ...
 - 深度学习(六十五)移动端网络MobileNets
 - VMware Workstation/Fusion 14/15 密钥
			
VMware WorkStation 14 CG54H-D8D0H-H8DHY-C6X7X-N2KG6 ZC3WK-AFXEK-488JP-A7MQX-XL8YF AC5XK-0ZD4H-088HP- ...
 - git 生成公钥与私钥
			
一. 第1步:创建SSH Key.在windows下查看[c盘->用户->自己的用户名->.ssh]下是否有id_rsa.id_rsa.pub文件,如果没有需要手动生成.打开git ...