0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

提高CI/CD系统可观察性的四种技术

阿铭linux 来源:CSDN博客 作者:琦彦 2021-08-17 09:31 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

可观察性是DevOps团队的重要组成部分,它可以帮助组织从系统的输出信息,推断系统内部状态。它是一个持续的过程,从你的CI/CD流水线开始,并贯穿于应用程序的整个生命周期。

可观察的CI/CD流水线,使你能够主动监视问题并跟踪CI/CD构建期间发生的错误。如果没有对流水线的可见性,在系统出现异常时,很难追溯到其根本原因。在这篇文章中,我们将讨论提高系统可观察性的四种技术。

1. 生产环境的可观察性

有些错误仅在应用程序部署到生产环境后才会发生,因此很难在本地复现,有些还只是间歇性地发生。当涉及到这些问题时,传统的测试和监控是不够的,因为它们主要用于检查和监控已知错误或问题。但是,如果你能确保你的生产系统是可观察的,那么你可以在故障发生时尽快找到原因或解决问题,从而避免代价高昂的停机时间。应用程序还依赖于许多关键组件,例如存储、队列等。生产环境的可观察性,还使你可以监视应用程序所依赖的三方组件的持续正常运行的时间。生产环境的可观察性有两个关键部分——警报和被动监控。

警报

监控系统,不断检测重要的系统事件并向组织发送警报信息。大多数警报系统都是可配置的,允许你在应用程序的行为方式超出预定义阈值时发送警报。警报可以通过短信、电子邮件甚至Slack消息发送——因此开发人员和利益相关者都知道系统什么时候发生问题。此类警报系统可确保开发人员在应用程序未按预期运行时收到通知。

被动监控

被动监控,对于全面了解应用程序性能和用户使用习惯至关重要,允许软件团队使用真实数据直接跟踪用户体验质量。它不会将测试数据注入网络以模仿用户行为。相反,它从各个网络位置收集用户实际数据。

2. 优化日志记录

日志记录,一般包含有关软件系统发生事件的信息。在对软件进行故障排除时,日志可让你深入了解系统最初出现故障的时间和原因。毫无疑问,日志数据为DevOps团队提供了对被监控应用程序或系统的更高级别的可见性。这使他们能够识别错误原因,以及应用程序中特定问题发生的频率。

但是,如果不对日志进行格式优化和集中处理,日志数据可能会膨胀,直到变得难以使用,尤其是在分布式架构中。当你收集大量业务无关和非结构化数据时,日志分析的挑战会增加。良好的日志记录,会优先记录对应用程序性能至关重要的指标,并确保日志消息结构化、描述性强并包含有用的信息。该信息应包括:

时间戳

唯一用户ID

会话ID

资源使用信息

日志也应该在一个集中的、可访问的位置进行管理。这样,你可以轻松关联不同的日志,将它们与特定会话或用户联系起来,以便于更快地进行故障排除并了解整个基础架构中发生的情况。

3.DevOps文化

仅收集日志或监控生产环境的应用程序是不够的。为了在跨职能团队中实现系统全面的可观察性,你还需要围绕共同目标调整人员和团队协作流程。尽管看似无形,但至关重要。如果团队成员不支持该DevOps文化,组织可能无法实施战略计划。因此,DevOps文化转型,是构建高度可观察的应用程序的基础。创建DevOps环境的最简单方法是将运维团队和开发团队结合起来,这样他们就必须进行更多的沟通和协作。要真正实现由可观察性驱动的DevOps文化,你需要:

营造协作环境

对端到端负责

持续改进

关注客户的需求

接受故障并从中学习

自动化

从软件开发开始到结束,软件团队应该始终编写可调试的代码。该代码还应包含适当的KPI、指标和日志记录。这提高了应用程序的整体可观察性,并为运维团队提供了更多数据指标来检测故障并预测未来可能发生的故障。实现可观察性不仅仅是软件工程师和开发人员的工作,这应该是跨职能团队的共同责任。

可观察性驱动的DevOps文化改变了组织对其开发过程的看法,并将运维思维方式注入到他们的日常实践中。最终,这会提高云应用程序的性能和可用性,同时提高团队的生产力和满意度——反过来也简化了工作流程和协作。

4. 部署前的可观察性

