忘记密码   免费注册 查看新帖 | 论坛精华区

ChinaUnix.net

  平台 论坛 博客 认证专区 大话IT HPC论坛 徽章 文库 沙龙 自测 下载 频道自动化运维 虚拟化 储存备份 C/C++ PHP MySQL 嵌入式 Linux系统
12下一页
最近访问板块 发新帖
查看: 1818 | 回复: 14

[其他] 有没有人有兴趣用 erlang 写一套监控系统? [复制链接]

论坛徽章:
32
荣誉会员
日期:2011-11-23 16:44:17射手座
日期:2014-09-03 16:01:17天蝎座
日期:2014-08-21 17:18:48丑牛
日期:2014-08-29 16:06:45天秤座
日期:2014-08-29 10:12:18天秤座
日期:2014-08-26 16:18:20双子座
日期:2014-07-30 11:38:27寅虎
日期:2014-08-04 10:24:12IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
发表于 2014-08-11 09:17 |显示全部楼层
RT.

基于 erlang 先天的监控树机制, 可以快速的反应出被监控节点的状态.

欢迎有经验的兄弟指点 !!
欢迎有兴趣的兄弟一起研究 !!

论坛徽章:
1
天蝎座
日期:2013-12-06 18:23:58
发表于 2014-08-11 16:40 |显示全部楼层
可以详细说说应用场景哇

论坛徽章:
32
荣誉会员
日期:2011-11-23 16:44:17射手座
日期:2014-09-03 16:01:17天蝎座
日期:2014-08-21 17:18:48丑牛
日期:2014-08-29 16:06:45天秤座
日期:2014-08-29 10:12:18天秤座
日期:2014-08-26 16:18:20双子座
日期:2014-07-30 11:38:27寅虎
日期:2014-08-04 10:24:12IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
发表于 2014-08-11 17:14 |显示全部楼层
回复 2# crazyhadoop

可以.

对于一般的管理中. 机器的监控多数采用snmp + ping . 但这有个问题, 就是 polling time, 一般的监控中. 都是定期执行的. 比如 每15分钟, 也有 每5分钟的.

但当机器太多时, 查询间隔就会增加, 因为监控进程无法控制更多的监控进程/线程了.

所以, 我想用 erlang 写一个 c/s 架构的应用. 或者称之为 agent / server 模式吧.

有一台(或多台)集中的server, 用来集中监控的信息.

每一台被监控的机器上有一个 agent, 用 erlang的 机制, 把它们连接起来, 在server 端 用监控树来监控每一个agent.

如果 agent 挂掉并且, 起不来了, 就说明被监控的机器down了, 或者忙到响应不过来了.

在中间, agent可以监控系统的资源使用情况, 定期(正常值时)/不定期(异常值需要马上向上汇报)向上汇报.

大概就是这个结构. 因为目前 erlang 能运行在绝大多数平台上, 所以, 这个 agent 应该比较合适.

更细节的技术问题, 我也没想好. 因为, 我对erlang还不熟. 选择它, 主要看重了它的监控树, 不用我自己来实现这一堆东西.

当然, 这个后面还有另外一个功能, 监控, 只是其中比较小的一部分.
   

论坛徽章:
34
CU大牛徽章
日期:2013-04-17 11:10:17CU大牛徽章
日期:2013-09-18 15:26:10狮子座
日期:2013-09-27 17:44:07CU十二周年纪念徽章
日期:2013-10-24 15:41:34射手座
日期:2013-10-24 21:01:23辰龙
日期:2013-12-20 17:07:19狮子座
日期:2014-05-12 11:00:00寅虎
日期:2014-06-04 16:25:27IT运维版块每日发帖之星
日期:2015-08-17 06:20:002015亚冠之首尔
日期:2015-11-04 22:25:43数据库技术版块每日发帖之星
日期:2015-12-01 06:20:00平安夜徽章
日期:2015-12-26 00:06:30
发表于 2014-08-18 14:40 |显示全部楼层
1.用来监控主机理论是可以的,但是实用价值不太高
因为erlang的安装太复杂,作为主机监控agent来说,不是很方便。
而传统的snmp,ping agent功能基本都是主机自带的。
一些第三方的agent,基本也是有一个相对简单的安装程序。
很难想象,在一台被管主机上,需要先装gcc,再编译erlang,再装agent程序。
如果都是windows/linux可能还好点。

2。我对erlang的监控树用得不多,  但是它的定制应该不是很容易吧。

论坛徽章:
32
荣誉会员
日期:2011-11-23 16:44:17射手座
日期:2014-09-03 16:01:17天蝎座
日期:2014-08-21 17:18:48丑牛
日期:2014-08-29 16:06:45天秤座
日期:2014-08-29 10:12:18天秤座
日期:2014-08-26 16:18:20双子座
日期:2014-07-30 11:38:27寅虎
日期:2014-08-04 10:24:12IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
发表于 2014-08-18 15:10 |显示全部楼层
回复 4# laputa73

