大作业文档之NFS安装.zabbix监控

1.首先准备二台服务器,服务端和客户端

2.服务端需要安装 yum install -y nfs-utils rpcbind

  客户端需要安装 yum install -y nfs-utils 

3.在服务端编写文件 vim /etc/exports


/data/attachment ip段/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
/dedecms/upload  ip段/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
/data/attached/  ip段/24(rw,sync,all_squash,anonuid=1000,anongid=1000)

写上三个站点需要共享目录的地址 权限

4.然后创建要共享的目录  给共享目录加上777权限

5.然后客户端和服务端开启rpcbind服务   nfs服务

6.然后在客户端挂载  showmount -e (服务端的ip)

7.在客户端挂载需要共享的目录   mount -t nfs (服务端ip):/目录  /mnt/

 

 

安装zabbix监控

1.首先下载zabbix文件

wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

2.使用rpm安装

3.然后使用yum安装zabbix yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql

4.需要监控的客户端 也要安装zabbix

5.然后进入到mysql库下面去,创建zabbix库,

create database zabbix character set utf8;

6.创建用户,为了让web代码(php代码链接mysql)

grant all on zabbix.* to 'zabbix'@'ip' identified by '密码';

7.导入数据

cd /usr/share/doc/zabbix-server-mysql-3.2.11/

gzip -d create.sql.gz

mysql -uroot -p(密码) zabbix < create.sql

8.启动zabbix-service和nginx服务

systemctl start zabbix-server

9.然后让zabbix链接mysql

配置文件  vi /etc/zabbix/zabbix_server.conf

在文件中 搜索DBHost 加入ip地址  搜索DBPasswd 加入密码   然后重启zabbix服务

10.去浏览器去安装zabbix    输入地址:(ip地址)/zabbix/setup.php

11.下一步之后,会看到有fail的红色标识,需要去设置一下时间 

vi /etc/php.ini    搜索date.timezone = Asia/Shanghai

12.然后提示输入ip地址 用户名 密码

0f1e7e4291c394cad831473585729166056.jpg

13.进入之后更改密码  设置语言中文

14.需要监控的客户端安装zabbix 最后yum安装 yum install -y zabbix-agent

15.编辑客户端的zabbix配置文件,Server改为服务端的ip地址 ServerActive改为服务端的ip地址

vim /etc/zabbix/zabbix_agentd.conf

16。自定义主机名   客户端启动zabbix服务

搭建完成之后 设置监控各个指标(cpu、内存、硬盘),网卡流量需要成图,还需要监控web站点的可用性

1.首先 创建主机组 

76cff884179d2ea673112f1db49106e1d8a.jpg

2.创建主机  所有机器都创建一个主机 ip+端口

0f2d331799846771dc79dcdb566dc9d6735.jpg

3.然后创建模板 添加自定义监控项目

3bc11c933d9adc26f5691518ef499ff58fc.jpg

创建完的模板 是没有应用集 监控项 等等 都是空的

找到下面这个模板 点进去 找一些监控项 复制到xx模板里面去

选中这些项

7b6c7b4f593d3e69a3dc6a6a60669872ed6.jpg

12bf99cb67550865cb6b9544f23cb1eebc2.jpg

5ccbf495b4cba38cfccf2090628eaa3a50e.jpg

4.

然后导入自动发现规则,需要我们把os linux导出来,然后编辑这个文件,在把不需要的删除掉,很麻烦,还有一种方法

首先把之前添加的监控项给删除掉

417d69b0c269945255b17890a65734d83ee.jpg

然后点击xx模板,点击链接的模板

467410560c88b621c9c9f55d40559ee4fe5.jpg

然后点击选择,添加os linux 在点击更新 一定要点击更新

65c7af3d0acd39a54b5f4cc9356caeedcee.jpg

但是我们只想要自动发现模板,但是想要删除其他不用的监控项的时候,是删除不了的,因为是链接的模板,删除的话是删除os linux模板,我们可以点击aming 模板,点击取消链接,然后点击更新

5,

然后添加监控项 监控硬盘

54f34fea1c3bf9d2479de2e5bde3410f720.jpg

9f0242cc3fb278c79d5d4b484e10eb018b8.jpg

a4d3cf3bdfde875bbc4ac1b2d645f268841.jpg

然后点击更新

6.

创建触发器

00b021c0406657f4886af23648f7eb7165e.jpg

073ac7b617b4dc54dd246b76513d04d55e6.jpg

0d482acb61a5a41d2f3c7ab6b949b75d919.jpg

3fd635bd3fe7a910401be4bb922ce9beedc.jpg

f7d708dc0210d406ca0edd2271704fb1c4b.jpg

7.

链接了os linux模板 自动发现规则有网卡流量的图形,不需自己添加

8.

web站点可用性

3b6728b0d8c05e48f7e5fce3bb1af5d3125.jpg

805bd5fdb22b292410caafc80dfaabfd97e.jpg

5a953c1ea6eb38c51308a5c533278d1289c.jpg

添加步骤

7e4f9c2bf8ffaba5ffc6f48515a96aa5f4c.jpg

3f083af9cb69bfeec8c0619a059fa0c0d17.jpg

9.

定制自定义监控脚本,监控web服务器的并发连接数,接入zabbix,成图,设置触发器,超过100告警

首先到客户端去编写脚本

[root@hongwei-02 ~]# vim /usr/local/sbin/estab.sh

#!/bin/bash
##获取80端口并发连接数
netstat -ant |grep ':80 ' |grep -c ESTABLISHED

然后给文件添加755权限

[root@hongwei-02 ~]# chmod 755 /usr/local/sbin/estab.sh

 然后在客户端上编辑配置文件,添加一行