很多组织,都关注在生产系统中实现可观察性,但较少强调从开发阶段就使应用程序具备可观察的能力。部署前的可观察性在许多日常活动中发挥着重要作用,包括决定构建什么或如何发布新功能、优化关键代码以及应用程序的架构调整。部署前的可观察性使DevOps团队能够主动提前修复,在其代码投入生产环境时可能出现的问题。

远程调试

远程调试工具提供了另一种安全感,这些工具允许开发人员调试–在本地环境之外运行的应用程序,而不会干扰应用程序的正常运行、还可以筛选大量日志文件或在本地复制生产环境。通过远程调试,开发人员可以使用不间断断点轻松调试任何环境中的错误,包括云原生开发环境等。如果操作恰当,远程调试可以为开发团队节省大量金钱和时间,对于依赖云平台、服务和基础设施的组织尤其有用。

总结

虽然这四种最佳实践都是有益的,但部署前的可观察性是提高可观察性的最经济的方法。它允许软件开发人员及时检测和修复代码中的问题,同时修复成本最低,不会影响用户。生产环境的可观察性也很重要,在生产环境中任何事情都可能发生,许多不可预测的因素可能会破坏你的应用程序或使其不可用,但它成本高昂。

应用程序日志记录也很重要,但日志管理成本也高且难以分析——尤其是在分布式系统中尝试追踪问题的根本原因时。最后,任何想要实现完全可观察性的企业都应该接受DevOps文化,但这个过程需要时间和整个组织的支持。

译文链接: https://thenewstack.io/improve-your-ci-cd-observability-with-these-4-best-practices/

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 软件
    +关注

    关注

    69

    文章

    5388

    浏览量

    92066
  • devops
    +关注

    关注

    0

    文章

    157

    浏览量

    12976

原文标题:提高CI/CD可观察性的4 个最佳实践

