njl 发表于 2014-7-3 18:05:39

zabbix安装+邮件(短信)报警

一、zabbix的安装
安装开发软件包1、yum-ygroupinstall"DevelopmentTools"

2、安装所需的依赖包
yum -y install httpd mysqlmysql-server mysql-devel php php-mysql php-common php-mbstring php-gd php-odbcphp-pear php-bcmath.x86_64 curl curl-devel net-snmp net-snmp-devel perl-DBIphp-xml ntpdate

3. 同步服务端的时间,保持所有服务器时间一直避免出现时间不同导致的不可用的监控数据
ntpdate pool.ntp.rog 也可以用下面这个
sudo /usr/sbin/ntpdate0.debian.pool.ntp.org

4. 创建zabbix服务运行所需要的用户跟组
groupadd-g 201 zabbix
useradd-g zabbix -u 201 -m zabbix

5. 初始化mysql服务器
/etc/init.d/mysqld start

6. 创建zabbix运行所需要的数据库
mysqladmin-uroot -h127.0.0.1password "123456"
mysql -uroot -h127.0.0.1 -p
create database zabbixcharacter set utf8;
grant all privileges on zabbix.*to zabbixuser@'%' identified by 'zabbixpass';
flush privileges;

7. 下载解压zabbix
cd /usr/src/
tar xf zabbix-2.2.2.tar.gz

8. 将zabbix的数据导入到数据库中
cd zabbix-2.2.2
mysql -uroot -h127.0.0.1 -pzabbix <database/mysql/schema.sql
mysql -uroot -h127.0.0.1 -p zabbix<database/mysql/images.sql
mysql -uroot -h127.0.0.1 -pzabbix <database/mysql/data.sql
#登录数据库查看下表是否都创建成功

9. 编译安装zabbix
./configure--sysconfdir=/etc/zabbix/ --enable-server --enable-agent --with-net-snmp--with-libcurl --with-mysql
make && make install
    #此处指定sysconfdir配置文件的路径就在/etc/zabbix/目录下了,如果不指定默认在/usr/local/etc下

10. copyzabbixserver端跟agent端的启动脚本,并设置执行权限
cpmisc/init.d/tru64/zabbix_agentd /etc/init.d/
cpmisc/init.d/tru64/zabbix_server /etc/init.d/
chmod +x /etc/init.d/zabbix_*

