新聞中心
Kubernetes 可觀測性:利用四個開源工具
作者:運維開發(fā)故事 2022-08-05 14:26:50
云計算
云原生 你可能已經(jīng)知道Kubernetes是領(lǐng)先的容器編排系統(tǒng)。根據(jù)最新的CNCF 研究,可能已經(jīng)將它用于生產(chǎn)工作負(fù)載或在未來一年考慮使用它。

公司主營業(yè)務(wù):成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出威遠免費做網(wǎng)站回饋大家。
2021 年的研究發(fā)現(xiàn),驚人的 96% 的受訪者正在使用 Kubernetes 或計劃在不久的將來使用它——而 69% 的受訪者目前正在生產(chǎn)中使用 Kubernetes。Kubernetes 為大型組織和小型組織提供了許多好處:它提高了開發(fā)人員的生產(chǎn)力、降低了成本、提高了效率,并最終為最終用戶帶來了更好的體驗。
但是,雖然Kubernetes 有很多優(yōu)勢,但它也帶來了一些挑戰(zhàn)。對于在 K8s 上運行工作負(fù)載的團隊來說,實施全面的監(jiān)控堆棧是一個重要的早期步驟。在這篇文章中,我們將探討四種開源工具和技術(shù),你可以使用它們來減少停機時間、更有效地進行故障排除,并全面了解集群內(nèi)發(fā)生的一切。
開源工具和技術(shù)
云原生計算基金會 (CNCF) 已經(jīng)孵化和畢業(yè)了許多用于監(jiān)控和可觀察性的驚人技術(shù)和工具。其中四種工具和技術(shù)特別有用,可以被各種規(guī)模的組織利用。讓我們跳進去。
指標(biāo)和警報
Prometheus于 2016 年 5 月 9 日被 CNCF 接受,是一個功能強大且 100% 開源的工具和時間序列數(shù)據(jù)庫。借助 Prometheus,工程團隊能夠大規(guī)模收集指標(biāo)并配置警報。Prometheus 被新生的初創(chuàng)公司以及世界上一些最大的公司使用,例如 Digital Ocean、Ericsson 和 Docker。借助 Prometheus,團隊能夠使用PromQL編寫查詢并創(chuàng)建臨時表、圖表和警報。借助 Alertmanager,團隊能夠使用預(yù)配置和可自定義的警報來識別發(fā)生的重要問題。使用警報規(guī)則,用戶可以使用 Prometheus 表達式語言定義警報條件,然后將通知發(fā)送到外部服務(wù)。
Prometheus 有一個內(nèi)置的可視化工具集,但通常與另一個可視化工具配對,例如Grafana或ContainIQ。將 Prometheus 連接到可視化工具很容易;Grafana 中有大量可用的預(yù)構(gòu)建儀表板。由于 Prometheus 有許多集成和現(xiàn)有的導(dǎo)出器,因此使用官方導(dǎo)出器以及外部維護的選項將第三方指標(biāo)橋接到 Prometheus 非常容易。
Prometheus 是 CNCF 的畢業(yè)項目。在GitHub 上,Prometheus 擁有超過 42,000 顆星和來自 700 多名貢獻者的貢獻。
鏈路追蹤
Jaeger于 2017 年 9 月 13 日被 CNCF 接受,是一個分布式追蹤的開源平臺。使用 Jaeger,工程師可以通過分布式事務(wù)監(jiān)控或跟蹤進行監(jiān)控和故障排除。與 Prometheus 一樣,Jaeger 被大大小小的團隊使用,并且被設(shè)計為大規(guī)模使用。像 Uber 這樣的公司使用 Jaeger 每天處理數(shù)十億個 span。
Jaeger 對于分析性能和延遲以及進行優(yōu)化特別有用。使用 Jaeger,執(zhí)行根本原因分析和研究服務(wù)依賴關(guān)系要容易得多。例如,Jaeger 可用于識別特定微服務(wù)的延遲峰值,包括影響最終用戶體驗的那些。Prometheus 和 Jaeger經(jīng)常一起使用:Prometheus 提供了一個工具集來檢測你的基礎(chǔ)設(shè)施中的問題,而 Jaeger 通過深入研究各個請求來幫助你解決這些問題。
Jaeger 有一個名為 Jaeger Web UI 的原生 UI,它是用 Javascript 實現(xiàn)的。Jaeger 和 Kubernetes入門是一個簡單的過程。Jaeger Operator 可以安裝在 Kubernetes 集群上,并且可以為特定命名空間或整個集群啟用。Jaeger 是 CNCF 的畢業(yè)項目。在 GitHub 上,Jaeger 擁有超過 15,000 顆星和來自 200 多名貢獻者的貢獻。
標(biāo)準(zhǔn)化指標(biāo)、日志、跟蹤
OpenTelemetry于 2019 年 5 月 17 日被 CNCF 接受,是一組工具、API 和 SDK,用于檢測、生成、收集和導(dǎo)出遙測數(shù)據(jù)。通過使用 OpenTelemetry,工程師能夠收集指標(biāo)、日志和跟蹤,因此他們可以更深入地挖掘其基礎(chǔ)設(shè)施和應(yīng)用程序的性能。
OpenTelemetry 是開源的、供應(yīng)商中立的,并且在可觀察性方面受到許多大公司以及云提供商本身的支持。微服務(wù)架構(gòu)有很多好處,但是當(dāng)它們被大規(guī)模部署時,工程團隊可能會更難以查看服務(wù)的執(zhí)行情況以及它們?nèi)绾斡绊懫渌?wù)。指標(biāo)、日志和跟蹤可以讓團隊全面了解正在發(fā)生的事情,但收集這些數(shù)據(jù)需要運行、操作和維護多個代理/收集器,這可能是一個挑戰(zhàn)。
OpenTelemetry 通過標(biāo)準(zhǔn)化將數(shù)據(jù)發(fā)送到可觀察性后端的格式來解決這個問題,無論它是開源工具還是付費解決方案。它消除了供應(yīng)商鎖定的風(fēng)險,因為團隊現(xiàn)在能夠使用標(biāo)準(zhǔn)格式輕松地在后端之間切換。
OpenTelemetry 是一個 CNCF 畢業(yè)項目,位于GitHub 上。
指標(biāo)的多集群和長期存儲
Thanos于 2019 年 7 月 20 日被 CNCF 接受,它是一個開源項目,使工程師能夠通過高度可用的長期存儲選項擴展其 Prometheus 設(shè)置。Thanos 可以使用與 Prometheus 服務(wù)器在同一主機或同一 pod 上運行的sidecar輕松與 Prometheus 集成。與 Prometheus 一樣,Thanos 并沒有特別依賴于 Kubernetes,但這是流行的用例。Thanos 旨在以多種重要方式改進 Prometheus。首先,借助 Thanos,工程師可以通過允許跨多個服務(wù)和集群進行查詢來擴展他們的 Prometheus 設(shè)置。對于跨多個集群運行 Kubernetes 工作負(fù)載的公司來說,這是一種改進的方法,可以通過集中視圖幫助節(jié)省時間。其次,借助 Thanos,團隊能夠利用許多長期存儲選項,例如 S3。與 Prometheus 一樣,Thanos 可以與 Grafana 等可視化工具一起使用,并且它原生支持 Prometheus 查詢 API。Thanos 是一個 CNCF 孵化項目。在GitHub 上,Thanos 擁有超過 10,000 顆星和來自 400 多名貢獻者的貢獻。
其他注意事項
以下是一些需要考慮的其他最佳實踐。
- 緩慢擴展:雖然這些工具有很多好處,但團隊在實施過程中應(yīng)該深思熟慮。在某些情況下,在整個基礎(chǔ)架構(gòu)中使用這些工具之前,在有限的集合中或在單個集群中或在暫存環(huán)境中測試這些工具中的每一個可能是有意義的。
- 考慮使用托管產(chǎn)品:今天,許多云提供商都提供托管解決方案。例如,亞馬遜和谷歌云都管理過 Prometheus 產(chǎn)品。
- 鼓勵團隊合作:整個團隊都可以了解如何使用這些工具。擁抱學(xué)習(xí),并為你的工程團隊提供他們需要的時間和資源,以便他們熟悉開源工具的世界。
- 警惕告警疲勞:告警疲勞是組織規(guī)模擴大時的真正挑戰(zhàn)。努力設(shè)置可操作的警報,并考慮定期重新調(diào)整警報,以確保它們創(chuàng)造價值而不是浪費時間。
總結(jié)
在本文中,我們介紹了四個工具集,它們可以增強和改進對在 Kubernetes 上運行工作負(fù)載的工程師的監(jiān)控。
Prometheus 是許多組織的首選時間序列數(shù)據(jù)庫,當(dāng)與 Thanos 一起使用時,它是一個長期的解決方案。
Jaeger 提供了修復(fù)你在基礎(chǔ)架構(gòu)中檢測到的問題所需的額外上下文。OpenTelemetry 已經(jīng)標(biāo)準(zhǔn)化了指標(biāo)、日志和跟蹤的格式和收集,讓團隊高枕無憂并保持動態(tài)。
這些工具共同提供了有效排除故障所需的指標(biāo)、日志和跟蹤,并確保你的最終用戶擁有出色的體驗。
網(wǎng)站名稱:Kubernetes可觀測性:利用四個開源工具
分享鏈接:http://www.5511xx.com/article/copdjjg.html


咨詢
建站咨詢
