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

如何在部署中實施實時監(jiān)控

譯文 精選
運維
本文將和您討論Datadog實時監(jiān)控如何被集成到基于Ansible的部署中,以及在整體部署過程中,如何通過實時監(jiān)控以大幅降低事故的發(fā)生。

譯者 | 陳峻

審核 | 重樓

不可否認,在當今的技術(shù)環(huán)境中,應用系統(tǒng)已變得越來越繁雜。為了及時獲悉各種軟件應用的健康和服務狀態(tài),我們需要通過關(guān)注基本的應用指標,來確保應用的所有組件在部署的整個過程中,按照預期運行。

不過,對于項目團隊而言,在部署過程中實施實時的監(jiān)控,似乎已成為了極難實現(xiàn)的運營“必備品”。對此,Datadog正好一顯身手。它是一個業(yè)界領(lǐng)先的監(jiān)控和分析平臺,可以提供從前端應用到底層硬件等基礎(chǔ)架構(gòu)的每個部分的可見性。與之配套的是大家較為熟悉的Ansible。這是一款在部署和配置管理方面尤為強大的自動化工具。

在本文中,我將和您討論Datadog實時監(jiān)控會被如何集成到基于Ansible的部署中,以及在整體部署過程中,如何通過實時監(jiān)控以大幅降低事故的發(fā)生。當然,其相關(guān)概念與方法,也可以被應用到類似的監(jiān)控和部署工具集中。

為何要在部署中集成實時監(jiān)控?

在不斷迭代與發(fā)展的DevOps領(lǐng)域,開發(fā)與運營之間的界限正變得越來越模糊,兩者直接的協(xié)作正變得越來越緊密。正是這種整合,促進了團隊成員越來越需要在應用系統(tǒng)的整個生命周期內(nèi)進行持續(xù)監(jiān)控,而不僅僅是在部署之后才監(jiān)控。

那么,如果將Datadog與您的現(xiàn)有部署流程、及部署腳本相集成,到底能夠帶來哪些優(yōu)勢呢?我為您總結(jié)了如下三項基本要素:

  1. 即時反饋:在部署過程中實施實時監(jiān)控的主要好處之一是,它能夠創(chuàng)建即時的反饋回路。特別是在滾動部署的過程中,當一臺或多臺主機部署出現(xiàn)問題時,實時監(jiān)控數(shù)據(jù)可以立即被用于做出暫?;騿硬渴鸹貪L的決策。這種快速回撤往往就決定了是會發(fā)生較小的故障,還是大型災難。尤其是對于某些海量用戶級別的應用而言,即使1分鐘的停機時間,也可能導致大量的錯誤和損失。
  2. 資源和性能監(jiān)控:在部署新功能或變更現(xiàn)有服務時,我們往往會在無形中引入涉及到性能、資源利用率、以及相關(guān)成本的風險。而通過實時監(jiān)控,團隊可以立即獲悉變更給系統(tǒng)性能和資源利用率造成的影響,進而采取任何必要的即時補救措施,以確保用戶繼續(xù)獲得最佳的使用體驗。
  3. 主動解決問題:通過將Datadog直接集成到部署流程中,而不是在最終用戶受到影響后才對問題做出反應,項目團隊可以更主動的方式解決問題,并防止?jié)撛诘膯栴}演變成重大故障。這種積極主動的方法,不但可以增加系統(tǒng)的整體正常運行時間,并提高部署發(fā)布的穩(wěn)定性,而且能夠保障用戶持續(xù)的滿意度。

在部署中實施實時監(jiān)控的過程

一旦部署工具被觸發(fā),底層的腳本就會開始執(zhí)行。對此,我們需要根據(jù)應用的各項實際需求,預先確定執(zhí)行監(jiān)控檢查的理想位置,并發(fā)送一個或多個Datadog API請求,去查詢相關(guān)指標、監(jiān)控過程數(shù)據(jù)、或其他有助于我們確定部署和整個應用健康狀況的信息。

據(jù)此,我們需要在腳本中添加邏輯,以便解析來自DatadogAPI響應,并做出是否轉(zhuǎn)入下一組部署的適當決策。例如,如果我們發(fā)現(xiàn)錯誤過多、且監(jiān)控頻繁報障的話,那么我們就應該相應地對這些收集到的信息予以解析,以決定是否中止部署,不再繼續(xù)下去,從而減少潛在的生產(chǎn)事故的影響半徑。下圖展示了這個典型的工作流程。當然,具體各個階段可以根據(jù)您的應用的實際需求進行調(diào)整。

具有集成監(jiān)控的部署流具有集成監(jiān)控的部署流

利用Datadog及其API接口進行實時查詢

除了基礎(chǔ)監(jiān)控功能,Datadog還提供了另一個增強DevOps團隊能力的關(guān)鍵優(yōu)勢:其強大的API接口。它不僅是一項功能,更是一種變革性的工具。借助以編程方式查詢指標、以及各項跟蹤和日志等能力,項目團隊可以動態(tài)地將Datadog更深入地集成到其運營之中。據(jù)此,他們可以進行定制化的監(jiān)控配置、自動警報設(shè)置、以及即時提取相關(guān)數(shù)據(jù)。而且,這種實時查詢不僅僅是為了獲取數(shù)據(jù),更是為了給部署決策提供相關(guān)信息,完善應用性能,進而創(chuàng)建一個更具協(xié)同性的技術(shù)生態(tài)環(huán)境。通過利用DatadogAPI,監(jiān)控不再是一種被動的觀察,而是優(yōu)化部署工作流程的主動驅(qū)動力。

