0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

提高CI/CD系統(tǒng)可觀察性的四種技術(shù)

阿銘linux ? 來源:CSDN博客 ? 作者:琦彥 ? 2021-08-17 09:31 ? 次閱讀

可觀察性是DevOps團(tuán)隊(duì)的重要組成部分,它可以幫助組織從系統(tǒng)的輸出信息,推斷系統(tǒng)內(nèi)部狀態(tài)。它是一個(gè)持續(xù)的過程,從你的CI/CD流水線開始,并貫穿于應(yīng)用程序的整個(gè)生命周期。

可觀察的CI/CD流水線,使你能夠主動(dòng)監(jiān)視問題并跟蹤C(jī)I/CD構(gòu)建期間發(fā)生的錯(cuò)誤。如果沒有對(duì)流水線的可見性,在系統(tǒng)出現(xiàn)異常時(shí),很難追溯到其根本原因。在這篇文章中,我們將討論提高系統(tǒng)可觀察性的四種技術(shù)。

1. 生產(chǎn)環(huán)境的可觀察性

有些錯(cuò)誤僅在應(yīng)用程序部署到生產(chǎn)環(huán)境后才會(huì)發(fā)生,因此很難在本地復(fù)現(xiàn),有些還只是間歇性地發(fā)生。當(dāng)涉及到這些問題時(shí),傳統(tǒng)的測(cè)試和監(jiān)控是不夠的,因?yàn)樗鼈冎饕糜跈z查和監(jiān)控已知錯(cuò)誤或問題。但是,如果你能確保你的生產(chǎn)系統(tǒng)是可觀察的,那么你可以在故障發(fā)生時(shí)盡快找到原因或解決問題,從而避免代價(jià)高昂的停機(jī)時(shí)間。應(yīng)用程序還依賴于許多關(guān)鍵組件,例如存儲(chǔ)、隊(duì)列等。生產(chǎn)環(huán)境的可觀察性,還使你可以監(jiān)視應(yīng)用程序所依賴的三方組件的持續(xù)正常運(yùn)行的時(shí)間。生產(chǎn)環(huán)境的可觀察性有兩個(gè)關(guān)鍵部分——警報(bào)和被動(dòng)監(jiān)控。

警報(bào)

監(jiān)控系統(tǒng),不斷檢測(cè)重要的系統(tǒng)事件并向組織發(fā)送警報(bào)信息。大多數(shù)警報(bào)系統(tǒng)都是可配置的,允許你在應(yīng)用程序的行為方式超出預(yù)定義閾值時(shí)發(fā)送警報(bào)。警報(bào)可以通過短信、電子郵件甚至Slack消息發(fā)送——因此開發(fā)人員和利益相關(guān)者都知道系統(tǒng)什么時(shí)候發(fā)生問題。此類警報(bào)系統(tǒng)可確保開發(fā)人員在應(yīng)用程序未按預(yù)期運(yùn)行時(shí)收到通知。

被動(dòng)監(jiān)控

被動(dòng)監(jiān)控,對(duì)于全面了解應(yīng)用程序性能和用戶使用習(xí)慣至關(guān)重要,允許軟件團(tuán)隊(duì)使用真實(shí)數(shù)據(jù)直接跟蹤用戶體驗(yàn)質(zhì)量。它不會(huì)將測(cè)試數(shù)據(jù)注入網(wǎng)絡(luò)以模仿用戶行為。相反,它從各個(gè)網(wǎng)絡(luò)位置收集用戶實(shí)際數(shù)據(jù)。

2. 優(yōu)化日志記錄

日志記錄,一般包含有關(guān)軟件系統(tǒng)發(fā)生事件的信息。在對(duì)軟件進(jìn)行故障排除時(shí),日志可讓你深入了解系統(tǒng)最初出現(xiàn)故障的時(shí)間和原因。毫無疑問,日志數(shù)據(jù)為DevOps團(tuán)隊(duì)提供了對(duì)被監(jiān)控應(yīng)用程序或系統(tǒng)的更高級(jí)別的可見性。這使他們能夠識(shí)別錯(cuò)誤原因,以及應(yīng)用程序中特定問題發(fā)生的頻率。

