自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

為什么OpenTelemetry正在將云原生帶到新的高度?

譯文
云計(jì)算 云原生
運(yùn)行云原生應(yīng)用程序時(shí),可觀測(cè)性(observability)很關(guān)鍵。在云原生領(lǐng)域,應(yīng)用程序功能來(lái)自在多個(gè)位置運(yùn)行的眾多微服務(wù)之間的交互。

?譯者 | 布加迪

審校 | 孫淑娟

運(yùn)行云原生應(yīng)用程序時(shí),可觀測(cè)性(observability)很關(guān)鍵。在云原生領(lǐng)域,應(yīng)用程序功能來(lái)自在多個(gè)位置運(yùn)行的眾多微服務(wù)之間的交互。微服務(wù)應(yīng)用程序具有松散耦合性,可能意味著每個(gè)微服務(wù)都以各自的方式報(bào)告其活動(dòng)。如果沒(méi)有一種工具來(lái)匯總和關(guān)聯(lián)這些遙測(cè)數(shù)據(jù),自始至終跟蹤請(qǐng)求的處理就算并非沒(méi)有可能,也是非常困難的。

這種細(xì)粒度、循序漸進(jìn)的跟蹤對(duì)于故障排除和性能調(diào)優(yōu)而言至關(guān)重要。在物色一種多功能的可觀測(cè)性工具時(shí),NGINX現(xiàn)代應(yīng)用程序參考架構(gòu)(MARA)項(xiàng)目背后的團(tuán)隊(duì)選擇了OpenTelemetry。這篇博文解釋了為什么OpenTelemetry對(duì)微服務(wù)架構(gòu)而言如此重要,以及它在如何改變?cè)圃鷳?yīng)用程序格局。

OpenTelemetry驅(qū)動(dòng)可觀測(cè)性2.0

OpenTelemetry在2019年巴塞羅那KubeCon大會(huì)上首次宣布,此后就吸引了一批狂熱的貢獻(xiàn)者。今天,它仍然是云原生計(jì)算基金會(huì)(CNCF)的一個(gè)高人氣項(xiàng)目。越來(lái)越多的貢獻(xiàn)者表明OpenTelemetry已趨成熟,開始跨越愿意嘗新的早期采用者和渴望成熟產(chǎn)品的實(shí)用主義者之間的這條鴻溝。

OpenTelemetry專注于數(shù)據(jù),具體說(shuō)來(lái)是最有效地了解、檢測(cè)和改進(jìn)應(yīng)用程序所需要的數(shù)據(jù)和數(shù)據(jù)流(遙測(cè))。數(shù)據(jù)只有在可以大規(guī)模聚合、分析和可視化后才有用。雖然OpenTelemetry并不提供可視化數(shù)據(jù)方面的指導(dǎo),但它讓我們從此不必操心我們獲得什么數(shù)據(jù),而是專注于我們可以用數(shù)據(jù)做什么。

OpenTelemetry簡(jiǎn)化了跨數(shù)據(jù)源和應(yīng)用程序關(guān)聯(lián)事件的工作。這由此帶來(lái)了可觀測(cè)性2.0,這是用于測(cè)量云端應(yīng)用程序活動(dòng)的新基準(zhǔn)。由于數(shù)據(jù)自動(dòng)關(guān)聯(lián),我們不再局限于僅僅知道應(yīng)用程序是否在運(yùn)行?,F(xiàn)在我們可以了解任何請(qǐng)求通過(guò)我們的應(yīng)用程序所經(jīng)過(guò)的確切數(shù)據(jù)路徑。

為了實(shí)現(xiàn)這一點(diǎn),OpenTelemetry的兩個(gè)功能方面非常關(guān)鍵:分布式跟蹤和應(yīng)用程序智能。

為何現(xiàn)代應(yīng)用程序架構(gòu)需要分布式跟蹤?

