CNCF云原生生态版图-分类指南(一)- 观测和分析

CNCF云原生生态版图-分类指南(一)- 观测和分析

  • CNCF云原生生态版图-分类指南
    • 一、观测和分析(Observability and Analysis)
      • (一)可观测性(Observablility)
        • 1. 是什么?
        • 2. 解决什么问题?
        • 3. 如何解决问题?
        • 4. 使用的技术
        • 5. 项目和产品整体介绍
      • (二)混沌工程(Chaos Engineering)
        • 1. 是什么?
        • 2. 解决什么问题?
        • 3. 如何解决问题?
        • 4. 使用的技术
        • 5. 项目和产品整体介绍
      • (三)小结
  • 链接

CNCF云原生生态版图-分类指南

云原生生态版图按照功能类型,将项目和产品组织在一起,方便架构设计人员查找所需的技术。本文将对这个庞大的版图进行分解,从全局角度介绍各个类型,及各类项目能够解决的问题、作用方式及使用的技术。并对每种分类下的项目和产品进行整体介绍。

在这里插入图片描述
先对可观测性分析进行定义:

  • 可观测性:可观测性是一种系统特征,描述可以从系统的外部输出中理解系统的程度。以 CPU 时间、内存、磁盘空间、延迟、错误等来衡量,计算机系统或多或少是可观察的。
  • 分析:分析是一种活动,在活动中查看和理解可观察数据。

为确保服务持续运行不中断,需要全面观察和分析应用程序,以便在应用程序发生异常时能够快速发现并矫正。这就是观测和分析类别中的所有项目和产品的主要职责。该类别位于整个云原生生态版图的侧面,能够观测左侧的所有类别层级。

下文主要介绍了可观测性和混沌工程,其中,混沌工程也可以划分为可靠性工具类别。

一、观测和分析(Observability and Analysis)

在这里插入图片描述

(一)可观测性(Observablility)

1. 是什么?

可观测性是从系统外部输出来理解系统的一种实践和能力。观测框架提交遥测数据给查询和可视化工具使用。遥测数据来自应用程序代码、底层节点基础设施和编排系统中采集的日志、指标和跟踪信息。这些数据,简单的有从本地节点统计的磁盘空间,复杂的有客户端到服务端往返的端到端用户事务。

2. 解决什么问题?

复杂系统的故障发生和性能下降通常会以多种形式出现,通过可观测性框架,可以掌握系统中各个服务或基础设施组建的运行状况,跟踪时间段内的重要统计指标,调试生产中的问题等。

3. 如何解决问题?

大规模运维云原生系统要求运维人员和开发人员通过访问高质量的系统状态遥测数据,来对事件作出响应并就如何改进系统做出最优的决策。可观测性可以帮助运维人员快速响应事件,帮助开发人员在生产环境调试应用程序,同时也能帮助团队分析用户行为,平衡系统性能与业务目标的关系。

4. 使用的技术

云原生可观测性在概念上与传统应用程序监控非常相似,但有几个关键区别。被检测的对象生命周期往往是短暂的,系统复杂性往往会随着部署的服务数量呈指数级的增长。这使得通过结构化数据和模式来诊断系统变得非常有意义,同时更加重视数据存储。云原生生态版图中这一部分的许多项目在设计时就考虑到了这些特征,例如 OpenTelemetry 和 Prometheus。

5. 项目和产品整体介绍

属于可观测性分类的项目和产品共有 148 个,其中 CNCF 项目有 19 个。这些项目和产品的关键字有:

  • Monitoring 监测
  • Time series 时间序列
  • Alerting 警告
  • Metrics 指标
  • Logging 日志
  • Tracing 跟踪

CNCF 项目如下表所示:

项目CNCF 项目阶段说明
Fluentd已毕业用于统一日志记录层的开源数据收集器
Jaeger已毕业一个分布式跟踪平台,由 Uber Technologies 于 2016 年以开源形式发布并捐赠给云原生计算基金会
Prometheus已毕业一个开源的系统监控和警报工具套件
Cortex孵化中一个水平可扩展的、高度可用的、多租户的 Prometheus 即服务(Prometheus-as-a-Service)解决方案
OpenTelemetry孵化中提供了一组标准的 API、SDK 和工具,用于生成、收集、处理和导出分布式系统中的追踪(Tracing)、指标(Metrics)和日志(Logs)数据
Thanos孵化中一个专为高可用的 Prometheus 设置而设计的开源项目
Fonio已存档为云而生的安全监控代理
Headlamp沙盒是一个用户友好的 Kubernetes UI,专注于可扩展性
Inspekto Gadget沙盒使用eBPF对 Kubernetes 集群和 Linux 主机进行数据采集和系统检查的工具和框架
K8sGPT沙盒一种用于扫描 kubernetes 集群、用简单的英语诊断和分类问题的工具
Kepler沙盒一个 Prometheus 导出器,使用 eBPF 来探测 CPU 性能计数器和 Linux 内核跟踪点
Kuberhealthy沙盒一个 Kubernetes 运维工具,用于综合监控和持续流程验证
Logging Operator (Kube Logging)沙盒通过自动部署和配置 Kubernetes 日志记录管道来解决 Kubernetes 环境中与日志记录相关的问题
OpenMetrics已存档大规模传输云原生指标的事实标准
OpenTracing已存档一个开放的分布式追踪标准,用于在不同的分布式系统和编程语言之间提供一种统一的追踪方式
Perses沙盒一个开源的、可扩展的、云原生的时间序列数据库和可视化工具
Pixie沙盒面向开发人员的 K8S 可观察性工具
Skooner已存档一个开源 Kubernetes 控制面板
Trickster沙盒一个开源的 HTTP 代理缓存和加速层

(二)混沌工程(Chaos Engineering)

1. 是什么?

Chaos Engineering(混沌工程)是一种通过实验来验证系统在面对不确定性和故障时的健壮性的方法。它的核心思想是主动地向系统中引入故障或异常情况,以此来观察系统的反应,发现潜在的风险和脆弱点,从而提高系统的可靠性和韧性。混沌工程工具将提供一种受控的方式来引入故障并针对应用程序的特定实例运行特定实验。

2. 解决什么问题?

引起复杂系统失败的原因有很多,在分布式系统中,其后果往往难以理解。使用混沌工程的组织相信失败会发生,不试图阻止失败,而是练习如何快速从失败中恢复,或称为 MTTR1

3. 如何解决问题?

在云原生世界中,应用程序必须动态地适应故障,这是一个相对较新的概念。这意味着,当出现问题时,系统不会完全宕机,而是会正常降级或恢复。混沌工程工具能够在软件系统生产中进行实验,以确保它们在发生实际故障时能够正常执行。

4. 使用的技术

混沌工程工具和实践对于实现应用程序的高可用性至关重要。分布式系统通常过于复杂,任何一个工程师都无法完全理解,而且任何变更流程都无法完全预先确定变更对环境的影响。通过引入混沌工程实践,团队能够练习和自动化故障恢复。Chaos Mesh 和 Litmus Chaos 是该领域的两个 CNCF 工具。

5. 项目和产品整体介绍

属于可观测性分类的项目和产品共有 11 个,其中 CNCF 项目有 4 个。这些项目和产品的关键字有:

  • Chaos Engineering 混沌工程

CNCF 项目如下表所示:

项目CNCF 项目阶段说明
Chaos Mesh孵化中一个云原生的混沌工程平台,用于在 Kubernetes 环境中进行系统可靠性测试
Litmus孵化中一个开源的混沌工程框架,主要用于云原生应用和分布式系统的可靠性测试
Chaosblade沙盒一个云原生混沌工程平台,支持多种环境、集群和语言
Krkn沙盒结合了 Terraform(一种基础设施即代码的工具)的优势,帮助用户在复杂的云基础设施上自动化地构建和执行混沌实验场景

(三)小结

