CentOS7.2部署Zabbix Server及Agent进行平台监控

来源:互联网 发布:软件和信息技术服务业 编辑:程序博客网 时间:2024/05/18 01:54
转载自

http://www.87long.com/read.php?tid=161


CentOS7.2部署Zabbix ServerAgent进行平台监控

Zabbix Server CentOS7.2_64 IP172.17.8.112

Zabbix Agent CentOS7.2_64 IP:172.17.8.16(物理机)

Zabbix Agent CentOS7.2_64 IP:172.17.8.109(虚拟机)

 

1.关闭selinux及防火墙

systemctl stop firewalld

systemctl stop NetworkManager

systemctl disable firewalld

systemctl disable NetworkManager

setenforce 0

sed I s/SELINUX=enforcing/SELINUX=disabled/g/etc/sysconfig/selinux

 

2.安装LAMP基础组件:

yum install gcc gcc-c++ autoconf automake make y

安装PHP

yum install php php-gd php-mysql php-bcmath php-mbstring php-xml curl curl-devel net-snmp   net-snmp-devel perl-DBIy

安装Apache:

yum install httpd y

vi /etc/httpd/conf/httpd.conf:

163

修改DirectoryIndex,新增index.php

systemctl start httpd

systemctl enable httpd

安装Mariadb:

yum install mariadb* -y

systemctl start mariadb

systemctl enable mariadb

 

3.修改PHP相关参数:

max_execution_time = 300

max_input_time = 300

memory_limit = 128M

upload_max_filesize = 2M

date.timezone = Asia/Shanghai

post_max_size = 28M

 

4.数据库配置:

Systemctl start mairadb.service

mysql urootp

create database zabbix character set utf8;

insert into mysql.user(Host,User,Password) values(localhost,zabbix,password(zabbix));

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

flush privileges;

grant all on zabbix.* to zabbix@localhostidentified by zabbixwith grant option;

flush privileges;

 

5.安装zabbix Server 2.4.7:

rpm ivh http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm

yum install zabbix-server-mysql zabbix-web-mysql -y

rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-get-2.4.7-1.el7.x86_64.rpm

 

6.安装Zabbix agent:

yum install zabbix-agent -y

 

7.初始化zabbix数据库:

cd /usr/share/doc/zabbix-server-mysql-2.4.7/create

mysql uroot zabbix < schema.sql

mysql uroot zabbix < images.sql

mysql uroot zabbix < data.sql

 

8.修改Zabbix Server配置文件/etc/zabbix/zabbix_server.conf

DBHost=localhost

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix

ListenIP=0.0.0.0

AlertScriptsPath=/usr/lib/zabbix/alertscripts

 

9.部署Zabbix软件:

浏览器访问地址:

http://172.17.8.112/zabbix/

出现http://172.17.8.112/zabbix/setup.php后点击“下一步”。

输入:

数据库类型:mysql

数据库主机:localhost

数据库端口:0(使用默认端口3306

数据库名字:zabbix

数据库用户:zabbix

数据库密码:zabbix

Test Connection:OK

 

10.    输入:

Host:localhost

Port:10051

Name:zabbixserver

 

11.使用admin/zabbix账号登录http://172.17.8.112/zabbix/dashboard.php

 

12.更改语言,点击右上角profile,语言选择:Chinesezh_CN)。

 

13.启动zabbix agent

systemctl start zabbix-agent

systemctl enable zabbix-agent

 

14.Zabbix Server使用端口10051

Zabbix Agent使用端口10050

 

15.针对zabbix乱码问题的解决方法:

Zabbix Server安装中文字库:

查看当前zabbix的字体:

more /usr/share/zabbix/include/defines.inc.php|grep FONT

查看当前字体为graphfont.ttf

下载新字体对原有字体进行替换:

cd /root

wget http://down1.chinaunix.net/distfiles/ttf-arphic-uming_0.0.20050501-1.tar.gz

cd /usr/share/zabbix/fonts

mv graphfont.ttf /root/

cp /root/ttf-arphic-uming_0.0.20050501/uming.ttf /usr/share/zabbix/fonts/ graphfont.ttf

还有一种方法是使用windows的系统字体进行替换:

windows系统C盘的windows\Fonts\选择一种,这里选择楷体常规simkai.ttf字体。

sed I s/graphfont/simkai/g/usr/share/zabbix/include/defines.inc.php

systemctl restart zabbix-server

systemctl restart zabbix-agent

 

16.Linux监控端agent部署与配置:

rpm ivh http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm

yum install zabbix-agent y

修改Zabbix agent配置文件/etc/zabbix/zabbix_agentd.conf:

EnableRemoteCommands=1

Server=172.17.8.112 #Server端的IP地址。

ServerActive=172.17.8.112(zabbix server 端口10051可以默认。)

Hostname=controller #必须与zabbix server端创建主机时候输入的zabbix agent端的host name一致。

ServerServerActive都要指定zabbix serverIP地址。Server是用来允许zabbix  server的这个IP来主动取数据,ServerActive是客户端主动提交数据给zabbix server端。