但是,如果不對(duì)日志進(jìn)行格式優(yōu)化和集中處理,日志數(shù)據(jù)可能會(huì)膨脹,直到變得難以使用,尤其是在分布式架構(gòu)中。當(dāng)你收集大量業(yè)務(wù)無關(guān)和非結(jié)構(gòu)化數(shù)據(jù)時(shí),日志分析的挑戰(zhàn)會(huì)增加。良好的日志記錄,會(huì)優(yōu)先記錄對(duì)應(yīng)用程序性能至關(guān)重要的指標(biāo),并確保日志消息結(jié)構(gòu)化、描述性強(qiáng)并包含有用的信息。該信息應(yīng)包括:

時(shí)間戳

唯一用戶ID

會(huì)話ID

資源使用信息

日志也應(yīng)該在一個(gè)集中的、可訪問的位置進(jìn)行管理。這樣,你可以輕松關(guān)聯(lián)不同的日志,將它們與特定會(huì)話或用戶聯(lián)系起來,以便于更快地進(jìn)行故障排除并了解整個(gè)基礎(chǔ)架構(gòu)中發(fā)生的情況。

3.DevOps文化

僅收集日志或監(jiān)控生產(chǎn)環(huán)境的應(yīng)用程序是不夠的。為了在跨職能團(tuán)隊(duì)中實(shí)現(xiàn)系統(tǒng)全面的可觀察性,你還需要圍繞共同目標(biāo)調(diào)整人員和團(tuán)隊(duì)協(xié)作流程。盡管看似無形,但至關(guān)重要。如果團(tuán)隊(duì)成員不支持該DevOps文化,組織可能無法實(shí)施戰(zhàn)略計(jì)劃。因此,DevOps文化轉(zhuǎn)型,是構(gòu)建高度可觀察的應(yīng)用程序的基礎(chǔ)。創(chuàng)建DevOps環(huán)境的最簡(jiǎn)單方法是將運(yùn)維團(tuán)隊(duì)和開發(fā)團(tuán)隊(duì)結(jié)合起來,這樣他們就必須進(jìn)行更多的溝通和協(xié)作。要真正實(shí)現(xiàn)由可觀察性驅(qū)動(dòng)的DevOps文化,你需要:

營(yíng)造協(xié)作環(huán)境

對(duì)端到端負(fù)責(zé)

持續(xù)改進(jìn)

關(guān)注客戶的需求

接受故障并從中學(xué)習(xí)

自動(dòng)化

從軟件開發(fā)開始到結(jié)束,軟件團(tuán)隊(duì)?wèi)?yīng)該始終編寫可調(diào)試的代碼。該代碼還應(yīng)包含適當(dāng)?shù)腒PI、指標(biāo)和日志記錄。這提高了應(yīng)用程序的整體可觀察性,并為運(yùn)維團(tuán)隊(duì)提供了更多數(shù)據(jù)指標(biāo)來檢測(cè)故障并預(yù)測(cè)未來可能發(fā)生的故障。實(shí)現(xiàn)可觀察性不僅僅是軟件工程師和開發(fā)人員的工作,這應(yīng)該是跨職能團(tuán)隊(duì)的共同責(zé)任。

可觀察性驅(qū)動(dòng)的DevOps文化改變了組織對(duì)其開發(fā)過程的看法,并將運(yùn)維思維方式注入到他們的日常實(shí)踐中。最終,這會(huì)提高云應(yīng)用程序的性能和可用性,同時(shí)提高團(tuán)隊(duì)的生產(chǎn)力和滿意度——反過來也簡(jiǎn)化了工作流程和協(xié)作。

4. 部署前的可觀察性

