如何缓解可观察性挑战?

可观察性正在成为当代 DevOps 实践的基石。即使传统上不属于 DevOps 的部门也看到了在可观察性团队的支持下带来的好处。然而,到 2023 年,组织发现采用之路比预期更加崎岖。以下是 DevOps 团队在可观察性方面面临的七个最大挑战以及一些缓解这些挑战的建议。

01

提高平均修复时间

MTTR(即平均恢复时间)是指系统在发生中断或错误后恢复并运行所需的时间。更长的 MTTR 意味着更多的停机时间和更差的客户服务。令人担忧的是,DevOps Pulse Report表明平均 MTTR 正在增加。今年,73% 的受访者表示 MTTR 为多个小时;去年这一数字仅为64%。

MTTR 通常是由于数据孤岛损害可观察性而无法诊断事件造成的。这可以通过可观察平台来改善,该平台允许工程师看到全局。

02

遥测数据的成本

随着 MTTR 的增加,许多组织必须应对高遥测数据量所产生的成本。这是一个大问题。IDC对 200 家公司的调查发现,53% 的受访者强调了存储日志数据的成本。

大部分问题是由于过时的分级定价模式造成的。许多供应商按每 GB 数据收费,因此如果您的数据量波动,您的数据成本也会波动。它们的定价模式也很模糊,这意味着许多组织发现很难知道他们支付的费用是什么。在 Coralogix,我们创建了一种新的业务模式,其成本仅为标准日志存储解决方案的三分之一。

03

工具蔓延

要理解为什么这是一个挑战,我们需要回答这个问题:什么是可观察性?有效的可观察性需要集成应用程序各个方面的数据。由于许多组织使用多种工具实施监控,因此他们遭受了工具蔓延的困扰。这会产生孤立遥测数据的效果,使得关联数据和深入了解系统性能变得更加困难。

缓解工具蔓延的方法有很多,例如在将工具纳入 DevOps 策略之前彻底评估工具的成本和收益。最有效的解决方案是“单一管理平台”工具,它将概要性的见解结合在单个仪表板上。

04

Kubernetes 复杂性

Elastic 报告称,组织越来越多地转向基于云的解决方案,例如 Kubernetes 来进行 DevOps。Kubernetes 可以根据需要动态扩展基础设施,从而消除专用服务器的成本开销,从而增强组织的能力。

然而,Kubernetes 很复杂,并且面临着一系列挑战。Kubernetes 的可扩展架构来自容器化,这是一种将应用程序托管在称为容器的对象中的范例。这意味着在 Kubernetes 中进行开发需要能够使用大量旋转板。

解决这个问题的一个好方法是在组织中进行更好的培训。此外,打破孤岛允许不同的团队转移知识。

05

安全挑战

Kubernetes 的流行带来了安全挑战。这些可能包括权限升级(用户设法获得写入访问权限等权限)和安全配置错误(开发人员忘记更改非安全默认配置)。

有多种降低 Kubernetes 安全风险的策略。其中包括将角色范围限定到特定命名空间、使用服务网格以及使用 Coralogix 的 Kubernetes Operator 增强安全性。

除了 Kubernetes 之外,还有一个更大的问题,即将安全性集成到可观察性策略中,这正成为越来越多IT 企业面临的挑战。为了解决这个问题,越来越多的企业开始将可观察性和安全监控整合到一起。基础设施和应用程序指标等解决方案可以增强安全性和监控。

06

扩展平台

为了应对不断上升的数据成本和不断增加的云复杂性带来的挑战,企业正在转向开源解决方案。然而,这些也有其自身的挑战。根据 DevOps Pulse 报告,大约 30% 的受访企业在基础设施管理、扩展和升级相关组件方面存在问题。由于许多开源平台需要专业知识来维护,因此企业很难为其获取技能和专业知识。

OpenTelemetry等工具可以通过与 Coralogix 等平台集成来简化扩展。

07

数据管道性能故障排除