文章出处:【微信号:aming_linux,微信公众号:阿铭linux】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深度解析|光伏可装置:可观、可测、可控、可调的技术逻辑

    在光伏电站规模化、精细化发展的当下,“可观、可测、可控、可调”(以下简称“可”)已成为光伏系统高效、安全、稳定运行的核心诉求。光伏可装置作为衔接光伏组件、储能
    的头像 发表于 05-21 14:22 391次阅读
    深度解析|光伏<b class='flag-5'>四</b>可装置:<b class='flag-5'>可观</b>、可测、可控、可调的<b class='flag-5'>技术</b>逻辑

    浅谈AI技术背后的四种系统架构

    当今的AI体验离不开经过精心设计的平台,这些平台将大语言模型 (LLM) 与直观的用户界面相结合,帮助增强人类的能力。在考虑成本、硬件资源、延迟、安全和可信度等限制因素的同时,工程师们正在塑造这些系统在现实环境中的运行方式和扩展能力。
    的头像 发表于 05-16 10:02 442次阅读

    驱动之路#24:Linux设备四种读写模型

    Linux 设备四种读写模型——其实核心就 4 方式:查询、休眠 - 唤醒、poll、异步通知。它们不是中断本身,而是 “应用 - 驱动” 的上层交互逻辑(中断是底层硬件触发机制),但高效交互几乎都依赖中断实现。
    的头像 发表于 05-06 16:26 5038次阅读

    变频器四种制动方式

    变频器作为现代工业控制系统中不可或缺的电力调节设备,其制动性能直接关系到设备的运行效率和安全。在电机减速或急停过程中,如何快速消耗电机产生的再生电能,避免过电压损坏设备,是变频器制动技术需要
    的头像 发表于 03-25 16:31 344次阅读

    光伏可装置的可观功能对发电效能具体有哪些影响

    发电效能是光伏电站的核心价值指标,直接决定投资回报与能源贡献能力。可观功能作为“可”体系的基础,其“采集-传输-处理-呈现”的全链路技术构成,并非简单的“数据记录工具”,而是通过精准感知、高效流转
    的头像 发表于 03-02 16:53 650次阅读
    光伏<b class='flag-5'>四</b>可装置的<b class='flag-5'>可观</b>功能对发电效能具体有哪些影响

    低成本CAN扩展方案怎么选?CSM331A四种模式一次说清

    MCU需要CAN功能但预算有限?CSM331A协议转换芯片用SPI/UART就能扩展,四种模式从快到稳任你选。ZLG致远电子推出的CSM331A协议转换芯片,配合一个CAN收发器,就能通过SPI
    的头像 发表于 02-09 11:50 539次阅读
    低成本CAN扩展方案怎么选?CSM331A<b class='flag-5'>四种</b>模式一次说清

    光伏“可观”功能效果如何量化?——效益与技术实现深度评估

    光伏电站可观功能的技术构成(采集-传输-处理-呈现)是支撑电站“数据透明化”的核心体系,其效果并非单一指标可衡量——既需验证技术本身的可靠,更要考量其对运营效率、发电收益、合规安全的
    的头像 发表于 01-16 15:11 673次阅读
    光伏“<b class='flag-5'>可观</b>”功能效果如何量化?——效益与<b class='flag-5'>技术</b>实现深度评估

    是德示波器DSOX1202A与电脑的四种连接方式及操作步骤详解

    是德科技(Keysight)DSOX1202A示波器作为高精度电子测量设备,广泛应用于电子工程、通信测试与自动化调试场景。为实现数据实时采集、波形分析与远程控制,用户需通过USB、LAN、GPIB或串口将示波器与电脑互联。本文将结合官方指南与实操经验,系统介绍四种连接方式
    的头像 发表于 01-13 17:48 2014次阅读
    是德示波器DSOX1202A与电脑的<b class='flag-5'>四种</b>连接方式及操作步骤详解

    电源的效率如何观察

    表法 电源效率的表法是指电源效率的四种不同方法或标准来衡量和表示。这些方法分别用于评估电源在不同负载条件下的效率。以下是这四种方法: 20% 负载:这个表法表示电源的效率在
    发表于 12-30 08:19

    解读西格电力光伏可装置:可观、可测、可控、可调的技术内涵

    在分布式光伏向规模化、智能化转型的进程中,“可观、可测、可控、可调”(简称“可”)已从行业倡导的技术方向,升级为政策强制与电网接入的核心要求。这项要求并非孤立的
    的头像 发表于 11-27 14:10 883次阅读
    解读西格电力光伏<b class='flag-5'>四</b>可装置:<b class='flag-5'>可观</b>、可测、可控、可调的<b class='flag-5'>技术</b>内涵

    分布式光伏“可”装置:可观、可测、可控、可调的技术内核全解析

    分布式光伏“可观、可测、可控、可调”可装置,精准切中并网核心痛点,通过全维度功能构建,成为推动分布式光伏从“被动并网”向“主动协同”转型的关键支撑。
    的头像 发表于 11-24 11:20 782次阅读
    分布式光伏“<b class='flag-5'>四</b>可”装置:<b class='flag-5'>可观</b>、可测、可控、可调的<b class='flag-5'>技术</b>内核全解析

    一图看懂绿电直连的四种玩法

    通过 “总览框架 + 分模式图解” 的形式,用可视化逻辑拆解绿电直连的四种核心模式,涵盖每种模式的核心特征、适用场景、参与主体三大关键信息,帮你快速区分不同 “玩法” 的差异与适配
    的头像 发表于 10-15 10:18 1696次阅读
    一图看懂绿电直连的<b class='flag-5'>四种</b>玩法

    从入门到精通:基于开源代码的BLE四种模式开发详解

    Bluetooth Smart,是蓝牙4.0及更高版本引入的低功耗无线通信技术,专为低带宽、间歇数据传输的物联网(IoT)和穿戴设备设计。   一、Air8000蓝牙大模式 Air8000蓝牙支持
    的头像 发表于 10-09 18:00 791次阅读
    从入门到精通:基于开源代码的BLE<b class='flag-5'>四种</b>模式开发详解

    CI/CD实践中的运维优化技巧

    在数字化转型的浪潮中,CI/CD已经成为现代软件开发的基石。然而,真正能够发挥CI/CD威力的,往往在于那些不为人知的运维优化细节。本文将深入剖析C
    的头像 发表于 09-18 15:05 1580次阅读

    RDMA简介3之四种子协议对比

    CPU卸载到RDMA网卡处理。仅需要使用普通以太网交换机和iWARP网卡即可实现路由。但在大规模部署时,由于TCP/IP协议点对点连接的特性,将会占用大量的内存资源,对系统规格的要求更高在对比这四种
    发表于 06-04 16:05