David O'Brien (Xirus):指標! 指標! 指標! 第1部分

David O'Brien 最近成立了自己的公司 Xirus (https://xirus.com.au),專注於 Microsoft Azure Stack 雲端產品。 它們旨在在資料中心、邊緣位置、遠端辦公室和雲端中一致地建置和運行混合應用程式。

David 對個人和公司進行有關 Microsoft Azure 和 Azure DevOps(以前稱為 VSTS)的所有方面的培訓,並且仍然進行實踐諮詢和基礎設施編碼。 他已連續 5 年獲得 Microsoft MVP(微軟最有價值專家)獎,最近又榮獲 Azure MVP 獎。 身為墨爾本 Microsoft 雲端和資料中心聚會的共同組織者,O'Brien 定期在國際會議上發表演講,將他對環遊世界的興趣與與社區分享 IT 故事的熱情結合在一起。 David 的部落格位於 大衛奧布萊恩網,他還在 Pluralsight 上發布了他的線上培訓。

該演講討論了指標對於了解環境中發生的情況以及應用程式的執行情況的重要性。 Microsoft Azure 擁有一種強大而簡單的方法來顯示各種工作負載的指標,本講座將說明如何使用它們。

週日凌晨 3 點,當你正在睡覺時,你突然被一條短信吵醒:“超臨界應用程序不再響應。” 這是怎麼回事? 「煞車」在哪裡、原因是什麼? 在本次演講中,您將了解 Microsoft Azure 為客戶提供的用於收集日誌的服務,特別是來自雲端工作負載的指標。 David 將告訴您在雲端平台上工作時應該對哪些指標感興趣以及如何取得這些指標。 您將了解開源工具和儀表板構建,並最終獲得足夠的知識來創建自己的儀表板。

如果您在凌晨 3 點再次被關鍵應用程式崩潰的消息吵醒,您可以快速找出原因。

下午好,今天我們來談談指標。 我叫 David O'Brien,是澳洲一家小型顧問公司 Xirus 的共同創辦人和所有者。 再次感謝您來到這裡與我共度時光。 那我們為什麼在這裡? 談論指標,或者更確切地說,我會告訴你它們,在做任何事情之前,讓我們先從理論開始。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

我將告訴您什麼是指標、可以用它們做什麼、需要注意什麼、如何在 Azure 中收集和啟用指標收集以及什麼是指標視覺化。 我將向您展示這些東西在 Microsoft 雲端中的樣子以及如何使用此雲端。

在開始之前,我將請 Microsoft Azure 的使用者舉手。 誰使用 AWS? 我看到很少。 谷歌呢? 阿里雲? 一個人! 偉大的。 那什麼是指標呢? 美國國家標準與技術研究所的官方定義是:“度量是一種測量標準,描述測量屬性的條件和規則,並用於理解測量結果。” 這是什麼意思?

我們以更改虛擬機器可用磁碟空間的指標為例。 例如,我們給出數字90,這個數字表示百分比,即可用磁碟空間量為90%。 我注意到閱讀度量定義的描述並不是很有趣,它需要 40 頁的 pdf 格式。

然而,該指標並沒有說明測量結果是如何獲得的,它僅顯示了這個結果。 我們用指標做什麼?

首先,我們測量某物的價值,然後使用測量結果。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

例如,我們找到了可用磁碟空間的大小,現在我們可以使用它,使用該記憶體等。 一旦我們收到度量結果,我們必須對其進行解釋。 例如,該指標傳回的結果為 90。我們需要知道這個數字的意義:可用空間量或已使用磁碟空間量(以百分比或 GB 為單位)、網路延遲等於 90 毫秒等等,即,我們需要解釋一下度量值的含義。 為了使指標有意義,在解釋單一指標值後,我們需要確保收集多個值。 這非常重要,因為許多人沒有意識到收集指標的必要性。 Microsoft 讓收集指標變得非常容易,但您需要確保收集這些指標。 這些指標僅儲存 41 天,並在第 42 天消失。 因此,根據您的外部或內部設備的屬性,您應該注意如何保存超過 41 天的指標 - 以日誌、日誌等形式。 因此,收集後,您應該將它們放在某個位置,以便您可以在必要時提取指標結果變化的所有統計資料。 一旦你把它們放在那裡,你就可以開始有效地使用它們。

只有在獲得指標、解釋並收集它們之後,您才能建立 SLA - 服務等級協定。 該 SLA 對於您的客戶可能不太重要;對於您的同事、經理、維護系統並關心其功能的人員來說更重要。 此指標可以衡量工單數量——例如,您每天收到 5 個工單,在這種情況下它顯示了對使用者請求的回應速度以及故障排除的速度。 指標不應該只是說你的網站載入時間為 20 毫秒或回應速度為 20 毫秒,指標不只是一個技術指標。