实现可观测性需要拥有可靠且高性能的遥测数据管道。然而,使用开源平台的组织通常难以监控其数据管道的性能并对其进行故障排除。由于遥测数据质量较低,这可能会损害可观测性。

数据工程师 Abraham Alcantara建议了成功排除数据管道故障的十个关键步骤。其中包括识别数据管道软件和基础设施、重现和隔离问题以及自动化问题场景。另一种策略是应用机器学习,例如 Coralogix 使用的方法。

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

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

相关文章

严蔚敏数据结构题集 p18(2.25——2.30)(c语言代码实现)

目录 2.25假设以两个元素依值递增有序排列的线性表A和B分别表示两个集合(即同一表中的元素值各不相同),现要求另辟空间构成一个线性表C,其元素为A和B中元素的交集,且表C中的元素也依值递增有序排列。试对顺序表编写求C的算法。 2.26要求同2.25题。是对单链表编写求C的算法 2.…

Linux socket编程(9):IO复用之poll和epoll详解

在之前的文章中,我们学习了IO复用模型之select原理及例子,但是select有监听描述符个数的限制,而且select的效率并不高,所以这篇文章就来学习效率更高的poll和Linux特有的epoll方法。 文章目录 1 select/poll/epoll对比2 poll2.1 p…

【开源项目】Windows串口通信组件 -- Com.Gitusme.IO.Ports.SerialPort

目录 1、项目介绍 2、组件集成 1)下载地址: 2)添加项目依赖 3、使用方法 4、GitHub项目地址 1、项目介绍 Com.Gitusme.IO.Ports.SerialPort 是一款 Windows 串口通信组件,基于.Net Core 3.1 开发,支持 Console、Wi…

PostgreSQL有意思的现象:支持不带列的表

