zabbix3.2超详细搭建过程+邮件报警机制
博客更换地址为www.qxfell.com Zabbix:zabbix 3.2 Linux : CentOS 7 Yum源:163 epel 随便哪个都可以 163 wgethttp://mirrors.163.com/.help/CentOS7-Base-163.repo epel yum –y installepel-release 关闭selinux :setenforce 0 关闭防火墙: systemctl stop firewalld.service 或者开放10050 1005180端口 firewall-cmd–permanent–add-port=10050/tcp firewall-cmd–permanent–add-port=10051/tcp firewall-cmd–permanent–add-port=80/tcp firewall-cmd–reload 快速重新加载防火墙规则 Xshell连接虚拟机NAT模式(也可以新建2块网卡 内网用来连接Xshell ) 打开虚拟网络编辑器 这样的话Xshell就能连接NAT模式的Linux系统了。 Centos7 的perl版本默认是5.16用sendemail发送邮件会报错,所以要先卸载5.16然后源码安装5.10的版本 卸载perl5.16时 vim 会被当作依赖关系也一起卸载掉可以使用vi来编辑文件(其实我也没搞的很明白,5.16版本的perl发邮件貌似也可以正常发送这个说法在第一次实验时有这个报错在网上查到的解决办法是perl版本问题) wget http://www.cpan.org/src/5.0/perl-5.10.0.tar.gz ./configure.gnu -des -Dprefix=/usr/local/perl (源码安装记得安装gcc*) make make test (有报错 请忽视) make install mv /usr/bin/perl /usr/bin/perl.bak ln -s /usr/local/perl/bin/perl /usr/bin/perl perl-v (查看perl版本) 在安装完sendemail之后发送测试邮件如果perl版本是5.16会出现以下报错 下载zabbix3.2 rpm源 (放到/etc/yum.repos.d/) rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm 服务端 yum install zabbix-server-mysqlzabbix-web-mysql 客户端 yum install zabbix-agent (因为要监控本机所以需要安装客户端) 安装数据库 yum -y installmariadb mariadb-server (centos7 的数据库不在使用mysql而是mariadb) 修改数据库的编码格式为utf8vim /etc/my.cnf (web界面更好的支持中文) 添加 character_set_server=utf8 init_connect='SETNAMES utf8' 初始化数据库 mysql_secure_installation 回车设置数据库密码 Remove anonymous users? 删除匿名用户? Disallow root login remotely? 禁止root远程登陆 Remove test database and access to it? 删除测试数据库并且和访问它 Reload privilege tables now? 重新载入特权表 创建数据库和用户并且grant授权 create databasezabbix_db; grantallprivilegesonzabbix_db.*tozabbix@localhostidentifiedby'zabbix'; flushprivileges; (刷新privileges授权) exit 导入zabbix3.2数据库 cd/usr/share/doc/zabbix-server-mysql-3.0.4/ gunzipcreate.sql.gz mysql-uroot-pzabbix_db<create.sql 修改php参数 Vim /etc/php.ini max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 always_populate_raw_post_data = -1 date.timezone = Asia/Shanghai 修改zabbix_server的配置文件 vim/etc/zabbix/zabbix_server.conf DBHost=localhost DBName=zabbix_db数据库名 DBUser=zabbix授权的数据库用户 DBPassword=zabbix授权的数据库用户密码 修改zabbix-agent配置文件 vim/etc/zabbix/zabbix_agent.conf Server=127.0.0.1 (服务端IP) ServerActive=127.0.0.1 (服务端IP) Hostname=zabbix (被监测主机的主机名) 开启服务 systemctlstartmariadb systemctlenablemariadb systemctlstarthttpd systemctlenablehttpd systemctlstartzabbix-server systemctlenablezabbix-server systemctlstartzabbix-agent 打开浏览器输入 ip/zabbix 安装zabbix3.2 默认登陆用户名admin 密码zabbix Web界面修改为中文 正常界面 监控Linux主机(需要关闭selinux和开放防火墙) rpm-ivhhttp://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm yuminstall-yzabbix-agent 修改zabbix-agent客户端配置文件 vim/etc/zabbix/zabbix_agentd.conf server=192.168.110.10 (服务端IP) serveractive=192.168.110.10 (服务端IP) hostname=fei00 (被监控主机的主机名) 保存退出后 开启zabbix-agent服务/etc/init.d/zabbix-agentstart 设置开机自启 chkconfigzabbix-agenton 在web界面添加主机 可用性是绿色的 说明开启成功 通过图形查看检测主机 解决web界面 中文乱码显示不全 下载(本机windows就有)微软雅黑或其他字体ttf格式 上传到 /usr/share/zabbix/fonts目录下 修改配置前端文件 vim /usr/share/zabbix/include/defines.inc.php 保存退出即可 sendemail邮件报警 wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz tar –xvf sendEmail-v1.56.tar.gz cp sendEmail-v1.56/sendEmail /usr/local/bin/ chmod 755 /usr/local/bin/sendEmail 进入zabbix默认脚本目录 /usr/lib/zabbix/alertscripts 创建脚本 vim SendEmail.sh 别忘了给脚本设置执行权限和属组 Chmod777 SendEmail.sh Chown zabbix.zabbix SendEmail.sh 邮件发送测试bash SendEmail 1183766365@qq.com “主题” “内容” 如果发送测试邮件出现 验证失败 25端口无法打开 Dec 03 22:47:02 zabbixsendEmail[3439]: ERROR => ERROR => SMTP-AUTH: Authentication tosmtp.163.com:25 failed. 请确认你的邮箱客户端是否开启smtp服务 web界面设置 {ALERT.SENDTO}收件人地址 {ALERT.SUBJECT}主题 {ALERT.MESSAGE}详细内容 报警信息 博主也是新手 文章中如果有什么错误请联系我及时修改 邮箱17601611570@163.com