很多組織,都關(guān)注在生產(chǎn)系統(tǒng)中實(shí)現(xiàn)可觀察性,但較少?gòu)?qiáng)調(diào)從開發(fā)階段就使應(yīng)用程序具備可觀察的能力。部署前的可觀察性在許多日?;顒?dòng)中發(fā)揮著重要作用,包括決定構(gòu)建什么或如何發(fā)布新功能、優(yōu)化關(guān)鍵代碼以及應(yīng)用程序的架構(gòu)調(diào)整。部署前的可觀察性使DevOps團(tuán)隊(duì)能夠主動(dòng)提前修復(fù),在其代碼投入生產(chǎn)環(huán)境時(shí)可能出現(xiàn)的問題。

遠(yuǎn)程調(diào)試

遠(yuǎn)程調(diào)試工具提供了另一種安全感,這些工具允許開發(fā)人員調(diào)試–在本地環(huán)境之外運(yùn)行的應(yīng)用程序,而不會(huì)干擾應(yīng)用程序的正常運(yùn)行、還可以篩選大量日志文件或在本地復(fù)制生產(chǎn)環(huán)境。通過遠(yuǎn)程調(diào)試,開發(fā)人員可以使用不間斷斷點(diǎn)輕松調(diào)試任何環(huán)境中的錯(cuò)誤,包括云原生開發(fā)環(huán)境等。如果操作恰當(dāng),遠(yuǎn)程調(diào)試可以為開發(fā)團(tuán)隊(duì)節(jié)省大量金錢和時(shí)間,對(duì)于依賴云平臺(tái)、服務(wù)和基礎(chǔ)設(shè)施的組織尤其有用。

總結(jié)

雖然這四種最佳實(shí)踐都是有益的,但部署前的可觀察性是提高可觀察性的最經(jīng)濟(jì)的方法。它允許軟件開發(fā)人員及時(shí)檢測(cè)和修復(fù)代碼中的問題,同時(shí)修復(fù)成本最低,不會(huì)影響用戶。生產(chǎn)環(huán)境的可觀察性也很重要,在生產(chǎn)環(huán)境中任何事情都可能發(fā)生,許多不可預(yù)測(cè)的因素可能會(huì)破壞你的應(yīng)用程序或使其不可用,但它成本高昂。

應(yīng)用程序日志記錄也很重要,但日志管理成本也高且難以分析——尤其是在分布式系統(tǒng)中嘗試追蹤問題的根本原因時(shí)。最后,任何想要實(shí)現(xiàn)完全可觀察性的企業(yè)都應(yīng)該接受DevOps文化,但這個(gè)過程需要時(shí)間和整個(gè)組織的支持。

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

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    4986

    瀏覽量

    87806
  • devops
    +關(guān)注

    關(guān)注

    0

    文章

    116

    瀏覽量

    12036

原文標(biāo)題:提高CI/CD可觀察性的4 個(gè)最佳實(shí)踐