同時,作為一種監(jiān)控工具,Datadog可以密切關(guān)注目標系統(tǒng)的各項技術(shù)設(shè)置,檢查其性能和錯誤狀況。由于能夠提供及時的反饋,因此系統(tǒng)一旦出現(xiàn)問題,Datadog就會立即向運營團隊發(fā)出警報,以協(xié)助他們更快地解決問題,保持一切順利運行。在如下的實施方案中,我們通過獲取查詢監(jiān)控器的數(shù)據(jù),以判定是否有任何被觸發(fā)的警報。此外,我們還會查詢各項指標和其他類似的數(shù)據(jù),以協(xié)助確定應用的健康狀況。

下圖展示便是一個從DatadogAPI參考表中,獲取特定監(jiān)視器詳細信息的示例。

對Datadog API端點的Curl請求示例對Datadog API端點的Curl請求示例

Ansible自動化部署為例

當我們使用Datadog等工具深入研究復雜的監(jiān)控時,了解支撐目標應用的部署機制是至關(guān)重要的。在此,我們將以Ansible為例。如前所述,它是一款以簡單性和強大功能為顯著優(yōu)勢的開源自動化工具。

通常,Ansible會使用聲明式語言(Declarative Language)來定義系統(tǒng)配置,使其既易于人類閱讀,又能夠直接與各種平臺和工具相集成。在部署方面,Ansible可以確保一致性和可重復的應用部署,從而降低與手動流程相關(guān)的各類風險。如果與Datadog等實時監(jiān)控解決方案配合使用,Ansible不僅可以自動化部署應用,而且能夠確保它們在部署之后以最佳的狀態(tài)運行。可以說,這種自動化部署與實時監(jiān)控之間的協(xié)同,構(gòu)建出了一個強大的、反應靈敏的、容錯性高的部署生態(tài)系統(tǒng)。

下圖的代碼片段展示了在Ansible中,Datadog監(jiān)控器如何實現(xiàn)以“deployment_priority: blocker”為標簽,進行查詢的示例。

在Ansible中實現(xiàn)的監(jiān)控查詢在Ansible中實現(xiàn)的監(jiān)控查詢

在此基礎(chǔ)上,我們需要解析從Datadog返回的所有此類監(jiān)控的狀態(tài),以決定是終止監(jiān)控,還是繼續(xù)到下一臺主機或下一組部署。

迭代監(jiān)視器的解析和決策的制定迭代監(jiān)視器的解析和決策的制定

至此,我們已完成了在部署過程中實施實時監(jiān)控,并具備了Datadog的監(jiān)控信息予以解析,進而在部署過程中及時做出明智的決策的能力。

小結(jié)

在上文的探討中,我們既利用了強大的部署工具Ansible所提供的一致、可靠的部署的能力;又結(jié)合了Datadog等平臺的細粒度實時監(jiān)控能力,提高了項目部署的運營效率和可靠性。隨著技術(shù)領(lǐng)域的不斷發(fā)展,AnsibleDatadog等工具充分證明了集成式智能DevOps的實踐潛力。

無論您是經(jīng)驗豐富的DevOps專業(yè)人士,還是剛剛涉足本領(lǐng)域的“小白”,了解并利用這種協(xié)同,都將有利于打造一個面向未來、具有高自愈能力的技術(shù)生態(tài)系統(tǒng)。

譯者介紹

陳峻(Julian Chen),51CTO社區(qū)編輯,具有十多年的IT項目實施經(jīng)驗,善于對內(nèi)外部資源與風險實施管控,專注傳播網(wǎng)絡與信息安全知識與經(jīng)驗。

原文標題:Implementing Real-Time Datadog Monitoring in Deployments,作者:Prithvish Kovelamudi

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

2021-08-30 13:08:54

Linux實時監(jiān)控日志文件

2023-07-10 11:14:28

2012-09-20 10:01:50

SOAIaaSSaaS

2010-06-01 10:42:59

動態(tài)VDI

2023-10-19 11:27:22

Linux記賬工具

2022-08-20 07:39:35

Linux日志文件

2024-01-09 13:34:35

2017-04-27 11:01:00

云計算

2018-05-04 09:32:32

Linux快速監(jiān)控rwho

2024-12-10 13:17:41

2019-07-30 10:33:01

2023-09-06 08:46:47

2024-11-01 07:00:00

人臉識別Python機器學習

2022-04-01 07:35:45

IDEAJavaWeb 項目

2009-01-13 09:32:00

網(wǎng)吧監(jiān)控

2024-02-21 12:18:15

2022-05-18 07:09:35

C#語言架構(gòu)

2019-03-28 08:00:00

Linux磁盤IO監(jiān)控存儲設(shè)備

2020-06-04 12:02:47

物聯(lián)網(wǎng)業(yè)務數(shù)字孿生IOT

2022-05-05 11:06:12

物聯(lián)網(wǎng)5G人工智能
點贊
收藏

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