欢迎来到天天文库
浏览记录
ID:56005537
大小:44.95 KB
页数:4页
时间:2020-03-15
《网络监控平台Shinken安装示范.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、网络监控平台Shinken安装示范Shinken是一个网络监控平台,可以通过一系列直观的方式监控网络内的各种健康状况。Shinken,单单这个名字接近于日语发音的“新建”,Shinken脱胎于Nagios,其实Shinken这个项目本身就是一帮Nagios项目的人无法忍受Nagios,自己跳出来重新用Python重构了一下——较低的版本甚至完全兼容Nagios的配置文件。AD:Shinken是一个网络监控平台,可以通过一系列直观的方式监控网络内的各种健康状况。Shinken,单单这个名字接近于日语发音的新建,Shinken脱胎于Nagios,其实S
2、hinken这个项目本身就是一帮Nagios项目的人无法忍受Nagios,自己跳出来重新用Python重构了一下较低的版本甚至完全兼容Nagios的配置文件。要吐漕的是Litrin在尝试安装的时候用了N个版本,0.x的根本找不到文档;1.x的文档很全,插件兼容性有问题;2.x文档有,插件全,就是明显的有bug。只能自己在github上fork之后提交补丁好在当天就被采纳了。不过话说这也是开源项目的一个常态,一个项目一旦做到差不多,团队很快就会因为产品定义的不同出现分歧,然后一帮人就fork代码搞个新项目,最终的结果就是一堆类似功能的项目,多的挑花眼
3、却没有一个是完美的。安装前先简单了解下Shinken的架构,相比Shinken借鉴的Nagios,这个明显要复杂很多。多种角色:不同于传统CS架构,应该是出于分布式的考虑。Shinken的结构真的有些变态了。Arbiter(仲裁):Arbiter节点读取本地的配置,然后将配置切分之后分发到多个合适的schedulers节点。Scheduler(调度):scheduler节点负责分别管理poller和reactionner节点的任务调度。Poller(轮询):poller节点通过各类插件执行scheduler节点的任务,获取各种健康指标。Reacti
4、onner(响应):reactionner节点的任务是一旦满足要求将触发event_handlers机制(比如发送通知等)。Broker(中间人):broker节点的任务真的是中间人导出和管理scheduler节点中的数据。Receiver(接收人):可选节点,在某些特定场景下可以通过reciver节点汇总数据(比如汇总私网内部数据,统一转发)。除了Arbiter节点之外,任何的节点都可以不是唯一的。节点之间的关系也都是多对多的。每一个节点都支持依赖插件,或者说Shinken本身只是一个插件的框架而已。保障性能和可靠性根据CAP法则,放弃了一致性。
5、说了这么多的理论,开始动手吧!这次终于使用了Ubuntu14.04的Server版。前边也介绍过,N多的版本都不完善,这里只能采用Ubuntu的apt方法来安装。这里为了省去前面的6种节点角色的复杂,只用主控和受控两种角色粗暴的示范安装过程。主控端操作#apt-getinstallshinken看看哪些包被安装了root@ubuntu14:~#dpkg-l
6、grepshinkenrcshinken1.4-2amd64Flexiblemonitoringtool-Meta-packageiishinken-common1.4-2amd64Flexib
7、lemonitoringtool-Commonfilesiishinken-module-broker-webui1.4-2amd64ShinkenWebUIbrokermoduleiishinken-module-broker-webui-cfgpassword1.4-2amd64Shinkencfg_passwordauthentifcationmoduleforWebUIbrokeriishinken-module-broker-webui-sqlitedb1.4-2amd64ShinkenSqlitestoragemoduleforWebU
8、Ibrokeriishinken-module-retention-picklefile1.4-2amd64RetentionmoduleforArbiter,SchedulerorBroker安装结束后,正常情况下,在你的etcinit.d目录下将会有一系列以shinken开头的脚本。这个时候,如果你简单粗暴的servershinkenstart的话肯定是一堆的报错等着你。好吧,这个问题我找了很久才发现。编辑etcdefaultshinken,将第34行修改为:BIN=usrlibpython2.7dist-packagesshinkenbin这
9、个时候再servershinkenstart应该会成功。其实shinkenstart的脚本是启动所有的关联的服务,你可以通
此文档下载收益归作者所有