文章出處:【微信號(hào):aming_linux,微信公眾號(hào):阿銘linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    私藏技術(shù)大公開!四種常見供電方案

    在現(xiàn)代生活中,供電問題直接關(guān)系到我們的生活質(zhì)量與工作效率。以下是四種超實(shí)用的供電方案,無論是在家庭生活還是工作場(chǎng)景中,都能為你提供穩(wěn)定可靠的電力支持。 常見的物聯(lián)網(wǎng)應(yīng)用場(chǎng)景下,供電方式有四種
    的頭像 發(fā)表于 12-31 14:28 ?704次閱讀
    私藏<b class='flag-5'>技術(shù)</b>大公開!<b class='flag-5'>四種</b>常見供電方案

    被問爆的四種供電方式,來啦~

    4G模組的外部電源供電設(shè)計(jì)十分重要,對(duì)系統(tǒng)穩(wěn)定、射頻性能都有直接影響。 常見的物聯(lián)網(wǎng)應(yīng)用場(chǎng)景下,供電方式有四種: LDO供電方式 DCDC供電方式 鋰電池供電以及充電方式 不可充電鋰亞/鋰錳電池供電
    的頭像 發(fā)表于 12-30 15:40 ?238次閱讀
    被問爆的<b class='flag-5'>四種</b>供電方式,來啦~

    CI/CD方案:推動(dòng)智能汽車開發(fā)的高效利器

    在智能化和自動(dòng)駕駛技術(shù)飛速發(fā)展的背景下,汽車軟件開發(fā)的復(fù)雜正以前所未有的速度增長(zhǎng)。面對(duì)市場(chǎng)對(duì)效率、質(zhì)量和快速迭代的高需求,傳統(tǒng)開發(fā)模式已然捉襟見肘。作為提升開發(fā)效率和質(zhì)量的核心工具,CI/C
    的頭像 發(fā)表于 12-18 10:03 ?460次閱讀
    <b class='flag-5'>CI</b>/<b class='flag-5'>CD</b>方案:推動(dòng)智能汽車開發(fā)的高效利器

    Perforce靜態(tài)分析工具2024.2新增功能:Helix QAC全新CI/CD集成支持、Klocwork分析引擎改進(jìn)和安全增強(qiáng)

    實(shí)現(xiàn)持續(xù)合規(guī)現(xiàn)代軟件開發(fā)實(shí)踐要求開發(fā)團(tuán)隊(duì)具備適應(yīng),在確保代碼質(zhì)量和可靠的同時(shí),優(yōu)先考慮靈活性和協(xié)作。在軟件開發(fā)流程中實(shí)施持續(xù)集成(CI
    的頭像 發(fā)表于 10-08 16:22 ?311次閱讀
    Perforce靜態(tài)分析工具2024.2新增功能:Helix QAC全新<b class='flag-5'>CI</b>/<b class='flag-5'>CD</b>集成支持、Klocwork分析引擎改進(jìn)和安全增強(qiáng)

    濾波電路的四種類型是什么

    濾波電路是電子電路中非常重要的一部分,它主要用于對(duì)信號(hào)進(jìn)行頻率選擇,即允許特定頻率范圍內(nèi)的信號(hào)通過,而阻止其他頻率的信號(hào)。濾波電路根據(jù)其特性可以分為四種基本類型:低通濾波器(Low-Pass
    的頭像 發(fā)表于 08-08 16:25 ?3238次閱讀

    負(fù)反饋的四種類型是什么

    負(fù)反饋是電子系統(tǒng)中常用的一技術(shù),它通過將系統(tǒng)輸出的一部分信號(hào)以某種方式反饋到輸入端,以減小輸出信號(hào)與期望信號(hào)之間的差異,從而提高
    的頭像 發(fā)表于 08-08 16:15 ?4684次閱讀

    負(fù)反饋的四種類型及判斷方法

    負(fù)反饋,又稱為負(fù)反饋調(diào)節(jié),是指在一個(gè)系統(tǒng)中,當(dāng)系統(tǒng)輸出的某些變化對(duì)輸入產(chǎn)生抑制作用時(shí),系統(tǒng)會(huì)自動(dòng)調(diào)節(jié)以維持穩(wěn)定狀態(tài)的現(xiàn)象。負(fù)反饋在生物、工程、經(jīng)濟(jì)等多個(gè)領(lǐng)域都有廣泛的應(yīng)用。本文將介紹負(fù)反饋的
    的頭像 發(fā)表于 08-02 11:01 ?2820次閱讀

    簡(jiǎn)述四種基本觸發(fā)器及其功能

    在數(shù)字電路設(shè)計(jì)中,觸發(fā)器是一基本且重要的存儲(chǔ)元件,用于存儲(chǔ)二進(jìn)制信息(即0和1)。根據(jù)功能和應(yīng)用場(chǎng)景的不同,觸發(fā)器可以分為多種類型,其中四種基本觸發(fā)器包括RS觸發(fā)器、JK觸發(fā)器、D觸發(fā)器和T觸發(fā)器。以下是對(duì)這四種基本觸發(fā)器及其
    的頭像 發(fā)表于 07-27 14:59 ?1.1w次閱讀

    元器件的包裝方式及常見的四種方式

    四種元件包裝方式在實(shí)際生產(chǎn)和使用中廣泛應(yīng)用,不同的包裝方式適用于不同類型和規(guī)格的元件,并且可以根據(jù)具體要求進(jìn)行定制化的包裝設(shè)計(jì)。不同的包裝方式也可以影響元件的存儲(chǔ)、運(yùn)輸和使用,選擇適合的包裝方式對(duì)于保護(hù)元件質(zhì)量和提高生產(chǎn)效率具有重要意義。
    的頭像 發(fā)表于 06-27 12:58 ?1735次閱讀

    介紹MCUboot支持的四種升級(jí)模式(2)

    介紹MCUboot支持的四種升級(jí)模式,分別是Overwrite、Swap、Direct XIP和加載到RAM中執(zhí)行。由于FSP不支持第四種——加載到RAM中執(zhí)行,因?yàn)槲覀冎攸c(diǎn)介紹前三。
    的頭像 發(fā)表于 06-13 10:56 ?995次閱讀
    介紹MCUboot支持的<b class='flag-5'>四種</b>升級(jí)模式(2)

    電氣設(shè)備的狀態(tài)有哪四種

    電氣設(shè)備的狀態(tài)可以分為四種:正常狀態(tài)、異常狀態(tài)、故障狀態(tài)和緊急狀態(tài)。這四種狀態(tài)涵蓋了電氣設(shè)備在運(yùn)行過程中可能遇到的各種情況。本文將詳細(xì)分析這四種狀態(tài)的特點(diǎn)、原因、影響以及相應(yīng)的處理措施。 一、正常
    的頭像 發(fā)表于 06-05 16:47 ?4823次閱讀

    四種電源防接反電路

    防反接電路用于防止電子元器件因正負(fù)極接反而燒毀。常見的防反接電路有四種:二極管串聯(lián)、整流橋、NMOS和PMOS。二極管串聯(lián)利用二極管的單向?qū)щ?b class='flag-5'>性,整流橋則能正反接都導(dǎo)通但會(huì)消耗電能。NMOS和PMOS的防反接電路設(shè)計(jì)則通過控制電流路徑來實(shí)現(xiàn)正負(fù)極的保護(hù)。
    發(fā)表于 05-22 16:19

    視頻網(wǎng)站服務(wù)器的四種負(fù)載均衡技術(shù)

    視頻網(wǎng)站通常會(huì)面臨大量的用戶訪問和視頻流量,為了提高性能和可用,需要使用負(fù)載均衡技術(shù)。以下是四種常用的視頻網(wǎng)站服務(wù)器負(fù)載均衡技術(shù): 1、基
    的頭像 發(fā)表于 04-01 17:36 ?659次閱讀

    如何理解IGBT的四種SOA?

    如何理解IGBT的四種SOA? IGBT的四種SOA表示了IGBT器件在不同工作狀態(tài)下的安全操作區(qū)域。這四種SOA是:Continuous SOA、Limited SOA、Pulse SOA
    的頭像 發(fā)表于 02-18 11:04 ?1152次閱讀

    A/D轉(zhuǎn)換的四種誤差

    針對(duì)A/D轉(zhuǎn)換中可能出現(xiàn)的誤差,主要分為以下四種情況,漂移誤差、線型比例誤差、非線性誤差、非單調(diào)性誤差。還有那些能夠引起AD轉(zhuǎn)換出現(xiàn)比較大的誤差類別? 先說AD轉(zhuǎn)換是怎么取值的,假設(shè)輸入信號(hào)0-3V
    發(fā)表于 01-30 14:19