[root@hongwei-02 ~]# vim /etc/zabbix/zabbix_agentd.conf
# UnsafeUserParameters=0
UnsafeUserParameters=1

### Option: UserParameter
#       User-defined parameter to monitor. There can be several user-defined parameters.
#       Format: UserParameter=<key>,<shell command>
#       See 'zabbix_agentd' directory for examples.
#
# Mandatory: no
# Default:
# UserParameter=
UserParameter=my.estab.count[*],/usr/local/sbin/estab.sh
UnsafeUserParameters=1  //表示使用自定义脚本

UserParameter=my.estab.count[*],/usr/local/sbin/estab.sh 
//自定义监控项的key为my.estab.count,后面的[*]里面写脚本的参数,如果没有参数则可以省略,脚本为/usr/local/sbin/estab.sh

.然后重启zabbix-agent服务

[root@hongwei-02 ~]# systemctl restart zabbix-agent

然后验证一下自定义脚本有没有识别,到服务端验证,执行下面命令

^C[root@liuhongwei-01 fonts]# zabbix_get -s 192.168.93.128 -p 10050 -k 'my.estab.count'

 然后在zabbix监控中心(浏览器)配置增加监控项目

9ec58b214b1720d8081557d36dbec323d6c.jpg

13adb35b64c7b1d3e0daf685615f3d38a45.jpg

创建一个图形

21facd5c98ee18c3358f60a938e696e3cc2.jpg

创建触发器

2b7742772f04adb82588196f2edf136bbc2.jpg

6fbc32d3f4fb5a4d88c6fbfd373a26133af.jpg

配置邮件告警

1.首先到163邮箱开启POP3、IMAP、SMTP服务

76a284dbd22ac0a220c21394d65b88e9ab5.jpg

2.然后在163邮箱设置客户端授权密码

0b4e1c02f6efeb8bcabd21fd05c557ff959.jpg

b0ff66a883ba3ff316c79a63a42bcb0c43d.jpg

3.然后到监控中心设置邮件告警

c2f6b398bc2f77d6dd0bd52218500bec0af.jpg

c61fa262682005c4dbe8908c9f7cef562dd.jpg

4.创建报警脚本mail.py

[root@liuhongwei-01 fonts]# vim /usr/lib/zabbix/alertscripts/mail.py
#!/usr/bin/env python
#-*- coding: UTF-8 -*-
import os,sys
reload(sys)
sys.setdefaultencoding('utf8')
import getopt
import smtplib
from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart
from  subprocess import *

def sendqqmail(username,password,mailfrom,mailto,subject,content):
    gserver = 'smtp.qq.com'
    gport = 25

    try:
        msg['to'] = mailto
        msg['Reply-To'] = mailfrom
        msg['Subject'] = subject

import getopt
import smtplib
from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart
from  subprocess import *

def sendqqmail(username,password,mailfrom,mailto,subject,content):
    gserver = 'smtp.163.com'
    gport = 25

    try:
import getopt
import smtplib
from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart
from  subprocess import *

def sendqqmail(username,password,mailfrom,mailto,subject,content):
    gserver = 'smtp.163.com'
    gport = 25
        msg = MIMEText(unicode(content).encode('utf-8'))
        msg['from'] = mailfrom
        msg['to'] = mailto
        msg['Reply-To'] = mailfrom
        msg['from'] = mailfrom
        msg['to'] = mailto
        msg['Reply-To'] = mailfrom
        msg['Subject'] = subject
        msg['Subject'] = subject
        smtp = smtplib.SMTP(gserver, gport)
        smtp.set_debuglevel(0)
        smtp.ehlo()
        smtp.login(username,password)
        smtp.sendmail(mailfrom, mailto, msg.as_string())
        smtp.close()
    except Exception,err:
        print "Send mail failed. Error: %s" % err


def main():
    to=sys.argv[1]
    subject=sys.argv[2]
    content=sys.argv[3]
##定义QQ邮箱的账号和密码,你需要修改成你自己的账号和密码(请不要把真实的用户名和密码放到网上公开,否则你会死的很>惨)
    sendqqmail('15504986234@163.com','','15504986234@163.com',to,subject,content)

if __name__ == "__main__":
    main()

注意 邮箱地址后面的密码是 授权码 密码 

5.然后加上权限

[root@liuhongwei-01 fonts]# chmod 755 /usr/lib/zabbix/alertscripts/mail.py
[root@liuhongwei-01 fonts]# 

6.测试发送邮件 实验一下

[root@liuhongwei-01 alertscripts]# python mail.py 15504986234@163.com "这是一封测试邮件" "12345678910"

c347a3dec41f828f57abcb58f203841fd81.jpg

[root@liuhongwei-01 alertscripts]# python mail.py 15504986234@163.com "This is test page" "12345678910"
[root@liuhongwei-01 alertscripts]# 

3777e6c1aad4f88375044aa7a22d3bf6c10.jpg

然后到浏览器去创建一个用户,接收邮件

1604b0bec84c43c8dca436ea6d9c7368f4a.jpg

再添加邮箱

b2d69389c6758587d9f449b68d7c6d6d774.jpg

然后再到用户权限去更改所有 

c89e61e7d384b16d24c21cd01a424bf274b.jpg

9.然后配置动作f57e040c6697ebfd3dfaaea1f275e389ede.jpg

4f808731ac7c730890d7a33fce70f8e3a16.jpg

然后点击操作

5946f64c1e342d4f0266e7f7145abb146bc.jpg

7417df20d7f196189090e01ced73be54797.jpg

然后点击回复操作

c23b95b11087c9f54f4cc032abab86e12c0.jpg

10.配置完之后,显示的是已启用

ae9555ec975e165738f7c64308a4f5105db.jpg

转载于:https://my.oschina.net/u/3851487/blog/1924737

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值