服务器监控开源_服务器监控开源软件「服务器监控软件开源」

  本文根据DBAplus社群第108期线上分享整理而成。

  讲师先容

  张观石

  虎牙直播业务运维负责人

《运维火线》联相助者

拥有多年互联网业务运维履历

  主题简介:

时序数据库底子知识先容

业界利用时序数据库的一些案例

时序数据库在直播业务监控中的实践

  各人好,我是张观石,如今在虎牙直播负责直播业务运维工作。之前看到社群发了一篇《基于InfluxDB+Grafana打造大数据监控利器》,提到了时序数据库,本日分享主题有点雷同,不外我会从差别的角度来说一说。

  为什么会讲时序数据库呢?各位DBA大概重要关注关系型数据和各种NoSQL,而时序数据库近来有一种鼓起趋势,以是特地拿来讲一讲。

  一、时序数据库简介

  时序数据库是一种为了处理惩罚时间序列数据而特别优化的数据库。它以时间系列为关键索引,特别得当于连续时间分片的数据存储和检索。重要用于处理惩罚带时间标签(按照时间的次序变革,即时间序列化)的数据。

  在传统行业,如电力行业、化工行业、物联网等各范例及时监测、查抄与分析装备所收罗、产生的数据,都是时间序列数据,这些工业数据的典范特点是:产生频率快(每一个监测点一秒钟内可产生多条数据)、严峻依靠于收罗时间(每一条数据均要求对应唯一的时间)、监测点多信息量大(通例的及时监测体系均有成千上万的监测点,监测点每秒钟都产生数据,每天产生大量数据)。

  如今很多企业对于时序大数据的存储和处理惩罚每每采取关系型数据库的方式举行处理惩罚,但由于关系型数据库天生的劣势导致其无法举行高效的存储和数据的查询。时序数据库通过利用特别的存储方式,使得时序大数据可以高效存储和快速处理惩罚海量时序数据,是办理海量数据处理惩罚的一项紧张技能。该技能采取特别数据存储方式,极大进步了时间相干数据的处理惩罚本领,相对于关系型数据库它的存储空间减半,查询速率极大的进步。特别在互联网行业的运维监控,业务监控中利用。

  时间序列

  我们常说的时间戳,timestamp,unix_time是一个时间点,而无数个时间点毗连起来就是所谓的时间系列,简称时序。

  时序数据

  带维度标签、以时间点或时间范围为索引的数据也称为时序数据。明白为某一度量指标在某一时间点的一个值。

  时序数据布局

  从以上几点可以相识时序数据应该包罗几个方面:度量指标、标签、值、时间点。

  举个例子,度量指标数据:

  Usercountplatform=dbaplusspeaker=zhangguanshi1497344217value=500

  这里分成几个部分:

Metric:usercount

Timestamp:1497344217

Value:500

Tags:platform=dbaplus,speaker=zhangguanshi

  各部分表明:

Metric:监控项/指标度量,如同时在线用户usercount。

Tags:标签/维度,在OpenTSDB内里,Tags由tagk和tagv构成,即tagk=tagv。标签是形貌Metric的属性,分享主题的讲师,tags可为speaker=zhangguanshi。

Value:一个Value表现一个metric的实际数值,譬如上面的500

服务器监控开源_服务器监控开源软件 服务器监控开源_服务器监控开源软件「服务器监控软件 开源」 行业资讯

Timestamp:即时间戳,用来形貌产生时序数据的时间点,上面的1497344217

DataPoint:即某个Metric在某个时间点的数值。

  1)DataPoint包罗以下部分:Metric、Tags、Value、Timestamp

  2)上面形貌的本场分享在21:09时间的同时在线用户,就是1个DataPoint

  数据特点:

根本上都是插入,没有更新的需求;

数据根本上都偶然间属性,随着时间的推移不绝产生新的数据,旧的数据不必要生存太久;

业务方对时序数据通常有几个查询需求;

获取最新状态,查询近来的数据(比方传感器最新的状态);

展示区间统计,指定时间范围,查询统计信息,比方均匀值,最大值,最小值,计数等;

获取非常数据,根据指定条件,筛选非常数据。

  跟平凡数据的区别1:

时序数据库就是存放时序数据的数据库;

而时间序列是无穷的,不绝递增的,而指标也可以成千上万,为海量数据而计划的;

时序数据是特别为次序写入;

时间是数据库插入查询的核心条件,以时间为连续条件。

  跟传统数据库的区别2:

时序数据库简单,没有复杂模式/范式计划。某一度量指标在某一时间点只会有一个值;

没有事件;

写多读少无更新;

次序读、区间范围读;