因此,我們對話的任務是向您詳細介紹指標的本質。 該指標的作用是讓您透過查看它可以全面了解流程。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

一旦我們有了指標,我們就可以 99% 保證系統正在運作,因為它不僅僅是查看表明系統正在工作的日誌檔案。 99% 的正常運作時間保證意味著,例如,99% 的時間 API 以 30 毫秒的正常速度回應。 這正是您的使用者、同事和經理感興趣的地方。 我們的許多客戶都會監控網頁伺服器日誌,但他們沒有註意到其中有任何錯誤,並認為一切都很好。 例如,他們看到 200 Mb/s 的網路速度並想著:“好吧,一切都很棒!” 但要達到這200,使用者需要30毫秒的反應速度,而這正是沒有測量、沒有收集在日誌檔案中的指標。 同時,用戶對網站載入速度非常緩慢感到驚訝,因為沒有必要的指標,他們不知道這種行為的原因。

但由於我們有 100% 正常運行時間的 SLA,客戶開始抱怨,因為網站實際上很難使用。 因此,要建立客觀的 SLA,有必要查看由收集的指標所建立的流程的全貌。 這是我與一些提供者持續存在的問題,他們在創建 SLA 時不知道「正常運行時間」一詞的含義,並且在大多數情況下不會向客戶解釋其 API 的工作原理。

如果您建立了一項服務,例如為第三方建立的 API,您應該了解結果指標 39,5 的含義 - 回應、成功回應、以 20 毫秒速度或 5 毫秒速度回應。 您可以根據自己的 SLA 和指標調整他們的 SLA。

一旦你弄清楚了這一切,你就可以開始創建一個令人驚嘆的儀表板了。 告訴我,有人已經使用過 Grafana 互動式視覺化應用程式嗎? 偉大的! 我是這個開源的忠實粉絲,因為這個東西是免費且易於使用的。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

如果您還沒有使用過 Grafana,我會告訴您如何使用它。 80、90後可能還記得CareBears吧? 我不知道這些熊在俄羅斯有多受歡迎,但就指標而言,我們應該是同樣的「愛心熊」。 正如我所說,您需要全面了解整個系統的工作原理,而不僅僅是您的 API、網站或虛擬機器中運行的服務。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

您必須組織那些最全面反映整個系統運作情況的指標的集合。 你們中的大多數人都是軟體開發人員,因此你們的生活在不斷變化,適應新的產品需求,就像你們關心編碼流程一樣,你們應該關心指標。 您需要知道該指標與您編寫的每一行程式碼有何關係。 例如,下週您將開始一項新的行銷活動,並預計會有大量用戶造訪您的網站。 要分析此事件,您將需要指標,並且可能需要整個儀表板來追蹤這些人的活動。 您將需要指標來了解您的行銷活動有多成功以及其實際效果如何。 例如,他們將幫助您開發有效的 CRM(客戶關係管理系統)。

那麼讓我們開始使用我們的 Azure 雲端服務。 尋找和組織指標收集非常容易,因為它具有 Azure Monitor。 此監視器集中您的系統組態管理。 預設情況下,要套用於系統的每個 Azure 元素都啟用了許多指標。 這是一個免費的應用程序,開箱即用,不需要任何初步設置;您不需要在系統中寫入或“擰緊”任何內容。 我們將透過查看以下演示來驗證這一點。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

此外,還可以將這些指標傳送到第三方應用程序,例如Splunk日誌儲存和分析系統、基於雲端的日誌管理應用程式SumoLogic、ELK日誌處理工具和IBM Radar。 確實,根據您使用的資源(虛擬機器、網路服務、Azure SQL 資料庫)存在細微的差異,也就是說,指標的使用根據工作環境的功能而有所不同。 我不會說這些差異很嚴重,但不幸的是,它們仍然存在,應該考慮到這一點。 可以透過多種方式啟用和傳送指標:透過入口網站、CLI/Power Shell 或使用 ARM 範本。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

在開始第一個演示之前,我將回答您可能提出的任何問題。 如果沒有問題,我們就開始吧。 此畫面顯示 Azure Monitor 頁面的外觀。 你們誰能說這個顯示器不工作嗎?

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

現在一切都好了,你可以看到監控服務是什麼樣子了。 我可以說,對於日常工作來說,這是一個出色且非常簡單的工具。 它可用於監控應用程式、網路和基礎設施。 最近,監控介面得到了改進,以前的服務分佈在不同的地方,現在所有服務的資訊都集中在監控的主頁上。

