預估 Azure 虛擬桌面監視成本
Azure 虛擬桌面使用 Azure 監視器記錄服務來收集、編制索引及儲存您環境所產生的資料。 因此,Azure 監視器價格模型是以每天 (以 GB 為單位) Log Analytics 工作區帶入和處理 (或「內嵌」) 的資料量為基礎。 Log Analytics 工作區的成本不僅僅取決於收集的資料量,還取決於您選取的 Azure 付款方案以及您選擇儲存環境所產生資料的時間長度。
本文將說明下列事項,協助您了解 Azure 監視器中的定價運作方式:
- 如何在您啟用此功能之前估計資料擷取和儲存體成本
- 如何在使用此功能時,測量和控制擷取和儲存體,以降低成本
注意
本文所列出的所有大小和價格僅為示範估計運作方式的範例。 如需根據 Azure 監視器記錄分析定價格模型和 Azure 區域的更精確評量,請參閱 Azure 監視器價格。
估計資料擷取和儲存體成本
建議您使用在您 Log Analytics 工作區以記錄形式寫入的預先定義資料集。 在下列範例估計中,我們將查看預設設定中的計費資料
Azure 虛擬桌面深入解析的預先定義資料集包括:
- 來自工作階段主機的效能計數器
- 來自工作階段主機的 Windows 事件記錄檔
- 來自服務基礎結構的 Azure 虛擬桌面診斷
您的資料擷取和儲存體成本取決於您的環境大小、健康情況和使用方式。 在本文章中我們將用於計算您可以預期成本的範例是根據執行光線至電源使用方式的健康情況虛擬機器,根據虛擬機器調整大小指導方針,計算您所預期的資料擷取和儲存體成本範圍。
我們將在範例中使用的光線使用方式 VM 包含下列元件:
- 4 個 vCPU、1 個磁碟
- 每天 16 個工作階段
- 2 小時 (120 分鐘) 的平均工作階段持續時間
- 每個工作階段 100 個流程
我們將在範例中使用的電源使用方式 VM 包含下列元件:
- 6 個 vCPU、1 個磁碟
- 每天 6 個工作階段
- 4 小時 (240 分鐘) 的平均工作階段持續時間
- 每個工作階段 200 個流程
估計效能計數器擷取
效能計數器顯示系統資源的執行方式。 效能計數器資料擷取取決於您的環境大小和使用方式。 在大部分案例中,效能計數器應該佔 Azure 虛擬桌面深入解析的資料擷取 80 到 99%。
在您開始估計之前,了解每個效能計數器都會以特定頻率傳送資料非常重要。 我們會設定每分鐘的預設採樣速率 (您也可以在設定中編輯此速率),但是該速率會根據計數器以不同的倍增因數套用。 下列因數會影響速率:
針對每個虛擬機器 (VM) 因數,每個計數器都會在 VM 執行時,以每分鐘預設採樣速率傳送環境中每 VM 的資料。 您可以將每分鐘預設採樣速率乘以環境中的 VM 數目,然後將該數目乘以每天平均 VM 執行時間,來估計每天傳送的這些計數器資料列數目。
總括來說:
每分鐘預設採樣速率 × VM SKU 中的 CPU 核心數目 × VM 數目 × 每天平均 VM 執行時間 = 每天傳送的資料列數目
針對每 CPU 因數,每個計數器會在 VM 執行時,在環境中以每個 VM 中每 vCPU 的每分鐘預設採樣速率傳送。 您可以透過將每分鐘預設採樣速率乘以 VM SKU 中的 CPU 核心數目,然後將該數目乘以 VM 執行的分鐘數和環境中的 VM 數目,來估計計數器每天傳送的資料列數目。
總括來說:
每分鐘預設採樣速率 × VM SKU 中的 CPU 核心數目 × VM 執行的分鐘數 × VM 數目 = 每天傳送的資料列數目
針對每個磁碟因數,每個計數器都會以您環境中每個 VM 的每個磁碟預設採樣速率傳送資料。 這些計數器每天傳送的資料列數目等於 VM SKU 中的磁碟數目乘以每分鐘預設採樣速率 ,乘以每小時 60 分鐘,最後乘以 VM 的平均使用時間。
總括來說:
每分鐘預設採樣速率 × VM SKU 中的磁碟數目 × 每小時 60 分鐘 × VM 數目 × 每天平均 VM 執行時間 = 每天傳送的資料列數目
針對每個工作階段因數,每個計數器會在連線工作階段時,以環境中每個工作階段的預設採樣速率傳送資料。 您可以透過將每天平均工作階段數目和平均工作階段持續時間乘以每分鐘預設採樣速率,估計這些計數器每天傳送的資料列數目。
總括來說:
每分鐘預設採樣速率 × 每天的工作階段 × 平均工作階段持續時間 = 每天傳送的資料列數目
針對每個流程因數,每個計數器都會以您環境中每個工作階段的每個流程預設速率傳送資料。 您可以透過將每天平均工作階段數目乘以每分鐘預設採樣速率,然後乘以平均工作階段持續時間,估計這些計數器每天傳送的資料列數目。
總括來說:
每分鐘預設採樣速率 × 每天的工作階段 × 平均工作階段持續時間 × 每工作階段的平均流程數目 = 每天傳送的資料列數目
下列資料表列出 Azure 虛擬桌面深入解析所收集的 20 個效能計數器及其預設速率:
計數器名稱 | 預設採樣速率 | 頻率因數 |
---|---|---|
邏輯磁碟 (C:)\% 可用空間 | 60 秒鐘 | 每個磁碟 |
邏輯磁碟(C:)\平均值磁碟佇列長度 | 30 秒 | 每個磁碟 |
邏輯磁碟(C:)\平均值Disk sec/Transfer | 60 秒鐘 | 每個磁碟 |
邏輯磁碟 (C:)\目前磁碟佇列長度 | 30 秒 | 每個磁碟 |
記憶體 (*)\可用 MB | 30 秒 | 每個 VM |
記憶體 (*)\分頁錯誤/秒 | 30 秒 | 每個 VM |
記憶體 (*)\分頁/秒 | 30 秒 | 每個 VM |
記憶體(*)\認可的位元組 % (使用中) | 30 秒 | 每個 VM |
實體磁碟(*)\平均值磁碟佇列長度 | 30 秒 | 每個磁碟 |
實體磁碟(*)\平均值Disk sec/Read | 30 秒 | 每個磁碟 |
實體磁碟(*)\平均值Disk sec/Transfer | 30 秒 | 每個磁碟 |
實體磁碟(*)\平均值Disk sec/Write | 30 秒 | 每個磁碟 |
處理器資訊 (_總計)\% 處理器時間 | 30 秒 | 每個核心/CPU |
終端服務 (*)\使用中工作階段 | 60 秒鐘 | 每個 VM |
終端服務 (*)\非使用中工作階段 | 60 秒鐘 | 每個 VM |
終端服務 (*)\工作階段總計 | 60 秒鐘 | 每個 VM |
每個流程的使用者輸入延遲(*)\輸入延遲上限 | 30 秒 | 每個流程 |
每個工作階段的使用者輸入延遲(*)\輸入延遲上限 | 30 秒 | 每個工作階段 |
RemoteFX 網路(*)\目前 TCP RTT | 30 秒 | 每個 VM |
RemoteFX 網路(*)\目前 UDP 頻寬 | 30 秒 | 每個 VM |
如果我們估計每個資料列大小為 200 位元組,則以預設採樣速率執行光線工作負載的範例 VM 每 VM 每天會傳送大約 90 MB 的效能計數器資料。 同時,執行電源工作負載的範例 VM 每 VM 每天會傳送大約 130 MB 的效能計數器資料。 然而,資料列大小和環境使用方式會有所不同,因此您部署每天使用的 MB 可能會不同。
若要深入了解輸入延遲效能計數器,請參閱使用者輸入延遲效能計數器。
估計 Windows 事件記錄檔擷取
Windows 事件記錄檔是 Windows 虛擬機器上 Azure 監視器代理程式或 Log Analytics 代理程式收集的資料來源。 您可以從「系統」、「應用程式」還有您需要監視的應用程式所建立自訂記錄等標準記錄來收集事件。
以下是 Azure 虛擬桌面深入解析的預設Windows 事件:
- 申請
- Microsoft-Windows-TerminalServices-RemoteConnectionManager/管理員
- Microsoft-Windows-TerminalServices-LocalSessionManager/作業
- 系統
- Microsoft-FSLogix-Apps/作業
- Microsoft-FSLogix-Apps/管理員
每當環境符合事件規定時,Windows 事件就會傳送事件。 處於健全狀態的機器會比處於狀況不良狀態的電腦傳送較少事件。 由於事件計數無法預測,因此針對此估計我們會根據良好環境中的範例,每天每 VM 使用範圍 1,000 到 10,000 個事件。 例如,如果我們估計此範例中的每個事件資料列大小為 1,500 位元組,則結果是指定環境每天大約 2 到 15 MB 的事件資料。
若要深入了解如何使用 Azure 監視器代理程式設定 Windows 事件記錄檔的資料收集,請參閱如何使用 Azure 監視器代理程式來收集虛擬機器的事件和效能計數器。
若要深入了解 Windows 事件,請參閱 Windows 事件資料列屬性。
估計診斷擷取
診斷服務會建立使用者和系統管理動作的活動記錄。
這些是診斷計數器追蹤的活動記錄名稱:
- WVDCheckpoints
- WVDConnections
- WVDErrors
- WVDFeeds
- WVDManagement
- WVDAgentHealthStatus
每當環境符合建立資料列所需的條款時,服務就會傳送診斷資訊。 由於診斷資料列計數無法預測,因此針對此估計我們會根據良好環境中的範例,每天每 VM 使用範圍 500 到 1,000 個事件。
例如,如果我們估計此範例中的每個診斷資料列大小為 200 位元組,則每天每 VM 的內嵌資料總計會小於 1 MB。
若要深入了解活動記錄類別,請參閱 Azure 虛擬桌面診斷。
測量和管理您的效能計數器資料
您真正的監視成本取決於您的環境大小、使用方式和健康情況。 若要了解如何測量您 Log Analytics 工作區中的資料擷取,請參閱分析 Log Analytics 工作區中的使用方式。
工作階段主機使用的效能計數器是 Azure 虛擬桌面深入解析所擷取資料的最大來源。 此查詢會顯示您在環境中啟用的所有效能計數器,而不只有 Azure 虛擬桌面深入解析的預設效能計數器。 這項資訊可以協助您了解待降低成本的目標區域。
請執行以下 Log Analytics 工作區的自訂查詢範本,追蹤過去一天中每個效能計數器擷取的頻率和 MB:
注意
請務必將範本的預留位置值取代為您環境中所使用的值,否則查詢將無法運作。
let WVDHosts = dynamic(['Host1.MyCompany.com', 'Host2.MyCompany.com']);
Perf
| where TimeGenerated > ago(1d)
| where Computer in (WVDHosts)
| extend PerfCounter = strcat(ObjectName, ":", CounterName)
| summarize Records = count(TimeGenerated), InstanceNames = dcount(InstanceName), Bytes=sum(_BilledSize) by PerfCounter
| extend Billed_MBytes = Bytes / (1024 * 1024), BytesPerRecord = Bytes / Records
| sort by Records desc
估計總成本
最後,讓我們估計總成本。 在此範例中,假設我們會根據上一節中的範例值來提出下列結果:
資料來源 | 每天估計的大小 (以 MB 為單位) |
---|---|
效能計數器 | 90-130 |
事件 | 2-15 |
Azure 虛擬桌面診斷 | < 1 |
在此範例中,Azure 虛擬桌面深入解析所擷取資料總計為每天每 VM 92 到 145 MB 之間。 也就是說,每 31 天每個 VM 會擷取大約 3 到 5 GB 的資料。
使用適用於 Log Analytics 價格的隨用隨付模型,您可以估計每月的 Azure 監視器資料收集和儲存體成本。 根據您的資料擷取,您也可以考慮記錄分析價格的「容量保留」模型。
管理您的資料擷取以降低成本
本節將說明如何測量和管理資料擷取,以降低成本。
若要了解管理活頁簿的權限和存取權限,請參閱存取控制。
注意
移除資料點會影響其在 Azure 虛擬桌面深入解析中的對應視覺效果。
記錄分析設定
以下是優化記錄分析設定以管理資料擷取的一些建議:
- 針對您的 Azure 虛擬桌面資源使用指定的 Log Analytics 工作區,以確保記錄分析只會收集 Azure 虛擬桌面部署中虛擬機器的效能計數器和事件。
- 調整您的記錄分析儲存體設定以管理成本。 您可以減少保留期間、評估固定儲存體定價層是否更具有成本效益,或者設定您可以擷取多少資料界限,限制狀況不良部署的影響。 若要深入了解,請參閱 Azure 監視器記錄價格詳細資料。
移除多餘的資料
我們的預設設定是唯一建議用在 Azure 虛擬桌面深入解析的資料集。 您永遠可以選擇新增其他資料點,並且在「主機診斷」中檢視:支援網頁瀏覽器或為其組建自訂圖表,但是已新增的資料會增加記錄分析成本。 可以移除這些以節省成本。
測量和管理您的效能計數器資料
您真正的監視成本取決於您的環境大小、使用方式和健康情況。 若要了解如何測量您 Log Analytics 工作區中的資料擷取,請參閱分析 Log Analytics 工作區中的使用方式。
工作階段主機使用的效能計數器可能會是 Azure 虛擬桌面深入解析所擷取資料的最大來源。 Log Analytics 工作區的下列自訂查詢範本可以追蹤過去一天中每個效能計數器擷取的頻率和 MB:
let WVDHosts = dynamic(['Host1.MyCompany.com', 'Host2.MyCompany.com']);
Perf
| where TimeGenerated > ago(1d)
| where Computer in (WVDHosts)
| extend PerfCounter = strcat(ObjectName, ":", CounterName)
| summarize Records = count(TimeGenerated), InstanceNames = dcount(InstanceName), Bytes=sum(_BilledSize) by PerfCounter
| extend Billed_MBytes = Bytes / (1024 * 1024), BytesPerRecord = Bytes / Records
| sort by Records desc
注意
請務必將範本的預留位置值取代為您環境中所使用的值,否則查詢將無法運作。
此查詢會顯示您在環境中已啟用的所有效能計數器,而不只有 Azure 虛擬桌面深入解析的預設效能計數器。 這項資訊可以協助您了解待降低成本的目標區域,例如:減少計數器的頻率或完全移除。
您也可以透過移除效能計數器來降低成本。 若要了解如何移除效能計數器,或者編輯現有的計數器以減少其頻率,請參閱設定效能計數器。
管理 Windows 事件記錄檔
當所有主機狀況良好時,Windows 事件不太可能造成資料擷取峰值。 狀況不良的主機可以增加傳送至記錄的事件數目,但是此資訊對修正主機的問題會非常重要。 我們建議保留。 若要深入了解如何管理 Windows 事件記錄檔,請參閱設定 Windows 事件記錄檔。
管理診斷
Azure 虛擬桌面診斷應該佔少於您資料儲存體成本的 1%,因此我們不建議將其移除。 若要管理 Azure 虛擬桌面診斷,請將記錄分析用於診斷功能。
下一步
請參閱下列文章,深入了解 Azure 虛擬桌面深入解析:
- 使用 Azure 虛擬桌面深入解析來監視您的部署。
- 使用字彙深入了解條款和概念。
- 如果您遇到問題,請參閱我們的疑難排解指南取得協助。
- 若要深入了解關於管理您的監視成本,請參閱 Azure 監視器成本和使用量。