11. 将zabbix的页面文件copy到指定目录(跟apache配置的相同即可)
mkdir /var/www/html/zabbix
cp -azabbix-2.2.2/frontends/php/*/var/www/html/zabbix/
chown -Rapache.apache /var/www/html/zabbix/

12. 配置php文件,适应zabbix安装所需的参数
vim /etc/php.ini
    date.timezone = Asia/Shanghai
    max_execution_time = 300
    max_input_time = 300
    post_max_size = 32M
    memory_limit = 128M
    mbstring.func_overload = 2
13. 配置apache文件,定义安装访问zabbix的虚拟主机
vim/etc/httpd/conf/httpd.conf
    ServerName 127.0.0.1
    <VirtualHost *:80>
      DocumentRoot"/var/www/html/zabbix/"
      ServerName 192.168.0.118
    </VirtualHost>

14. 配置zabbix server端的文件,定义数据库的IP、用户名、密码
vim/etc/zabbix/zabbix_server.conf
    DBHost=192.168.0.118
    DBName= zabbix
    DBUser=zabbixuser
    DBPassword=zabbixpass


15. 启动apache服务跟zabbix服务

/etc/init.d/zabbix_server start

16. 访问安装界面按照界面提示一步一步的完成安装
http://192.168.0.118
17、在浏览器中访问会出现安装界面如下图

图一图二 图三

图四,上图填完整后点击下面的测试连接看是否对,显示正常才是ok的,否则你懂得!
图五                                        图六

看到如下图7 这个登陆界面,默认用户名和密码是
admin和zabbix,输入登进去就行了

图7
进去之后看到都是英文的,如果你喜欢中文界面,可以做以下操作,如图8

二、是配置一台客户机,来实现zabbix的作用
Client

1. 安装开发的软件包
yum -y groupinstall "DevelopmentTools" ntpdate

2. 同步客户端时间,防止跟服务器端不一致,导致检测到不可用的监控数据
ntpdate pool.ntp.org
sudo /usr/sbin/ntpdate0.debian.pool.ntp.org
3. 创建zabbix运行所需要的用户跟组
groupadd -g 201 zabbix
useradd -g zabbix -u 201 -m zabbix

4. 解压安装zabbixagent端
cd /usr/src/
tar xf zabbix-2.2.2.tar.gz
cd zabbix-2.2.2
./configure --sysconfdir=/etc/zabbix--enable-agent
make && make install

5. copyagent端运行所需要的脚本
cp misc/init.d/tru64/zabbix_agentd/etc/init.d/
chmod +x /etc/init.d/zabbix_agentd

6. 配置agent端配置文件
vim /etc/zabbix/zabbix_agentd.conf
    Server=192.168.0.118          #定义允许哪个主机来访问本机的item,这里写服务端ip
    ServerActive=192.168.0.118    #定义服务端ip
    Hostname=192.168.0.119         客户端ip

7. 启动zabbix agent端
/etc/init.d/zabbix_agentd start

8、将客户机加入到服务器,以便监控如图9、图10所示

图9
然后点击template,关联模板
我这里选择template os linux,输入关键词即可如图11所示


图11
选择好之后点击下面的 “Add”,然后是“Save”即可
这时再点击“Hosts”就会看到监控的主机,如图12所示

图12
如果显示的是红色则表明有问题,显示绿色才是正常如图14

图14当然你可能也注意到了上面服务端是红色的,这个是你服务器端也有代理服务器,所以要在服务端执行 /etc/zabbix/zabbix_agentd start
然后刷新红色就变绿了

三、添加服务器自带postfix邮件报警
1、安装postfix (centos6.3下默认yum源,默认postfix系统自带)
# yum install postfix mail -y
更改postfix配置文件中的参数
# postconf -e myhostname=mail.zabbix.example.cn
# postconf -e myorigin=zabbix.example.cn服务端主机名
# postconf -e mydomain=zabbix.example.cn
# postconf -e mydestination=localhost
# postconf -e mynetworks=127.0.0.0/8
配置完成会添加参数到/etc/postfix/main.cf下末行
# vi /etc/hosts
添加一行:
------------
127.0.0.1 mail.zabbix.example.cn zabbix.example.cn
重启postfix服务
# service postfix restart
测试发送一封邮件到自己的邮箱
# mail abc@163.com
如15所示Ctrl+D发送
到邮箱看看是否收到该邮件,收到则配置成功
2、配置zabbix告警发送邮件到远程邮箱
进入:ZABBIX-管理(Administration)-示警媒体类型(Media Type),点击右上角 创建示警媒体类型(create media type)
按照如图配置:


2.进入: ZABBIX-配置(Configuration)-动作(Action),点击右上角 创建动作 (createaction)
然后有如下三个标签


点击Action标签,填写名称,例如: send mail toZabbix admin,通常都会有个默认的,你也可以整个直接克隆过来,把该改的地方改一下就ok了,如下图


点击Conditions标签,添加一个 Trigger value = "ok"的选项
如图:


点击Operation标签,再点击 “New(新的)”添加相应用户,用户组以及告警邮件信息到该条目
如图:


最后先点击Update,后点击Save退出。
3.进入:ZABBIX-Administration-Users
在成员列点击 Admin,如图:
点击“Admin”

然后选择Media标签,并点击Add,进入配置界面:
按照如图配置:
类型选择之前配置的 示警媒体类型
收件人选择 远程邮箱地址


测试效果:
关闭ZABBIX监控下的一台客户端80端口或者把客户端agentd stop,显示告警,同时收到一封告警邮件。则邮件报警成功

没有名字 发表于 2017-6-13 13:58:44

我想问无论是用root用户导入数据还是用授权的zabbixuser用户导入数据都报权限被拒绝是怎么回事??# mysql -u zabbixuser -p zabbix <database/mysql/schema.sqlEnter password:ERROR 1045 (28000): Access denied for user 'zabbixuser'@'localhost' (using password: YES) # mysql -u root -p zabbix <database/mysql/schema.sqlEnter password:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

dengt8888 发表于 2017-6-15 10:35:44

感谢分享,楼主再分享一下,操作系统及版本

dengt8888 发表于 2017-6-15 10:36:41

这样菜鸟就可以按你的教程

yopopoi 发表于 2017-7-5 14:47:31

不想安装postfix,可以用阿里云邮吗
页: [1]
查看完整版本: zabbix安装+邮件(短信)报警