|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
欢迎大家来到仓酷云论坛!1、简介
公司外部主要的办事我们已经由过程之前先容的zabbix举行了监控,可是比来产生的一些情形促使我们从头完美监控体例。
十一放假时代一个早晨收到300多条报警短信,内容都是收集断开然后又从头毗连,从报警的内容来看第一工夫嫌疑收集不不乱,可是当晚值班的职员(营业部分)反应办事使用都一般,由此能够扫除收集妨碍;随后嫌疑监控体系因为MYSQL数据库招致功能不敷,事先的设法是重启下数据库办事应当能够即刻定位是不是是功能缘故原由,而事先专业保护职员都没法近程保护(假时代只带了手机),而这个成绩又不值得中止假期即刻保护。事先就想假如能够间接在网页上从头和检察自界说的办事该多好。
前些天又接到报障说营业体系没法会见而保护职员手机并充公到报警信息,经排查发明本来监控办事被工资中断。因而完成对监控办事的监控也势在必行。
1.1Frigga简介
小米开源的历程监控工具(https://github.com/xiaomi-sa/frigga),Frigga是一款利用复杂、极具扩大的历程监控的框架。她基于开源的god,修正和增加了web界面和rpc接口,以满意年夜集群办事办理的需求。
在北欧神话中,frigga是神后,odin的老婆;掌管婚姻和家庭;卖力纺织云彩。
1.2Frigga功效
集成了god,用来作为步伐的supervise步伐
C/S布局,而且集成了多种认证体例,以撑持年夜集群运维办理
基础功效均供应api接口,便利扩大
撑持单机web化的god,便利检察和办理
撑持日记检察
撑持增加自界说的xmlrpc接口,便利举行二次开辟
1.3Frigga情况依附
Ruby1.9.3和bundle
2、Frigga装置设置
2.1设置YUM源
先设置体系相干的yum源,以下所示:
1
2
3
4
5
6
7
8
wgethttp://mirrors.163.com/.help/CentOS6-Base-163.repo
mvCentOS6-Base-163.repo/etc/yum.repos.d/
wgethttp://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
wgethttp://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
rpm-ivhepel-release-6-8.noarch.rpm
rpm-ivhrpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
rpm-ivhhttp://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm--import/etc/pki/rpm-gpg/RPM-GPG-KEY-remi
2.2装置Frigga
先装置Frigga相干的依附包,以下所示:
1
2
3
4
5
6
7
8
9
10
yuminstallgit#装置git
yum-yinstallrubygems#装置ruby
curl-Lhttps://get.rvm.io|bash-sstable#晋级ruby
rvminstallruby-1.9.3#该步调前能够必要从头登录
geminstallbundle#装置bundle
cd/opt/#装置Frigga
gitclonehttps://github.com/xiaomi-sa/frigga.git
cd/opt/frigga
./script/run.rbstart#启动Frigga
godstatus#检察启动形态
2.3设置Frigga
默许情形下Frigga启动后开启WEB9001端口,用户名和暗码的认证设置寄存于/opt/frigga/conf/frigga.yml文件中,以下所示:
1
2
3
4
cat/opt/frigga/conf/frigga.yml
---
port:9001
http_auth:["admin","password"]
2.4设置SSH监控
设置文件,以.god后缀开头,能够寄存于gods文件夹下,以下的例子以CentOS6.4下的ssh办事为例。当ssh历程5分钟内start大概restart历程5次,假如启动失利,修正形态为unmonitored,10分钟后再次实验启动,假如2个小时内,实验5次都失利,完全保持。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
cd/opt/frigga/gods
vimsshd.god
God.watchdo|w|
w.name=sshd
w.start="/etc/init.d/sshdstart"
w.stop="/etc/init.d/sshdstop"
w.restart="/etc/init.d/sshdrestart"
w.interval=30.seconds
w.start_grace=10.seconds
w.restart_grace=10.seconds
w.pid_file=/var/run/sshd.pid
w.:clean_pid_file)
w.start_ifdo|start|
start.condition(:process_running)do|c|
c.interval=5.seconds
c.running=false
end
end
#lifecycle
w.lifecycledo|on|
on.condition(:flapping)do|c|
c.to_state=[:start,:restart]
c.times=5
c.within=5.minute
c.transition=:unmonitored
c.retry_in=10.minutes
c.retry_times=5
c.retry_within=2.hours
end
end
end
必要注重的是sshd下令的路径不要写错。完成以上设定后能够输出以下指令加载sshd的监控,以下所示:
1
godloadsshd.god
2.5设置apache监控
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
God.watchdo|w|
w.name=apache
w.start="/etc/init.d/httpdstart"
w.stop="/etc/init.d/httpdstop"
w.restart="/etc/init.d/httpdrestart"
w.interval=30.seconds
w.start_grace=10.seconds
w.restart_grace=10.seconds
w.pid_file=/var/run/httpd/httpd.pid
w.:clean_pid_file)
w.start_ifdo|start|
start.condition(:process_running)do|c|
c.interval=5.seconds
c.running=false
end
end
#lifecycle
w.lifecycledo|on|
on.condition(:flapping)do|c|
c.to_state=[:start,:restart]
c.times=5
c.within=5.minute
c.transition=:unmonitored
c.retry_in=10.minutes
c.retry_times=5
c.retry_within=2.hours
end
end
end
2.7设置MySQL监控
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
God.watchdo|w|
w.name=mysql
w.start="/etc/init.d/mysqldstart"
w.stop="/etc/init.d/mysqldstart"
w.restart="/etc/init.d/mysqldrestart"
w.interval=30.seconds
w.start_grace=10.seconds
w.restart_grace=10.seconds
w.pid_file=/var/run/mysqld/mysqld.pid
w.:clean_pid_file)
w.start_ifdo|start|
start.condition(:process_running)do|c|
c.interval=5.seconds
c.running=false
end
end
#lifecycle
w.lifecycledo|on|
on.condition(:flapping)do|c|
c.to_state=[:start,:restart]
c.times=5
c.within=5.minute
c.transition=:unmonitored
c.retry_in=10.minutes
c.retry_times=5
c.retry_within=2.hours
end
end
end
本文出自“假造的实际”博客,请务必保存此出处http://waringid.blog.51cto.com/65148/1313557
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们! |
|