可观察性和分析旨在了解系统的运行状况,并确保系统在恶劣的条件下也能保持运行。日志记录工具捕获应用程序发出的事件消息,监控监视日志和指标,跟踪跟踪单个请求的路径。这些工具组合在一起时,理想情况下可以 360 度全方位了解系统内的情况。混沌工程略有不同。它提供了一种安全的方式来验证系统是否可以承受意外事件,从而确保其保持正常运行。

链接

  • CNCF Landscape
  • CNCF LANDSCAPE GUIDE

  1. MTTR 是 “Mean Time To Repair” 的缩写,即平均修复时间。它是一个用于衡量系统故障后恢复正常运行所需时间的关键指标。在运维管理、系统可靠性工程等众多领域被广泛应用。计算 MTTR 通常是统计一段时间内(如一个月、一个季度或一年)所有故障修复时间的总和,然后除以故障次数。例如,在一个数据中心,如果在过去一个季度内发生了 10 次系统故障,这些故障的修复时间分别为 1 小时、2 小时、1.5 小时、0.5 小时等,将所有修复时间相加(假设总和为 15 小时),再除以故障次数 10,得到 MTTR 为 1.5 小时。 ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/938000.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JVM运行时数据区内部结构

VM内部结构 对于jvm来说他的内部结构主要分成三个部分,分别是类加载阶段,运行时数据区,以及垃圾回收区域,类加载我们放到之后来总结,今天先复习一下类运行区域 首先这个区域主要是分成如下几个部分 下面举个例子来解释…

C语言学习day22:URLDownloadToFile函数/开发文件下载工具

简言: 在之前我们去下载某个东西都是用的迅雷之类的软件,但是现在,只要提供一个地址,或者一个链接,我们自己去做一个工具去下载。这就是我们这篇的主要内容。 也就是我们的winAPI:URLDownloadToFile函数 …

购物车案例--分模块存储数据,发送请求数据渲染,底部总计数量和价格

shift鼠标右键,打开powershell,新建项目 自定义 只有一个页面,不涉及路由,勾选vuex,css,babel 无需保存预设 回车项目开始创建 项目用vscode打开 将src里的内容全部清空 将第七天的课程准备代码复制粘贴到src中 刷新页面&…

SQL server学习06-查询数据表中的数据(中)

目录 一,聚合函数 1,常用聚合函数 2,具体使用 二,GROP BY子句分组 1,基础语法 2,具体使用 3,加上HAVING对组进行筛选 4,使WHERE记录查询条件 汇总查询:在对数…

YOLOv5-7.0训练过程中出现报错Example: export GIT_PYTHON_REFRESH=quiet

出现报错: This initial message can be silenced or aggravated in the future by setting the $GIT_PYTHON_REFRESH environment variable. Use one of the following values: - quiet|q|silence|s|silent|none|n|0: for no message or exception - warn…

从0到1实现vue3+vite++elementuiPlus+ts的后台管理系统(一)

前言:从这篇文章开始实现vue3vite的后台管理系统,记录下自己搭建后台系统图的过程。 这篇文章完成项目的初始化和基本配置,这一步可以直接跟着vue3官网进行。整个系列只有前端部分,不涉及后端。 vue3官网:https://cn.…

Spring Boot教程之二十五: 使用 Tomcat 部署项目

Spring Boot – 使用 Tomcat 部署项目 Spring Boot 是一个基于微服务的框架,在其中创建可用于生产的应用程序只需很少的时间。Spring Boot 建立在 Spring 之上,包含 Spring 的所有功能。如今,它正成为开发人员的最爱,因为它是一个…

java中操作线程

文章目录 前言创建与运行线程1. 创建线程①、方法1(直接new)②、方法2(使用Runnable配合Thread进行new操作)③、方法3(FutureTask对象实现)④、线程创建原理特别注意! 2查看与杀死线程①、 Windows下 :②、 Java下 : 3…

【redis】redix在Linux下的环境配置和redis的全局命令

˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好,我是xiaoxie.希望你看完之后,有不足之处请多多谅解,让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN 如…