基数大。

  时序数据库要办理的题目:

以时间点为次序产生的数据;

数据量大,数据泉源多;

数据的维度多,差别指标有差别维度;

统计查询复杂,如恣意时间访问,多粒度的检索;

必要快速相应查询;

对中小团队收益特别大。

  二、业界利用时序数据库环境

  简介

  在《解密GoogleSRE》一书中作者提到了Google的监控体系borgmon和prometheus非常像。prometheus是一款开源的时序数据库,可以想见Google也是用的雷同时序数据库举行监控。Fackbook开源了时序数据库引擎Beringei。他们内部也用的这个做监控。阿里巴巴的Goldeye黄金眼,也是一款时序数据库;百度云产物TSDB,重要用于物联网相干的监控;国内非常火的监控体系Open-falcon也是一款开源时序数据库。固然尚有着名的开源软件:Graphihe、OpenTSDB、InfluxDB、Druid、TimeScaleDB等。

  我们看下DB-Engine网站对时序数据库的排行。

  出处:https://db-engines.com/en/ranking/time+series+dbms

  参考资料:https://liubin.org/blog/2016/02/25/tsdb-list-part-1/

  这里以OpenTSDB为例重点先容下时序数据库的一些技能。

  先容Opentsdb及相干组件

  Tsd和存储层

  OpenTSDB的核心,本身比力简单,是Java实现的一套程序。用来读写底层存储及数据处理惩罚。

  存储:

  OpenTSDB底层存储利用的HBase,天然ZooKeeper、HBase、HadoopHDFS是少不了的。其架构分布式、高可用也是由HBase实现。

  Rowkey的计划是亮点:

  Rowkey:metric+timestamp+tagk1+tagv1…+tagkN+tagvN

  HBase(main):003:0scan'tsdb'

  ROWCOLUMN+CELL

  \x00\x00\x01U\x9C\xAEP\x00\xcolumn=t:q\x80,timestamp=1497344217,value=\x1700\x01\x00\x00\x01\x00\x00\x02\x00\x00\x02

  说OpenTSDB没有计划模式是指上层上报来的数据,在底层OpenTSDB还是有存储表的,在往HBase中写入和查询利用了一套自界说的数据布局,OpenTSDB的存储格式是在HBase存储了几个表:

DataTable:表名默认叫tsdb,存储时序数据的表。

UIDTable:表名tsdb-uid,UID映射表,时序数据存储时不消实际的字符串,而是颠末此表映射之后,取得一个UID,存储在datatable中的着实是整个uid。

MetaTable:元数据表,时间序列数据的索引表。

TreeTable:树表,也是存储元数据用的。

Rollup表:存储rollup和pre-aggregation的数据。

  WebUI

  OpenTSDB有多个展示端,Grafana是此中一个支持得较好的。前面文章也讲到了Grafana,这里不多讲。

  收罗层

  收罗支持udp协议、http协议、telnet。可利用多种收罗上报方式,包罗脚本、应用内上报等。

  生存数据最简单的方式是:

  $telnetlocalhost4242

  putsys.cpu.user149734421723host=web01user=mirzhang

  告警层

  官方保举是bosun,一套强大的开源告警软件。

  插件

  开辟了新插件,如支持内部uid到主播的映射。

  三、虎牙直播业务监控实践

  配景

  各人大概都知道直播是浩繁互联网行业中技能比力复杂的技能,视频从主播端收罗到推流节点,到转推环节,到分发网络,到观众端,这么复杂的链路中要保障音视频直播的流畅是很有挑衅的。

  视频质量指标很多:

感官卡顿比

网络卡顿比

错误率

慢速比

服务器监控开源_服务器监控开源软件 服务器监控开源_服务器监控开源软件「服务器监控软件 开源」 行业资讯

视频加载乐成率

播放时延

卡比例

视频加载时间

毗连时间

