iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > html >什么是k8s的可观测性
  • 947
分享到

什么是k8s的可观测性

2024-04-02 19:04:59 947人浏览 薄情痞子
摘要

本篇内容介绍了“什么是k8s的可观测性”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!概念“可观测性”这个名

本篇内容介绍了“什么是k8s的可观测性”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

概念

“可观测性”这个名词其实是最近几年才从控制理论中借用的舶来概念,不过实际上,计算机科学中关于可观测性的研究内容已经有了很多年的实践积累。通常,人们会把可观测性分解为三个更具体的方向进行研究,分别是:日志收集、链路追踪和聚合度量。

在 2017 年的分布式追踪峰会(2017 Distributed Tracing Summit)结束后,彼得 · 波本(Peter  BourGon)撰写了总结文章《Metrics, Tracing, and  Logging》,就系统地阐述了这三者的定义、特征,以及它们之间的关系与差异,受到了业界的广泛认可。

什么是k8s的可观测性

结合k8s可观测性

什么是k8s的可观测性

度量(Metrics)

度量的主要目的是监控(Monitoring)和预警(Alert)。比如说,当某些度量指标达到了风险阈值时就触发事件,以便自动处理或者提醒管理员介入。监控数据格式标准化,做关联指标聚合,方便快速定位故障。

基础层:监控主机和底层资源,比如:CPU、内存、网络吞吐、硬盘  I/O、硬盘使用等。通信情况:这里是指主机与主机之间的网络情况。通信是互联网中最重要的基石之一,如果两台主机之间出现如网络延迟时间大、丢包率高这样的网络问题,会导致业务受阻。

中间层:VM 指标监控,指的是 JVM 监控,比如 GC 时间、线程数、FGC/YGC  耗时等信息。当然,其他语言也有其独特的统计指标信息。就是中间件层的监控,比如:NginxRedis、ActiveMQkafkaMysqlTomcat  的资源消耗。

应用层:Http 访问的吞吐量、响应时间、返回码、性能瓶颈,还包括用户端的监控。

统一的监控告警平台:prometheus+grafana

日志(Logging)

日志的职责是记录离散事件,通过这些记录事后分析出程序的行为,比如曾经调用过什么方法、曾经操作过哪些数据,等等。通常,打印日志被认为是程序中最简单的工作之一,你在调试问题的时候,可能也经历过这样的情景“当初这里记得打点日志就好了”,可见这就是一项举手之劳的任务。

当然,也有一部分系统是利用日志可追溯、结构化的特点,来实现相关功能的,比如我们最常见的 WAL(Write-Ahead Logging)。WAL  就是在操作之前先进行日志写入,再执行操作;如果没有执行操作,那么在下次启动时就可以通过日志中结构化的,有时间标记的信息恢复操作,其中最典型的就是 mysql  中的 Redo log。

统一的日志数据化:在特定时间发生的事件,被以结构化的形式记录并产生的文本数据。

统一的日志分析:elk或者loki+grafana

链路追踪(Tracing)

在单体系统时代,追踪的范畴基本只局限于栈追踪(Stack Tracing)。比如说,你在调试程序的时候,在 IDE 打个断点,看到的 Call Stack  视图上的内容便是跟踪;在编写代码时,处理异常调用了 Exception::printStackTrace() 方法,它输出的堆栈信息也是追踪。

而在微服务时代,追踪就不只局限于调用栈了,一个外部请求需要内部若干服务的联动响应,这时候完整的调用轨迹就会跨越多个服务,会同时包括服务间的网络传输信息与各个服务内部的调用堆栈信息。因此,分布式系统中的追踪在国内通常被称为“全链路追踪”(后面我就直接称“链路追踪”了),许多资料中也把它叫做是“分布式追踪”(Distributed  Tracing)。服务调用链跟踪。这个监控系统应该从对外的 api  开始,然后将后台的实际服务给关联起来,然后再进一步将这个服务的依赖服务关联起来,直到最后一个服务(如 Mysql 或  Redis),这样就可以把整个系统的服务全部都串连起来了。

最近几年,各种链路追踪产品层出不穷,市面上主流的工具,既有像 Datadog 这样的一揽子商业方案,也有像 AWS X-Ray 和 Google  Stackdriver Trace 这样的云计算厂商产品,还有像 SkyWalking、Zipkin、Jaeger 这样来自开源社区的优秀产品。

什么是k8s的可观测性

链路追踪+统计指标(Request-scoped  metrics)请求级别的统计:在链路追踪的基础上,与相关的统计数据结合,从而得知数据与数据、应用与应用之间的关系。

链路追踪+日志(Request-scoped  events)请求级别的事件:这是链路中一个比较常见的组合模式。日志本身是每一条单独存在的,将链路追踪收集到的信息集成在日志中,可以让日志之间具备关联性,使其具有除了事件维度以外的另一个新的维度,上下文信息。

日志+统计指标(Aggregatable  events)聚合级别的事件:这是在日志中的比较常见的组合。通过解析这部分具有统计指标的信息,我们可以获取相关的指标数据。

三者结合(Request-scoped,aggregatable  events)三者结合可以理解为请求级别+聚合级别的事件,由此就形成了一个丰富的、全局的观测体系。

总结

1.事件日志的职责是记录离散事件,通过这些记录事后分析出程序的行为;

2.追踪的主要目的是排查故障,比如分析调用链的哪一部分、哪个方法出现错误或阻塞,输入输出是否符合预期;

3.度量是指对系统中某一类信息的统计聚合,主要目的是监控和预警,当某些度量指标达到风险阈值时就触发事件,以便自动处理或者提醒管理员介入。