百度智能云千帆AppBuilder升级,百度AI搜索组件上线,RAG支持无限容量向量存储!

百度智能云千帆 AppBuilder 发版升级! 进一步降低开发门槛,落地大模型到应用的最后一公里。在千帆 AppBuilder 最新升级的 V1.1版本中,企业级 RAG 和 Agent 能力再度提升,同时组件生态与应用集成分发更加优化。 • 企业级 RAG&am…

uniappp配置导航栏自定义按钮(解决首次加载图标失败问题)

1.引入iconfont的图标,只保留这两个文件 2.App.vue引入到全局中 import "./static/fonts/iconfont.css"3.pages.json中配置text为图标对应的unicode {"path": "pages/invite/invite","style": {"h5": {"…

融云分享基于 Rust 的鸿蒙 SDK 开发实践

12 月 5 日,以“同心聚力,共建共享鸿蒙新生态”为主题的“鸿蒙生态伙伴 SDK 开发者论坛”在京举行。 融云凭借对鸿蒙生态的率先适配和创新贡献,荣获华为鸿蒙生态“HarmonyOS NEXT SDK 星河奖”。 本次论坛邀请了多位行业领导者参与&#xff…

iperf3 带宽性能测量工具

随笔记录 目录 1 背景介绍 2. Iperf3 2.1 基本框架介绍 2.2 Iperf3 发送TCP包 2.3 IPerf 发送UDP 包 1 背景介绍 基于测试USER DMA 压力测试需求。 2. Iperf3 2.1 基本框架介绍 Iperf3 发送数据包 TCP/UDP 包 1. 查看网卡配置信息 2. 此处因共用一张板卡&#xff0…

Java-27 深入浅出 Spring - 实现简易Ioc-03 在上节的业务下手动实现IoC

点一下关注吧!!!非常感谢!!持续更新!!! 大数据篇正在更新!https://blog.csdn.net/w776341482/category_12713819.html 目前已经更新到了: MyBatis&#xff…

vue使用pdfh5.js插件,显示pdf文件白屏

pdfh5,展示文件白屏,无报错 实现效果图解决方法(降版本)排查问题过程发现问题查找问题根源1、代码写错了?2、预览文件流的问题?3、pdfh5插件更新了,我的依赖包没更新?4、真相大白 彩蛋 实现效果图 解决方法…

【机器学习算法】——决策树之集成学习:Bagging、Adaboost、Xgboost、RandomForest、XGBoost

集成学习 **集成学习(Ensemble learning)**是机器学习中近年来的一大热门领域。其中的集成方法是用多种学习方法的组合来获取比原方法更优的结果。 使用于组合的算法是弱学习算法,即分类正确率仅比随机猜测略高的学习算法,但是组合之后的效果仍可能高于…

C/S软件授权注册系统(Winform+WebApi+.NET8+EFCore版)

适用软件:C/S系统、Winform桌面应用软件。 运行平台:Windows .NETCore,.NET8 开发工具:Visual Studio 2022,C#语言 数据库:Microsoft SQLServer 2012,Oracle 21c,MySQL8&#xf…

Big Model weekly | 第49期

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 01 Magnetic Preference Optimization: Achieving Last-iterate Convergence for Language Models Alignment 自我对弈方法在多个领域增强模型能力方面展现出了显著的成功。在基于人类反馈的强化学习&#xff0…

如何建设金融数据中心

目录 总则 概述 要求 基本原则 数据中心治理 概述 战略管控 战略规划 战略实施 延伸阅读 总则 概述 本文以描述金融数据中心的治理域内容为基础,从金融数据中心建设、运营及安全保障的角度出 发,逐一描述场地环境、网络通信、运行管理和风险管控等能力域的具体…

医学分割数据集B超图片肝脏分割数据集labelme格式271张1类别

数据集格式:labelme格式(不包含mask文件,仅仅包含jpg图片和对应的json文件) 图片数量(jpg文件个数):271 标注数量(json文件个数):271 标注类别数:1 标注类别名称:["liver"] 每个类别标注的框数&#xf…