雖然分布式跟蹤已經(jīng)存在多年了(可以追溯到Solaris中的DTrace),但過(guò)去十年發(fā)生的許多變化加大了用戶對(duì)它的需求。使用Cynefin框架,我們可以著重表明如今在現(xiàn)代應(yīng)用程序方面面臨的一些變化和挑戰(zhàn):

Cynefin框架表明了從簡(jiǎn)單向復(fù)雜變化時(shí),我們的實(shí)踐或做法會(huì)發(fā)生怎樣的變化。面臨的挑戰(zhàn)是,我們沿兩條不同的路徑前進(jìn),每條路徑有其特點(diǎn);從簡(jiǎn)單變成復(fù)雜后,試圖直接抄捷徑常常會(huì)造成混亂和不完整的進(jìn)展。

不妨看看哪些要素構(gòu)建了現(xiàn)代應(yīng)用程序和云原生旅程中的路徑。在第一條路徑(Cynefin圖中的Y軸)中,我們有現(xiàn)代應(yīng)用程序,它們通常是微服務(wù)架構(gòu),每個(gè)應(yīng)用程序都做特定的工作。在第二條路徑(X軸)中,復(fù)雜的環(huán)境是短暫的,因?yàn)槲⒎?wù)實(shí)例根據(jù)需求來(lái)創(chuàng)建和關(guān)閉,并根據(jù)網(wǎng)絡(luò)問(wèn)題移動(dòng)到不同的主機(jī)上。

我們還必須考慮云環(huán)境的出現(xiàn)和迅猛增長(zhǎng),比如亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)、微軟Azure和谷歌云平臺(tái)(GCP)等云環(huán)境。這種云的一個(gè)優(yōu)點(diǎn)是彈性響應(yīng)——可以靈活擴(kuò)展或收縮資源,以匹配當(dāng)前的需求量。加上容器編排(最常使用Kubernetes)的影響,隨著資源的數(shù)量和位置在一段時(shí)間后出現(xiàn)變化,我們開始看到混亂的行為。(連這種相對(duì)受限的視圖也很混亂,而無(wú)服務(wù)器函數(shù)等要素可能也會(huì)使其更混亂。)

在現(xiàn)代架構(gòu)中,有許多獨(dú)立的部分生成我們監(jiān)控和維護(hù)應(yīng)用程序所需的遙測(cè)數(shù)據(jù),數(shù)據(jù)負(fù)載龐大而復(fù)雜。由于我們無(wú)法完全控制基礎(chǔ)設(shè)施和通信路徑,問(wèn)題可能不會(huì)可靠地重復(fù)或容易引發(fā)。我們需要能夠讓我們一直跟蹤所有活動(dòng)和相關(guān)要素的技術(shù),這樣我們可以理解和分析不斷變化的環(huán)境,不僅可以識(shí)別反復(fù)出現(xiàn)的問(wèn)題,還可以識(shí)別異常情況以及相關(guān)的應(yīng)用程序和網(wǎng)絡(luò)情況。

這時(shí)候OpenTelemetry應(yīng)運(yùn)而生。

OpenTelemetry在分布式跟蹤方面的未來(lái)

分布式跟蹤支持跟蹤許多類型的新指標(biāo),但最常見的指標(biāo)是與每個(gè)時(shí)間單位的請(qǐng)求數(shù)量、每個(gè)時(shí)間單位的錯(cuò)誤數(shù)量以及聚合請(qǐng)求在該時(shí)間單位中占多長(zhǎng)時(shí)間有關(guān)的指標(biāo)。

在OpenTelemetry中,所有生成指標(biāo)的應(yīng)用程序都可以通過(guò)遙測(cè)(傳輸)層將它們發(fā)送到一個(gè)通用收集點(diǎn),這有助于對(duì)齊和關(guān)聯(lián)來(lái)自生成數(shù)據(jù)的松散耦合服務(wù)的數(shù)據(jù)。這包括與底層基礎(chǔ)設(shè)施保持一致。簡(jiǎn)而言之,有了OpenTelemetry,獲取和發(fā)送高度詳細(xì)的指標(biāo)變得更輕松了。

