全自动性能监控——Graphite部署实战

in #cn7 years ago

 性能监控一直是一个运维和测试永恒的话题,graphite+carbon这一组合已经流行了很久,docker的出现也让部署graphited哦工作变得更加简单。轻松几步就可以收集到如下图一样的性能图表。


先简单介绍一下graphite:
Graphite由三个软件组件组成:carbon - 一个Twisted守护进程,监听时间序列数据whisper – 一个简单的数据库库,用来存储时间序列数据,在设计上类似于RRDgraphite webapp – Django webapp,使用 Cairo来根据需要呈现图形通过docker,可以一键就部署好一个graphite server,而graphite server收集数据绘制图表,无论是windows,linux还是mac都可以通过statsd这样的工具收集本机的cpu,内存,硬盘,网络等等性能数据发送到同一台graphite server,从而达到性能监控比较的目的。

部署方式

1. docker pull kamon/grafana_graphite2. docker run -d -p 64020:80 -p 64025:8125/udp -p 64026:8126 --restart=always --name kamon-grafana-dashboard kamon/grafana_graphite

这样就可以在服务器上启动一个graphite服务了,再在浏览器里输入grafana的地址就可以。grafana是graphite的美化版本,在网页端有更加好的界面。
通过配置,也可以统计网站,app的api调用次数,失败次数等等,构建一个强大的dashboard,想象一下《社交网络》里的大电视机上显示公司app的注册人数达到100万的那种激动心情吧。


简单的介绍,不再赘述技术细节,对于web软件性能监控,或者软件部署性能测试,graphite绝对是神器,值得尝试。