指標表是 HomeMonitorMetrics 路徑上的一個選項卡,您可以前往該選項卡以查看所有可用指標並選擇您需要的指標。 但如果您需要啟用指標收集,則需要使用 HomeMonitorDiagnostic 設定目錄路徑並選取啟用/停用指標核取方塊。 預設情況下,幾乎所有指標均已啟用,但如果您需要啟用其他功能,則需要將診斷狀態從「停用」變更為「啟用」。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

為此,請按一下所選指標的行,然後在開啟的標籤上啟用診斷模式。 如果要分析所選指標,則按一下「開啟診斷」連結後,需要在出現的視窗中選取「傳送至 Log Analytics」複選框。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

Log Analytics 與 Splunk 有點相似,但成本較低。 此服務可讓您收集所有指標、日誌和您需要的所有其他內容,並將它們放置在 Log Analytics 工作區中。 該服務使用特殊的 KQL 查詢處理語言 - Kusto Quarry Language,我們將在下一個演示中看看它的工作。 現在,我要指出的是,在它的幫助下,您可以建立有關指標、日誌、術語、趨勢、模式等的查詢。 並建立儀表板。

因此,我們選取 Send to Log Analytics 複選框和 LOG 面板複選框:DataPlaneRequests、MongoRequests 和 QueryRuntimeStatistics,以及下方 METRIC 面板上的請求核取方塊。 然後我們指定一個名稱並儲存設定。 在命令行上,這代表兩行程式碼。 順便說一句,從這個意義上說,Azure Cloud shell 類似於 Google,它也允許您在 Web 瀏覽器中使用命令列。 AWS 沒有這樣的東西,所以就這個意義上來說 Azure 比較方便。

例如,我可以透過 Web 介面執行演示,而無需在筆記型電腦上使用任何程式碼。 為此,我必須使用我的 Azure 帳戶進行身份驗證。 然後你可以使用,例如terrafone,如果你已經使用它,等待連接到服務並獲得微軟預設使用的Linux工作環境。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

接下來,我使用內建於 Azure Cloud Shell 中的 Bash。 一個非常有用的東西就是瀏覽器內建的IDE,是VS Code的輕量級版本。 接下來,我可以進入我的錯誤指標模板,對其進行編輯並自訂它以滿足我的需求。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

在此範本中設定指標收集後,您可以使用它為整個基礎架構建立指標。 一旦我們應用了指標、收集並儲存了它們,我們就需要將它們視覺化。

David O'Brien (Xirus):指標! 指標! 指標! 第1部分

Azure Monitor 僅處理指標,不提供系統運作狀況的整體情況。 您可能有許多其他應用程式在 Azure 環境之外執行。 因此,如果您需要監視所有進程,將所有收集到的指標視覺化在一個位置,那麼 Azure Monitor 不適合此目的。

為了解決這個問題,微軟提供了 Power BI 工具,這是一款用於業務分析的綜合軟體,包括各種數據的視覺化。 這是一個相當昂貴的產品,其成本取決於您需要的功能集。 預設情況下,它提供 48 種要處理的數據,並連結到 Azure SQL 資料倉儲、Azure Data Lake Storage、Azure 機器學習服務和 Azure Databricks。 利用可擴展性,您可以每 30 分鐘接收一次新資料。 如果您需要即時監控視覺化,這可能足以滿足您的需求,也可能不足以滿足您的需求。 在這種情況下,建議使用我提到的 Grafana 等應用程式。 此外,Microsoft 文件描述了使用 SIEM 工具將指標、日誌和事件表傳送到視覺化系統 Splunk、SumoLogic、ELK 和 IBM 雷達的能力。

23:40 分鐘

很快就會繼續......

一些廣告🙂

感謝您與我們在一起。 你喜歡我們的文章嗎? 想看更多有趣的內容? 通過下訂單或推薦給朋友來支持我們, 面向開發人員的雲 VPS,4.99 美元起, 我們為您發明的入門級服務器的獨特模擬: VPS (KVM) E5-2697 v3(6 核)10​​4GB DDR480 1GB SSD 19Gbps XNUMX 美元或如何共享服務器的全部真相? (適用於 RAID1 和 RAID10,最多 24 個內核和最多 40GB DDR4)。

Dell R730xd 在阿姆斯特丹的 Equinix Tier IV 數據中心便宜 2 倍? 只有這裡 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 電視低至 199 美元 在荷蘭! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - 99 美元起! 閱讀 如何建設基礎設施公司同級使用價值730歐元的Dell R5xd E2650-4 v9000服務器一分錢?

來源: www.habr.com

添加評論