“什么是k8s的可观测性”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 什么是k8s的可观测性

本文链接: https://www.lsjlt.com/news/70280.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 什么是k8s的可观测性
    本篇内容介绍了“什么是k8s的可观测性”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!概念“可观测性”这个名...
    99+
    2024-04-02
  • k8s性能测试的方法是什么
    进行Kubernetes性能测试通常包括以下几个步骤: 确定测试目标:明确需要测试的方面,比如集群的性能、节点的资源利用率、应用...
    99+
    2024-04-02
  • css外观属性是什么
    这篇文章将为大家详细讲解有关css外观属性是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   CSS外观属性   color:文本颜色   color属性用于...
    99+
    2024-04-02
  • DevOps专题 |监控,可观测性与数据存储
    对于DevOps而言,监控是其中重要的一环,上一次的专题内容中,我们与大家分享了大型企业级监控系统的设计。今天我们将和大家从另一个角度进一步探讨互联网工程技术领域的监控设计(monitoring):系统的可观测性(observerbalit...
    99+
    2023-06-04
  • 【咕咕送书第一期】 | SER运维:实现可观测性平台的技术要点是什么?
    🎬 鸽芷咕:个人主页  🔥 个人专栏:《粉丝福利》 《C语言进阶篇》 ⛺️生活的理想,就是为了理想的生活! 文章目录 ...
    99+
    2023-09-30
    运维 云原生 可观测性工程 安全架构
  • k8s是什么
    k8s是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。 什么是k8s kubernet...
    99+
    2023-10-29
    k8s
  • 可观测性-Metrics-数据库连接池HikariCP监控
    文章目录 非SpringBoot环境添加依赖示例指标详解 Spring Boot环境手动自动 关于Sql日志记录和慢日志 非SpringBoot环境 HikariCP其...
    99+
    2023-09-20
    数据库 java mysql
  • 什么是K8S
    一、K8S是什么 K8S,全称Kubernetes,是一个开源的容器编排系统,用于自动化部署、扩展和管理容器化应用程序。这种编排技术允许开发者和运维人员在多个主机上部署和管理容器化应用,极大地简化了在云环境或者物理硬件上部署和管理复杂...
    99+
    2023-10-29
    K8S
  • Golang 函数类型的可测试性策略是什么?
    在 go 开发中,可以通过以下策略提高函数类型的可测试性:使用接口隔离函数类型与其实现;使用 mock 对象来创建假实现,以控制函数输入并验证输出;通过依赖注入解耦函数,以便轻松注入 m...
    99+
    2024-04-22
    golang 可测试性策略
  • Angular中的可观察对象、观察者和RxJS操作符是什么
    这篇文章主要介绍“Angular中的可观察对象、观察者和RxJS操作符是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Angular中的可观察对象、观察者和Rx...
    99+
    2024-04-02
  • k8s的ingress概念是什么
    Kubernetes (k8s) 中的 Ingress 是一种 API 对象,用于将外部流量路由到集群内的服务。它充当了将流量从集群...
    99+
    2023-10-11
    k8s
  • C++云监控与可观测性:确保应用程序健康
    为了确保 c++++ 应用程序在云计算环境中的健康,监控和可观测性至关重要。监控包括收集关键指标,如 cpu 使用率和响应时间,而可观测性使您能够深入了解应用程序的内部工作原理,通过日志...
    99+
    2024-05-12
    c++ 云监控与可观测性
  • 什么是CSS特性检测
    本篇内容主要讲解“什么是CSS特性检测”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么是CSS特性检测”吧!什么是 CSS 特性检测我们知道,前端技术日新月异...
    99+
    2024-04-02
  • 什么是乐观锁、悲观锁和MVCC
    本篇内容主要讲解“什么是乐观锁、悲观锁和MVCC”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么是乐观锁、悲观锁和MVCC”吧!在数据库的实际使用过程中,我们...
    99+
    2024-04-02
  • k8s的部署脚本是什么
    本篇内容主要讲解“k8s的部署脚本是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“k8s的部署脚本是什么”吧!浅谈dockerdocker可以类比为jvm,jvm也是虚拟机,然后docker...
    99+
    2023-06-29
  • 人工智能如何应对 DevOps 监控和可观测性挑战
    人工智能可以应对 DevOps 监控和可观测性挑战的方式如下:1. 异常检测和预测:人工智能可以通过学习和分析历史数据,从中发现异常...
    99+
    2023-10-11
    人工智能
  • k8s与Docker的关系是什么
    这期内容当中小编将会给大家带来有关k8s与Docker的关系是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、从虚拟化角度:图1上图是Docker容器(可用k8s管理的玩意儿)与传统虚拟化方式的不同...
    99+
    2023-06-06
  • Node.js Serverless 监控和可观察性:确保应用程序的可见性和可靠性
    前言 随着 Node.js Serverless 架构的快速发展,监控和可观察性已成为确保应用程序可见性和可靠性的关键因素。本文将介绍如何使用 Serverless 框架和开源监控工具来实现 Node.js Serverless 的监控和...
    99+
    2024-02-21
    Node.js Serverless 监控 可观察性 Serverless 框架 开源监控工具
  • 服务器的主要性能和外观特点是什么
    服务器的主要性能和外观特点是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。服务器的特殊用途以及它的应用环境决定了它与PC间的配置有所不同。对于初级人员而言,...
    99+
    2023-06-07
  • 什么是系统可用性
    系统可用性是指系统在规定时间内能够正常运行的能力。系统可用性是衡量系统的稳定性和可靠性的重要指标。一个可用性高的系统意味着系统能够以...
    99+
    2023-09-20
    系统可用性
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作