OpenTelemetry還有助于解決時(shí)間戳漂移和傾斜問(wèn)題,這個(gè)問(wèn)題使事件關(guān)聯(lián)起來(lái)變得很難。OpenTelemetry為每個(gè)請(qǐng)求分配一個(gè)跟蹤編號(hào)(TraceId),但數(shù)據(jù)仍然可能受到漂移和傾斜的影響,這個(gè)問(wèn)題常常出現(xiàn)在云原生架構(gòu)中。漂移和傾斜可能是持續(xù)時(shí)間不一的報(bào)告路徑或各個(gè)主機(jī)上時(shí)鐘之間缺乏緊密同步造成的。通過(guò)在流量處理期間跟蹤組件之間的通信,分布式跟蹤允許OpenTelemetry測(cè)量單個(gè)跨度(跟蹤的工作單位和基本模塊),不需要對(duì)相關(guān)應(yīng)用程序進(jìn)行深入的檢測(cè)。

結(jié)合這三種信號(hào)(遙測(cè)的類別),我們就可以糾正問(wèn)題,讓應(yīng)用程序恢復(fù)到生產(chǎn)級(jí)質(zhì)量:

  • 指標(biāo)——“存在問(wèn)題?”
  • 跟蹤——“問(wèn)題在哪里?”
  • 日志——“出了什么問(wèn)題?”

這時(shí)候我們又回到了可觀測(cè)性2.0。能夠獲得跟蹤并立即查看哪些指標(biāo)對(duì)應(yīng)哪些跟蹤為我們賦予了強(qiáng)大的功能。比如說(shuō),當(dāng)指標(biāo)表明有問(wèn)題時(shí),分布式跟蹤讓您可以一路追溯到導(dǎo)致初始問(wèn)題的那個(gè)特定請(qǐng)求,并跟蹤請(qǐng)求實(shí)現(xiàn)的每個(gè)步驟的進(jìn)度。由于我們的跟蹤是由跨度按照它們發(fā)生的順序組成的,所以我們可以在請(qǐng)求旅程的每一步跟蹤請(qǐng)求。了解發(fā)生了什么,以什么順序發(fā)生(從初始事件到表明的問(wèn)題,直到最終結(jié)果),讓我們能夠聚焦于應(yīng)用程序中具體的部位,集中注意力。

盡管聽起來(lái)很簡(jiǎn)單,OpenTelemetry的分布式跟蹤方面可以讓我們深入了解用戶所遇到的一切,作為請(qǐng)求成功和執(zhí)行時(shí)間的代理。作為用戶,我關(guān)心我的請(qǐng)求。作為站點(diǎn)可靠性工程師(SRE),我關(guān)心聚合的請(qǐng)求。作為應(yīng)用程序所有者,我還關(guān)心尾部延遲:在某些條件下,對(duì)于少量重要的用戶群體而言,尾部延遲可能演變成糟糕的性能。OpenTelemetry為我提供了這三個(gè)功能,以及從聚合內(nèi)容中提煉細(xì)節(jié)的能力,因?yàn)樗旧碇荚谧屗袘?yīng)用程序上的所有數(shù)據(jù)能夠?yàn)橛脩羲谩?/p>

借助AI和ML的應(yīng)用程序智能

來(lái)自O(shè)penTelemetry的這種新數(shù)據(jù)流還讓我們?cè)陂_發(fā)和操作響應(yīng)方面可以實(shí)現(xiàn)自適應(yīng)和自動(dòng)化。有了所有這些積累的數(shù)據(jù),我們可以使應(yīng)用程序更加智能和自適應(yīng)。而自適應(yīng)應(yīng)用程序恰如其名:自動(dòng)智能地調(diào)整其行為以應(yīng)對(duì)環(huán)境變化的應(yīng)用程序。