1、前言 以前从没有试过建一张表,不带任何列。在PG中却支持这种语法。这是个什么鬼? 最近,把PG源码扒了下,简单浏览了下最近的一些merge。其中有一个fix: eeb0ebad79 ("Fix the initial sync tables with no columns.&qu…

CRM简单小结

思想 对于三层架构,一个模块对应一个controller,controller实际就是Servlet;一张表对应一个domain类对应一个dao接口对应一个mapper文件;service层没有严格规定,如果两张表内容相近,用一个service接口也可以…

【C++练级之路】【Lv.2】类和对象(上)(类的定义,访问限定符,类的作用域,类的实例化,类的对象大小,this指针)

目录 一、面向过程和面向对象初步认识二、类的引入三、类的定义四、类的访问限定符及封装4.1 访问限定符4.2 封装 五、类的作用域六、类的实例化七、类的对象大小的计算7.1 类对象的存储方式猜测7.2 如何计算类对象的大小 八、类成员函数的this指针8.1 this指针的引出8.2 this指…

排序算法介绍(二)冒泡排序

0. 简介 冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排…

CentOS7搭建部署NTP服务器

服务端配置: yum install ntp ntpdate -y #下载安装包 修改配置文件,同步阿里的NTP服务器 vim /etc/ntp.conf systemctl start ntpd #启动该服务 ntpq -p #查看是否同步了阿里的NTP 服务端同步成功后,可以去新增…

移除元素、合并两个有序数组(leetcode)

一、移除元素 思路三&#xff1a; while(src<numsSize) 使用一个 while 循环来遍历数组。循环的条件是 src 必须小于 numsSize&#xff0c;以确保不会越界。 if(nums[src]!val) 如果当前 src 指向的元素不等于给定的值 val&#xff0c;则执行以下操作&#xff1a; nums[ds…

国际语音通知系统有哪些优点?国际语音通知系统有哪些应用场景?

国际语音通知是一种全球性的通信工具&#xff0c;它通过语音方式向用户发送各种重要信息和提示。无论是快递到货的取件提醒、机场航班的延误通知&#xff0c;还是银行账户的余额提醒&#xff0c;国际语音通知都能准确、迅速地将信息传达给用户。 三、国际语音通知系统有哪些优…

Jupyter NoteBook未授权访问漏洞

任务一&#xff1a; 复现未授权访问的漏洞 任务二&#xff1a; 利用Jupter Notebook控制台执行系统命令&#xff0c;读取/etc/passwd内容 1.搭建环境 2.new下面直接进入终端&#xff0c;而且也不需要登录&#xff0c;我就直接进入了管理界面 3.直接把指令输入进入&#xf…

【Unity动画】为一个动画片段添加事件Events

动画不管播放到那一帧&#xff0c;我们都可以在这里“埋伏”一个事件&#xff08;调用一个函数并且给函数传递一个参数&#xff0c;参数在外部设置&#xff0c;甚至传递一个物体&#xff09;&#xff01; 嗨&#xff0c;亲爱的Unity小伙伴们&#xff01;你是否曾想过为你的动画…

Java 数组另类用法(字符来当数组下标使用)

一、原因 看力扣的时候发现有位大佬使用字符来当数组下标使用。 class Solution {public int lengthOfLongestSubstring(String s) {int result 0;int[] hash new int[130];int i 0;for(int j 0; j < s.length(); j) {while(hash[s.charAt(j)] > 0) {hash[s.charAt…

基于SSM框架开发的酒店后台管理系统

基于SSM框架开发的酒店后台管理系统 文章目录 基于SSM框架开发的酒店后台管理系统 一.引言二.系统设计三.技术架构四.功能实现五.界面展示六.源码获取 一.引言 酒店管理系统是一个集客房预订、前台管理、客户服务、财务管理等功能于一体的综合性软件系统。它能够帮助酒店高效地…

C++面试宝典第1题:爬楼梯

题目 小乐爬楼梯&#xff0c;一次只能上1级或者2级台阶。楼梯一共有n级台阶&#xff0c;请问总共有多少种方法可以爬上楼&#xff1f; 解析 这道题虽然是一道编程题&#xff0c;但实际上更是一道数学题&#xff0c;着重考察应聘者的逻辑思维能力和分析解决问题的能力。 当楼梯只…

检测下我的饺子皮擀的怎么样(圆度)

&#x1f604;&#x1f60a;&#x1f606;&#x1f603;&#x1f604;&#x1f60a;&#x1f606;&#x1f603; 各位老铁周末愉快。 快乐的时间做充实的事&#xff0c;好久没有吃饺子了&#xff0c;俗话说好吃不过饺子。 我个人觉得会包饺子不算本事&#xff0c;会擀饺子皮…

一次电气——电抗器(一)

我之前的工作是在国外建联合循环电厂&#xff0c;现在的工作是研发一次电力设备。虽然仍是在电力行业发展&#xff0c;但这两份不同岗位不同职能的工作究其感受而言有很大的不同。相较于第一份工作&#xff0c;第二份工作带给我带来的更多的是一种由广及微&#xff0c;由浅入深…

Linux系统-----进程通讯

前言 本期我们来学习进程间的通讯&#xff0c;不同进程之间是可以去通过信号来去实现通讯交流的&#xff0c;下面我们就一起来看看多进程之间的通讯方式。 一、信号机制 1、信号的基本概念 每个信号都对应一个正整数常量(称为signal number,即信号编号。定义在系统头文件<…

Android开发,JNI开发项目创建

文章目录 Android开发&#xff0c;JNI开发项目创建1.jni是什么 Android开发&#xff0c;JNI开发项目创建 创建工程 1.jni是什么 使得java可以访问底层c语言&#xff0c;java本地化接口&#xff0c;是桥梁。 运行下我们的项目 出现这个就是我们的JNI开发环境已经配置好了 是…

算法通关村第七关—迭代实现二叉树的遍历(黄金)

迭代实现二叉树的遍历 迭代法实现前序遍历 前序遍历是中左右&#xff0c;如果还有左子树就一直向下找。完了之后再返回从最底层逐步向上向右找。不难写出如下代码&#xff1a;&#xff08;注意代码中&#xff0c;空节点不入栈&#xff09; public List<Integer>preorde…
最新文章