启动zabbix-agent服务:systemctl start zabbix-agent

Systemctl enable zabbix-agent

17.添加agent端监控主机:

组态—新建主机—主机名称(controller--DNS4114—模板Template OS Linux

选择主机—启用主机。

18.Zabbix server端安装nmap进行端口扫描:

yum install nmap y

nmap sT 172.17.8.109p 10050

19.Centos7.0 安装postfix

由于CentOS7.0中默认采用postfix作为邮件发送的服务器。所以进行配置:

vi /etc/hosts

172.17.8.112 zabbixserver.87long.com zabbixserver

cd /etc/postfix/

cp main.cf main.cf.bak

vi main.cf,内容如下:

queue_directory= /var/spool/postfix   #队列目录,也是运行的根目录

mydomain = 87long.com  #指定邮件域,接收用来识别的。必须是自己要有的域名

myhostname= zabbixserver.87long.com  #发送邮件的主机名为zabbixserver.87long.com,用户名为:root@zabbixserver.87long.com

mynetworks= 172.17.8.0/24, 127.0.0.0/8   #指定允许使用的ip地址段

myorigin =$mydomain   #发信地址,此设置显示为87long.com

inet_interfaces= all      #对外提供MTA服务设置为监听所有网卡,默认只监听本地

#inet_interfaces= localhost   #注释掉,这个是只监听本地的

mydestination= $myhostname, localhost.$mydomain, localhost, $mydomain

mynetworks_style= subnet   #允许转发的来源网段,可选subnet子网,class网段,host本机

local_recipient_maps =  把前面的注释拿掉

relay_domains= $mydestination   #允许转发的目标域

alias_maps= hash:/etc/aliases     #对某个用户发,文件中的用户都可以收到邮件

alias_database= hash:/etc/aliases

smtpd_banner= $myhostname ESMTP  $mail_name  ($mail_version)  #自定服务器信息

systemctl restart postfix

 

yum install -y mailx

mail s Postfix630995935@qq.com < /etc/passwd进行测试。

配置dovecot服务器,实现邮件接收和发送。

yum install dovecot y

cd /etc/dovecot/

cp dovecot.conf dovecot.conf.bak

vim /etc/dovecot/dovecot.conf:

Protocols = imap pop3 lmtp #启用协议,lmtp被淘汰的地步。可能不被支持,不用可以删掉。

Login_trusted_networks = 172.17.8.0/24 //指定允许登录的网段地址。

或者Login_trusted_networks = 0.0.0.0 四个零,允许所有网络。

设置邮件存放目录:

cd /etc/dovecot/conf.d/

cp 10-mail.conf 10-mail.conf.bak

vim 10-mail.conf:

mail_location = mbox:~/mail:INBOX=/var/mail/%u 指定邮件的位置。

systemctl restart dovecot

vim /etc/skel/.bash_profile

If [ ! d ~/mail/.imap/INBOX ]; then

    Mkdir p ~/mail/.imap/INBOX

fi

source /etc/skel/.bash_profile

邮件测试:

useradd alice

echo alice:123456|chpasswd

useradd bob

echo 123456|chpasswd

测试发信:

Mail发邮件三种用法:

1.以文件中的内容为邮件内容发信:

su alice

mail s postfix1bob@zabbixserver < /etc/hosts

echo 2222|mail spostfix2bob@zabbixserver

mail s postfix3bob@zabbixserver

Yyyuu

Hhkk

.

EOT

通过mail命令查看邮件,进行收件验证。

20.zabbix server设置邮箱报警:

打开IE浏览器,输入http://Zabbix Server IP/zabbix

1.打开zabbix—管理—示警媒体类型—右上角--创建媒体类型。

描述:zabbixserver.87long.com

类型:电子邮件

SMTP服务器:zabbixserver.87long.com

SMTP HELO:zabbixserver.87long.com

SMTP电邮:root@zabbixserver.87long.com

已启用—打对勾。

2.设置zabbix用户的报警邮箱:

打开zabbix—管理—成员—Admin—示警媒介—添加。

类型选zabbixserver.87long.com—收件人:写好告警邮件接收的邮箱地址。

状态:已启用。

3.配置报警触发的动作:

组态—动作—右上角--创建动作。

动作名称:Action-Email

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

默认信息:

告警主机:{HOSTNAME1}

告警时间:{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}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

已启用:打对勾。

4.配置报警执行的动作:

默认操作步骤持续时间:300秒。

自从:1

到:10表示无限地)。

步骤持续时间:0秒。

操作类型:送出信息。

送到用户群组:Zabbix Administrators

送到用户:Admin

仅送到:zabbixserver.87long.com

默认信息:打对勾。

告警每隔5分钟不间断发送到Admin用户及Zabbix Administrators用户群组。

21.iptables防火墙规则设置:

vim /etc/sysconfig/iptables,添加下面的内容:

-A INPUT -p tcp -m state --state NEW -m tcp --dport 10050:10051 -j ACCEPT

-A INPUT -p udp -m state --state NEW -m udp --dport 10050:10051 -j ACCEPT

/etc/init.d/iptables restart重启iptables防火墙服务。