通過(guò)實(shí)現(xiàn)遙測(cè)數(shù)據(jù)的可訪問(wèn)性和標(biāo)準(zhǔn)化,OpenTelemetry使通向自適應(yīng)應(yīng)用程序的旅程變得更順坦。隨著不同類型的產(chǎn)品開始輸出類似的指標(biāo),如果利用OpenTelemetry中已確立的語(yǔ)義約定,我們更容易在請(qǐng)求處理期間將它們的操作關(guān)聯(lián)起來(lái),并將這些信息饋送給人工智能(AI)和機(jī)器學(xué)習(xí)(ML)算法,從而使應(yīng)用程序和基礎(chǔ)設(shè)施能夠動(dòng)態(tài)適應(yīng)。

總結(jié)

對(duì)OpenTelemetry的用戶和使用它作為遙測(cè)通道的應(yīng)用程序來(lái)說(shuō),規(guī)范遙測(cè)是明顯的舉措??梢詮亩鄠€(gè)數(shù)據(jù)源收集數(shù)據(jù),并轉(zhuǎn)發(fā)給任何兼容的聚合和分析工具。此外,OpenTelemetry Collector使供應(yīng)商不必自行實(shí)施收集器。相反,它們可以致力于改善代碼,以執(zhí)行有意義的分析,并采取明智的操作,可以構(gòu)建新的工具來(lái)幫助理解這個(gè)復(fù)雜而混亂的新世界。實(shí)際上,OpenTelemetry Collector(基于開源創(chuàng)新)在讓這項(xiàng)技術(shù)順應(yīng)未來(lái)的同時(shí),能夠處理幾乎所有的現(xiàn)有格式。

OpenTelemetry專注于我們理解應(yīng)用程序所需的主要數(shù)據(jù)類別,使我們的應(yīng)用程序可以為復(fù)雜的現(xiàn)代應(yīng)用程序環(huán)境的性能和問(wèn)題提供更深入的見解。通過(guò)關(guān)聯(lián)我們的數(shù)據(jù)、遵守語(yǔ)義和標(biāo)準(zhǔn)慣例,OpenTelemetry使通向現(xiàn)代應(yīng)用程序的旅程變得更順坦。

隨著OpenTelemetry項(xiàng)目不斷成熟,采用率不斷提高,它顯然是我們加深了解的方法。我們還希望OpenTelemetry有助于運(yùn)用AI和ML技術(shù)來(lái)解決復(fù)雜問(wèn)題、實(shí)現(xiàn)自動(dòng)化補(bǔ)救,并表明如何使云原生應(yīng)用程序變得更具適應(yīng)性、性能更好。

原文標(biāo)題:??Why OpenTelemetry Is Taking Cloud Native to New Heights??,作者:Dave McAllister?

責(zé)任編輯:華軒 來(lái)源: 51CTO
相關(guān)推薦

2023-12-25 16:36:39

GenAI人工智能代碼生成

2010-09-06 10:37:16

2021-10-29 10:12:34

云原生勒索軟件網(wǎng)絡(luò)攻擊

2019-09-30 07:15:26

公共部門云計(jì)算公共云

2021-04-14 14:07:36

云計(jì)算云原生SaaS

2022-06-09 17:37:27

數(shù)據(jù)湖云原生

2022-08-31 15:40:13

云原生數(shù)據(jù)

2021-03-30 22:34:35

云計(jì)算云原生SaaS

2019-08-27 16:48:07

云原生云計(jì)算微服務(wù)

2020-02-25 17:04:05

數(shù)據(jù)庫(kù)云原生分布式

2021-06-04 09:41:18

黑客網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊

2017-09-04 16:43:08

Linux云原生環(huán)境開源

2022-07-11 05:34:19

云原生應(yīng)用程序

2019-09-26 18:30:03

2023-05-23 07:40:20

微軟Windows

2020-09-24 09:25:36

2022-04-06 10:40:32

云原生容器微服務(wù)

2024-01-24 15:02:01

云計(jì)算邊緣計(jì)算

2020-04-16 15:00:43

LinuxUbuntuDDEUbuntu

2023-05-22 08:09:01

Windows 11微軟
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)