RTT

  微服务的质量指标:

  虎牙直播后端是微服务架构,我们把数千个微服务的乐成率,调用次数、延时等信息都通过期序数据库来监控。

  同时在线用户规模大

  维度多:分端、分地区、分主播、分线路

  以是部分用户说卡的时间,要分析N多种环境。

  根本架构

  整套体系包罗收罗、存储分析、输出等几个部分,收罗端利用了多种收罗本领和方法。

  在体系的利用层包罗账号、安全这些通用步伐,也包罗TSDB数据层,存储层,及前端展示UI层。

  输出是利用时序数据库中的数据实现运维需求。

  技能架构

  我们收罗了全部能收罗到的质量相干数据,此中包罗主播、观众、中心各个环节。收罗数据规模非常的大,要及时收罗,尽大概及时展示,以是全部都直接读写TSDB是不可的,我们通过流式盘算的环节举行预处理惩罚,这一层是微服务架构,可以很轻易扩展。原始数据大概是各种复杂格式的,通过预处理惩罚也可以到达过滤、聚合、预盘算的目标,可以按业务的需求举行机动处理惩罚。

  我们微服务的质量数据,包罗乐成率、调用延时数据原来是通过MySQL生存,通过开辟web背景来展示,厥后改造为通过期序数据库来生存展示。

  监控告警

  Bosun是一个新型的监控和告警体系,由StackExchange团队打造,利用Golang编写,支持界说复杂的告警规则,支持OpenTSDB、Graphite、Logstash-Elasticsearch等数据源。bosun将是Zabbix、Nagios的有力竞争者。

  bosun从TSDB读取时序数据,可以经过bosun表达式做一系列的盘算,根据告警战略发送告警,告警的内容是界说好的bosun模板。

  这些质量监控告警不绝连续反馈给各相干职员、厂商。及时告警买通各渠道:微信、QQ、钉钉、YY、邮件等。

  时序数据的别的用途

  我们还通过TSDBAPI从时序数据库获取数据,定制各种定期陈诉如日报、周报等。

  质量数据结果图:

  QA

  Q1:虎牙用的是时序数据库+大数据构建业务监控体系吗?

  A1:是的,在预处理惩罚环节有分析逻辑。

  (接上问)

  Q2:那么如许做应该只能对:应用层做监控,对吧?涉及到数据库如MySQL就没办法监控,是吗?

  A2:时序数据库也得当底子监控,我个人重要做业务运维,以是重点是业务监控。

  Q3:预处理惩罚是用什么作的?怎么及时写OpenTSDB?

  A3:是一套微服务程序,Java的,上报到这里,经太过析后得到指标数据,再存入TSDB。

  (接上问)

  Q4:这和别的的及时分析有何区别?

  A4:时序数据库以极低的成原来存储分析时序数据,别的及时分析会重不少,场景也不太一样。

  Q5:也就是说时序数据库重要应用在应用监控?尚有别的场景应用吗?

  A5:前面说了也得当底子监控。只要是时间次序数据都可以存。

  Q6:时序数据库的瓶颈是什么,可以分享下这个应用监控体系构建中的一些履历吗?假如我们也预备构建一套监控的话。

  A6:在我们利用过程中,分布式的写入性能,查询性能有碰到题目。OpenTSDB散列要匀称。

  直播链接

  https://m.qlchat.com/topic/270000376855401.htm?isGuide=Y

  暗码:666

  近期活动:

  2017DAMS中国数据资产管理峰会上海站将会在7月7日-8日以主题分场及培训课程的情势,携同众位来自阿里、腾讯、京东、搜狐、美团、携程、饿了么、中国移动、新炬网络、安全科技、轻维软件、润乾软件等名企的精英技能专家,与各人深入分析各项技能的前沿理论与最佳实践,以知识武装开启2017下半年!

  限时优惠,火热报名中...点击峰会官网,优先抢座!

  https://www.dams.org.cn/

你可能想看:

关键词:

服务器是什么服务器租用平台服务器租用多少钱一年服务器怎么搭建服务器异常怎么解决服务器下载安装服务器回收服务器品牌前十大排名服务器图片服务器地址服务器登录入口服务器系统服务器软件服务器租用服务器机柜服务器配置服务器的作用和功能服务器地址怎么查询软件商店安装软件免费下载的网站软件商店下载软件商店oppo官方下载软件开发软件工程软件库合集软件资料网址2024软件库软件下载3.0.3免费vivo版破解大全软件网站下载3.0.3免费下载安装软件管家软件商店软件下载官方网站软件之家软件管理官网下载软件下载软件服务软件管家360官方下载软件开发公司开源阅读开源阅读app开源是什么意思开源证券开源节流开源节流什么意思开源软件开源中国开源鸿蒙开源众包开源节流是什么意思开源证券肥猫开源节流降本增效措施及建议开源证券官方网站开源网站监控员证在哪里考证监控摄像头怎么连接手机监控软件下载监控摄像头哪个品牌的好监控摄像头监控记录一般保存多久监控摄像头app万能版监控怎么恢复以前的视频监控摄像头怎么安装视频教程监控品牌排行榜前十名监控人vs马桶人全集监控人vs马桶人监控人监控系统登录入口监控眼监控人vs马桶人全集多元宇宙僵尸监控软件电脑版监控人vs马桶人视频全集监控人vs马桶人77集p4

客户评论

我要评论