实时数据驱动的应用运维.ppt

上传人:文库蛋蛋多 文档编号:2348387 上传时间:2023-02-14 格式:PPT 页数:41 大小:3.37MB
返回 下载 相关 举报
实时数据驱动的应用运维.ppt_第1页
第1页 / 共41页
实时数据驱动的应用运维.ppt_第2页
第2页 / 共41页
实时数据驱动的应用运维.ppt_第3页
第3页 / 共41页
实时数据驱动的应用运维.ppt_第4页
第4页 / 共41页
实时数据驱动的应用运维.ppt_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《实时数据驱动的应用运维.ppt》由会员分享,可在线阅读,更多相关《实时数据驱动的应用运维.ppt(41页珍藏版)》请在三一办公上搜索。

1、实时数据驱动的应用运维,饶琛琳,我是?,给 CloudEx,C,RenRen,Sina 重启服务器;精通 echo/say/puts/console.log(“Hello World”);写过网站运维技术与实践;翻过Puppet 实战手册。,运维是?,开发是?,“When I see.developers all I see is risk”Chuck Rossi,Facebook才不是,为什么做不好运维,数据不一致,为什么做不好运维,数据不一致数据不及时,为什么做不好运维,数据不一致数据不及时数据不清晰,怎么做好运维,数据不一致=Configuration Management数据不及时=M

2、etric Monitor/Dashboard数据不清晰=Log Process/Analysis/Search,“Monitoring is the aggregation of health and performance data,events,and relationships delivered via an interface that provides an holistic view of a systems state to better understand and address failure scenarios.”Ryan Frantz Etsy,数据怎么来,不记你不

3、打算用的日志;次数是最感兴趣的;在第一条的前提下尽可能收集所有日志;没有7*24值班人员的话,IDS也就用不着实时。Laws of Marcus J.Ranum,大数据怎么来,不记你不打算用的日志;次数是最感兴趣的;在第一条的前提下尽可能收集所有日志;没有7*24值班人员的话,IDS也就用不着实时。Laws of Marcus J.Ranum,大数据是?,Volume(越来越大)Velocity(越来越快)Variety(越来越复杂)Laney 2001.02,有多快?,有多复杂?,应该啥样?,应该啥样?,最后是这样,最后是这样,!zabbix 的 screen 字段截图,最后是这样,这背后,

4、Rsyslog*50Logstash*10ES masternode*3ES datanode*28=单日 70 亿条,4TB 索引Zabbix*3=500k 监控项,60s 间隔以及在 400+Nginx/PHP 机器上通过 Rsyslog 直接调用的 process2zbx 脚本,这背后,Elasticsearch 简介,基于 Lucene 构建的,提供 RESTful 接口的,分布式,实时全文搜索引擎。http:/www.elastic.co架构层面:cluster node indices shard(primary/replica)segment 数据层面:index type do

5、cument field(_source/_all/analyzer)Master 只是维护 cluster state,数据交互可以直接发给任意节点,Kibana 简介,基于 Angular.JS 框架写的 Elasticsearch 数据展示前端。开发者是重构狂:V1-PHPV2-RubyV3-Angular.js/jQuery.flot.jsV4beta-Angular.js/D3.js+JRubyV4-Angular.js/D3.js+Node.JS重复一次:count 是最重要的。,推荐阅读,24,Elasticsearch 聚合示例,curl 127.0.0.1:9200/_all

6、/_search?pretty=1-d query:match_all:,aggs:range1:range:field:resp_ms,ranges:to:100,from:101,to:500,from:500,ES 自定义脚本,config/scripts/regex.groovy 如下:matcher=(docfieldname.value=/$pattern/)if(matcher.matches()matcher01需要下发到每台 datanode 上,ES 自动探测新脚本并加载。,ES 自定义脚本运用,curl 127.0.0.1:9200/logstash-2014.11.27

7、/_search?pretty&size=0-d aggs:ip_class:terms:script:regex,params:fieldname:client_ip.raw,pattern:(?:d1,3.?)3).d1,3$,ES 动态脚本示例,aggs:2:terms:script:v=dochost.value;if(v!=null)v.split(/./)2,lang:groovy,size:5,order:_count:desc,valueType:string,ES 动态脚本示例,ES 嵌套聚合示例,aggs:“1:terms:field:slow.1“,aggs:“2:ter

8、ms:field:slow.2,aggs:“3:terms:field:slow.3,aggs:“4:terms:field:slow.4“,场景示例(crash func),场景示例(error trend),场景示例(SLA),场景示例(user track),还可能(distribution testing),ES 与 Zabbix,rm-f/tmp/es2zbx.restime=date+%Y.%m.%dfor url in cat/path/to/url.list;do key=echo$url|sed s!/!-!g curl-o/tmp/$key.res-s-XGET http:

9、/esdomain:9200/logstash-mweibo-nginx-$time/_search?size=0-d query:filtered:filter:bool:must:range:timestamp:from:now-5m,to:now,term:urlpath:$url,aggs:req_avg:avg:field:request_time“count=cat/tmp/$key.res|grep-oP hits:total:d+|awk-F:print$NF avg=cat/tmp/$key.res|grep-oP value:d+.d+|awk-F:print$NF-z$a

10、vg&avg=0 echo“zabbixserver hits$key$count/tmp/es2zbx.res echo“zabbixserver mean$key$avg/tmp/es2zbx.resdonezabbix_sender-i/tmp/es2zbx.res-z zabbixserver,ES 与 Zabbix,ES 常见误用场景,长期可靠的数据存储(vs Hadoop/Cassandra)是分布式系统,P2P 线性扩展,但索引分词是有容量膨胀的流式计算(vs Storm/Spark streaming)是近实时索引,ms 级响应,但索引分词是有额外计算消耗的时序数值存储(vs Graphite/OpenTSDB)是提供聚合统计,但是好浪费啊ES 适于 locate documents by keyword and perform quickly faceted drilldown。,推荐阅读,Elasticsearch 服务区开发(第2版)Zabbix 监控系统深度实践日志管理与分析权威指南数据之魅:基于开源工具的数据分析网站运维:保持数据实时的秘笈Web 容量规划的艺术大规模 Web 服务开发技术https:/,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号