029-89353355
乐鱼体育直播下载 contact us
手机:18991830957
座机:029-89353355
Q Q:359316042
邮箱:xr@x-barcode.com
地址:西安市雁塔区雁塔西路158号双鱼大厦A座13层
企业公众号
产品介绍
今日的共享首要围绕着我所主导和重度参加的两个开源项目,Open-Falcon 和夜莺监控打开,井蛙之见,和咱们一同讨论沟通监控系统的开展和演进。
咱们能够看到,在CNCF landscape中,在监控剖析这个大的领域中,呈现出了特别多的优异项目,为什么会发生这样的改变?
这和曩昔10年,技能架构的演进革新有关。在曩昔的十年,微服务架构与云原生技能,彼此促进开展,成为巨大的技能革新浪潮,而监控剖析是云原生技能架构的要害要素之一。
1.低耦合:使得咱们具有了构建更大规划的系统的才能,而且经过极致的低耦合,从技能根本上,提高了协作的功率,然后带来了软件迭代功率的提高。
2.弹性:假如说云原生架构,只允许保存一个特性,你怎样选?我会挑选保存“弹性”。曩昔很长一段时间,系统的可扩展性,是摆在架构师、运维等技能人员面前的头号问题,今日借助于云原生架构和微服务模型,咱们能够快速地获取和开释资源,自动化地对咱们系统规划进行扩缩容。一同咱们把资源的供给单位,切开的粒度变得更小,进行自动化的编列调度。从而,带来了资源运用功率的革命性提高。
用经历总结织造、及时调“方向”,以反思复盘催熟Open-Falcon“新计划”
但价值是什么?微服务和云原生,给系统的可维护性,带来了巨大的应战,系统的全体杂乱度和系统之间的彼此依赖程度更高,因而,监控剖析,成为一个要害支撑要素。Open-Falcon 和夜莺监控,也是在这样的大布景下,开展和生长起来的。
要回答Open-Falcon为什么会盛行,那就得先回到2013年,从需求说起。其时我在小米作业,公司的互联网事务飞速开展,事务规划越来越大,监控系统的容量有限和事务的体量快速胀大,成为中心对立。
所以,Open-Falcon在架构规划上,一个最要害的考量点便是“怎样做到水平扩展”。
1.界说了可扩展的数据模型(label),引进了标签的概念,能够大大增强监控目标的表达才能;
2.从一开端就规划了专属的数据收集器falcon-agent,数据采什么、怎样采、采了怎样用,都考虑到了,做到了开箱即用,常识沉积。
3.数据选用“推”的方法;falcon-agent收集到的数据,直接推送到transfer组件,当然用户也能够经过transfer的api来推送自界说数据;(确保了时效性、便当研制团队接入数据)。
4.transfer 组件,是数据传输网关,能够水平扩展,一同transfer会依据必定的数据分片规矩,将数据推送给存储模块graph、以及告警断定模块judge。
5.在整个Open-Falcon的架构中,中心思维是选用数据分片架构处理扩展性问题。比方 transfer 模块自身是无状况的,能够水平扩展;graph组件是依照一致性hash算法对数据进行分片存储,judge模块也是依照一致性hash算法来处理特定分片的数据和使命。
6.最终,Open-Falcon 不仅仅是一个东西,更多的是一个产品,将互联网公司的运维经历沉积到产品中,一同具有较高的产品完结度,在数据收集、办理portal、可视化、告警断定、告警告诉等方面,都有不错的体现。
1.在数据模型上,尽管很早(2013年)就引进标签的维度,可是未能和Prometheus的数据模型看齐,导致后续在生态的融合上呈现额定的妨碍。
2.选用推的数据模型,在“操控”方面会比较弱(要做好流控、脏数据操控等才能),关于数据中止的监控无法感知(增加了“nodata”的额定逻辑,Prometheus是在scrape数据的时分,供给了target_up目标)。
3.流式的judge模型,天然无法很好的处理多条件组合报警等杂乱断定(aggregator处理了一部分问题)。
4.proxy架构,没有很好的处理数据再平衡的问题(尽管供给了扩缩容时migrate数据的计划,可是运维操作比较杂乱)。
5.根据RRD的数据格式,环状数据库,尽管磁盘的运用功率很高,可是磁盘 IO 负载很高(尽管做了优化,将小文件的随机写入,加了写的缓存,修改为批量写入等,但间隔抱负作用还有距离)。此外关于ad-hoc查询,支撑比较弱。
Open-Falcon的开展为什么遇到了瓶颈,除掉上面说到的规划上的一些缺点,更重要的是,Open-Falcon一向未能树立起敞开、自治的社区。能够看到,有许多的公司都在根据Open-Falcon做二次开发,许多的公司在自己的JD中注明,需求了解Open-Falcon二次开发。可是Open-Falcon 的奉献者数量停留在了100位之后就根本阻滞了,未能继续的构成合力。
瓶颈二,原因在于,Open-Falcon重视的更多是物理机架构的监控计划,未能很好的跟上云原生架构转型的脚步。
有别于物理机年代,更多在重视主机、系统层面的 metrics,在今日,Mesh、Pod、App、Business 层面,所发生的 metrics 占到了更大比重,以出产实践中的核算为例,占比达到了 80% 上下。这对数据收集和存储,都带来了新的应战。
数据的收集、存储、核算的本钱在下降,数据的重要性在凸显,此消彼长,数据应收尽收,办理前置,成为了运用和系统开发人员的埋点准则。此外,eBPF 技能的开展和遍及,使得数据捕获和运用层更解耦,在网卡、网络协议栈、内核等环节更高效的进行埋点和数据解析,并有望构成系统的、普适的处理计划。
以目标类型的监控数据为例,Label 作为云原生 Metrics 数据模型的魂灵,Open Metrics 成为事实上的云原生 metrics 规范。数据维度更多,对监控系统的架构规划、扩展性、产品交互领会,提出了应战。
比方,在微服务和云原生架构下,Pod 的生命周期不再是长时间的,其状况改变的频率也更高,这使得关于监控数据的连续性追寻和相关剖析变得更困难。
在微服务和云原生架构下,单个 Pod 的状况监控重要性下降,用户更关怀以 App 维度,或许其他 Label 维度的聚合查询,此类 Ad Hoc 查询的灵敏度和功用,怎样在产品规划和系统架构规划上取得折中,怎样在确保灵敏度的一同,操控好长尾恳求的体现,变得十分要害。
6、Metrics 与 Logs、Traces 需求融会贯通。彼此打通以及树立相相联系重要性凸显
因为微服务和云原生架构的杂乱度和封装,使得系统办理员和研制人员,很难再去到详细的机器和案发现场,经过查询日志等方法来 debug。怎样在监控系统层面,将 metrics、logs、traces 相关信息打通,关于研制、运维和运营人员,能供给更多的便当。
云原生年代,监控系统的运用集体发生了改变,从面向规划较小的,具有专业才能的专职运维工程师集体,变成了更广阔的研制、测验、运营人员集体,监控产品的领会好坏、入门门槛足够低、是否能够开箱即用,变得极为重要。
此外,在数据应收尽收的布景下,数据多,假如缺少有用的洞悉手法和数据处理手法,那么数据多反而会变成一种搅扰和担负。怎样供给大局一致的数据视图,树立有用的信息系统,把常识沉积、赋能,关于监控产品的用户能够发挥更大价值。
最终,咱们也逐渐从重视怎样出产数据,到进入管好数据,以及怎样用好数据的新阶段。
根据之前咱们做Open-Falcon的经历总结反思,结合云原生监控的开展特色和趋势,咱们从头考虑,一个现代化的监控系统,应该是什么样的?
夜莺监控便是根据这样的大布景下诞生和开展起来的。运用夜莺既能够监控传统的物理机架构、能够监控微服务架构和K8s,也能够监控公有云的资源和服务。供给一致的监控数据视图,供给集中化的可视化和办理界面。换句话说,你能够运用夜莺监控,来完结zabbix + Prometheus + grafana + 云监控的作业。
夜莺监控由数据收集器、告警引擎、可视化引擎、告警自愈引擎构成。夜莺的规划十分简略,中心是 server 、webapi、frontend 三个模块。
webapi 无状况,中心端布置,承受前端frontend的恳求,将用户装备写入数据库,一同对外供给API 供frontend 运用;
server 是告警引擎,也承当数据处理、转发功用,一般伴随着时序数据库布置,一个时序库就对应一套 server,每套 server 能够只发动一个实例,也能够发动多个实例组成集群。
server 能够接纳 Categraf、Telegraf、Grafana-Agent、Datadog-Agent、Falcon-Plugins 等多种数据收集器上报的数据,写入后端时序数据库,并周期性从数据库同步用户装备的告警规矩,查询时序数据库进行告警判别。
快猫星云自研的数据收集器Categraf,是夜莺默许的数据收集器,有以下特色:
1、All-in-one:一切的收集作业运用一个 agent 来处理,包含 metrics、logs、 traces ,并从数据收集的源头树立起数据间的相相联系,确保好数据的质量。
2、开箱即用:掩盖支撑上百种收集目标,包含K8s、中间件、服务器、交换机等,针对常用的收集目标,在供给收集才能的一同,配套有默许的监控仪表盘模板和告警规矩模板,用户能够直接导入并运用。
3、布置方法灵敏:支撑在 K8s 集群中以 Daemonset 或许 Sidecar 运转,支撑公有云产品的数据收集,也支撑独立运转在宿主机上。
5、支撑告警聚合、收敛、排班、协同(需求对接Flashcat SaaS运用);
俗语讲,一图胜千言,可视化是透传数据价值最直接的手法。夜莺监控的 Dashboard 不仅从功用、规划上能够对标 Grafana,一同也兼容 Grafana,要是你觉得 Grafana 某个 Dashboard 十分有用,乃至能够直接导入到夜莺监控中运用。
夜莺监控,从 2020 年 3 月份开源,累计迭代发布了80 多个版别,取得了很多用户和企业的重视,取得超越 5500 颗 Star。招引了 80 多位外部代码奉献者,每 5 个Star,发生 1 次 Fork;每 10 次 Fork,发生1 位 Contributor。
更进一步,2022年5月11日,夜莺监控正式捐献给了我国核算机学会开源开展委员会,成为我国核算机学会开源开展委员会承受捐献的一个开源项目。
开源项目要更有生命力,离不开敞开的办理架构和连绵不断的开发者一同参加,假如能从制度上,确立好中立、敞开的机制,那么开源社区就有了坚实的地基。
夜莺监控项目参加 CCF 开源咱们庭后,在CCF开源开展委员会的支撑和带动下,进一步结合云原生、可观测、国产化等多个技能开展的需求,树立敞开、中立的开源办理架构,致力于打造更专业、有生机的开发者社区。发布了夜莺监控开源社区办理架构草案,树立了用户、奉献者、committer、项目管委会的用户系统和办理制度,并公示了相关的录用和社区荣誉。
尊重、认可和记载每一位奉献者的作业,是夜莺开源社区的最高辅导准则,在这里,咱们着重每一位参加者的奉献,都应该被看见。结合我曩昔运营开源软件和社区的领会来看,“参加感”是超越物质鼓励,且更耐久的一种鼓励方法。
最终,欢迎咱们重视夜莺开源项目,支撑夜莺开源社区的开展,咱们一同打造“美观、好用、专业”的云原生监控东西,参加其间。
上一篇:重庆中烟工业有限责任公司重庆卷烟 下一篇:我国工业数据收集工作开展战略规划