安装并不复杂. 我已经成功把 erlang程序打包为一个发行包. 被监控的机器上不需要 erlang 的任何东西. 这个包放过去 , 执行一下 install.sh 直接可用. 当然, 前提是需要架构相同, 比如都是 都是 linux x64.

如果架构不同, 那就只发行 beam 包. 不发布 erlang 虚拟机. 这样, 每台机器上只要有erlang虚拟机就可以了. 除了Windows, 可以预先编译后打包发布.

snmp并不是一个好的选择, 主要是响应不够快. 还有就是有些监控点可能还取不到, 自定义不是那么方便.

其它的监控工具我也看过几个, 多数是用 perl 或 python 写成. 也同样存在跟 snmp 类似的问题.

监控树的问题比较容易解决, 我虽然还不熟, 但我看到 couchbase 中有完整的监控代码, 我不一定要copy, 但 参考一下总是可以的吧.

论坛徽章:
34
CU大牛徽章
日期:2013-04-17 11:10:17CU大牛徽章
日期:2013-09-18 15:26:10狮子座
日期:2013-09-27 17:44:07CU十二周年纪念徽章
日期:2013-10-24 15:41:34射手座
日期:2013-10-24 21:01:23辰龙
日期:2013-12-20 17:07:19狮子座
日期:2014-05-12 11:00:00寅虎
日期:2014-06-04 16:25:27IT运维版块每日发帖之星
日期:2015-08-17 06:20:002015亚冠之首尔
日期:2015-11-04 22:25:43数据库技术版块每日发帖之星
日期:2015-12-01 06:20:00平安夜徽章
日期:2015-12-26 00:06:30
发表于 2014-08-18 15:23 |显示全部楼层
这个东西在大规模的探针监控可能会用得到.
我目前的方案是通过http协议实现探针的注册,上报,心跳,任务下载.
如果换成erlang,那么监控,注册,心跳这块就可以简化.
有个问题就是如果探针运行在内网,erlang的进程通信会不会有问题?

论坛徽章:
32
荣誉会员
日期:2011-11-23 16:44:17射手座
日期:2014-09-03 16:01:17天蝎座
日期:2014-08-21 17:18:48丑牛
日期:2014-08-29 16:06:45天秤座
日期:2014-08-29 10:12:18天秤座
日期:2014-08-26 16:18:20双子座
日期:2014-07-30 11:38:27寅虎
日期:2014-08-04 10:24:12IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
发表于 2014-08-18 16:19 |显示全部楼层
回复 6# laputa73

这个我想过, 如果全在内网, 当然是没问题的.

如果有内网, 有外网, 那需要一个加密的封装. 加密这一块, 我还没研究过.

准备是先把内网搞好, 然后再考虑加密网关这一块. 必要时, 采用多个监控节点, 用http或其它的方式与主机(中心节点)联系.
   

论坛徽章:
26
金牛座
日期:2014-09-15 15:59:16程序设计版块每日发帖之星
日期:2015-11-24 06:20:00程序设计版块每日发帖之星
日期:2015-11-25 06:20:0015-16赛季CBA联赛之新疆
日期:2015-12-19 19:05:48IT运维版块每日发帖之星
日期:2015-12-25 06:20:31IT运维版块每日发帖之星
日期:2015-12-25 06:20:31IT运维版块每日发帖之星
日期:2015-12-25 06:20:3315-16赛季CBA联赛之上海
日期:2016-04-15 19:51:31程序设计版块每日发帖之星
日期:2016-04-17 06:23:29程序设计版块每日发帖之星
日期:2016-04-23 06:20:00程序设计版块每日发帖之星
日期:2016-05-26 06:20:00每日论坛发贴之星
日期:2016-05-26 06:20:00
发表于 2014-08-19 13:31 |显示全部楼层
前台展示用什么呢?:wink:

论坛徽章:
32
荣誉会员
日期:2011-11-23 16:44:17射手座
日期:2014-09-03 16:01:17天蝎座
日期:2014-08-21 17:18:48丑牛
日期:2014-08-29 16:06:45天秤座
日期:2014-08-29 10:12:18天秤座
日期:2014-08-26 16:18:20双子座
日期:2014-07-30 11:38:27寅虎
日期:2014-08-04 10:24:12IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
发表于 2014-08-19 14:01 |显示全部楼层
回复 8# shijiang1130

第一步当然是 web . yaws 如何?
   

论坛徽章:
0
发表于 2014-08-24 19:01 |显示全部楼层
我在写了。。。。专门用来监控服务器集群的,加入讨论组,一起研究吧,见我签名
您需要登录后才可以回帖 登录 | 注册

本版积分规则

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802020122
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP