適用於計算的 FinOps 最佳做法
本文概述計算服務的已實證 FinOps 做法集合。 其提供優化成本、提高效率,以及深入瞭解 Azure 中計算資源的指引。 這些做法會根據計算服務的類型分類,例如虛擬機(VM)、Azure Kubernetes Service (AKS)和 Azure Functions。
Azure Kubernetes Service
下一節提供 AKS 叢集的 Azure Resource Graph (ARG) 查詢。 此查詢可協助您深入瞭解 VM。
查詢 - AKS 叢集
此 ARG 查詢會擷取 Azure 環境中 AKS 叢集的詳細資訊。
類別
資源管理
查詢
resources
| where type == "microsoft.containerservice/managedclusters"
| extend AgentPoolProfiles = properties.agentPoolProfiles
| mvexpand AgentPoolProfiles
| project
id,
ProfileName = tostring(AgentPoolProfiles.name),
Sku = tostring(sku.name),
Tier = tostring(sku.tier),
mode = AgentPoolProfiles.mode,
AutoScaleEnabled = AgentPoolProfiles.enableAutoScaling,
SpotVM = AgentPoolProfiles.scaleSetPriority,
VMSize = tostring(AgentPoolProfiles.vmSize),
nodeCount = tostring(AgentPoolProfiles.['count']),
minCount = tostring(AgentPoolProfiles.minCount),
maxCount = tostring(AgentPoolProfiles.maxCount),
location,
resourceGroup,
subscriptionId,
AKSname = name
虛擬機器
下列各節提供 VM 的 ARG 查詢。 這些查詢可協助您將成本優化、提高效率,以及深入瞭解 VM。
查詢 - 列出已停止的虛擬機器(且未解除分配)
此 ARG 查詢會識別沒有 deallocated
或 running
狀態的 VM。 它會擷取其電源狀態、位置、資源群組和訂用帳戶標識碼的詳細數據。
類別
減少廢物
查詢
resources
| where type =~ 'microsoft.compute/virtualmachines'
and tostring(properties.extended.instanceView.powerState.displayStatus) != 'VM deallocated'
and tostring(properties.extended.instanceView.powerState.displayStatus) != 'VM running'
| extend PowerState = tostring(properties.extended.instanceView.powerState.displayStatus)
| extend VMLocation = location
| extend resourceGroup = strcat('/subscriptions/', subscriptionId, '/resourceGroups/', resourceGroup)
| order by id asc
| project id, PowerState, VMLocation, resourceGroup, subscriptionId
查詢 - 虛擬機擴展集詳細數據
此查詢會根據其 SKU、現成 VM 優先順序和優先順序混合原則,分析 Azure 環境中的 虛擬機器擴展集。 其提供成本優化和資源管理策略的見解。
類別
資源管理
查詢
resources
| where type =~ 'microsoft.compute/virtualmachinescalesets'
| extend SpotVMs = tostring(properties.virtualMachineProfile.priority)
| extend SpotPriorityMix = tostring(properties.priorityMixPolicy)
| extend SKU = tostring(sku.name)
| extend resourceGroup = strcat('/subscriptions/', subscriptionId, '/resourceGroups/', resourceGroup)
| project id, SKU, SpotVMs, SpotPriorityMix, subscriptionId, resourceGroup, location
查詢 - 虛擬機處理器類型分析
此查詢會識別 Azure 環境中 VM 所使用的處理器類型(ARM、AMD 或 Intel)。 它有助於瞭解不同處理器架構之間 VM 的分佈,這對於優化工作負載效能和成本效益很有用。
類別
資源管理
查詢
resources
| where type == 'microsoft.compute/virtualmachines'
| extend vmSize = properties.hardwareProfile.vmSize
| extend processorType = case(
// ARM Processors
vmSize has "Epsv5"
or vmSize has "Epdsv5"
or vmSize has "Dpsv5"
or vmSize has "Dpdsv", "ARM",
// AMD Processors
vmSize has "Standard_D2a"
or vmSize has "Standard_D4a"
or vmSize has "Standard_D8a"
or vmSize has "Standard_D16a"
or vmSize has "Standard_D32a"
or vmSize has "Standard_D48a"
or vmSize has "Standard_D64a"
or vmSize has "Standard_D96a"
or vmSize has "Standard_D2as"
or vmSize has "Standard_D4as"
or vmSize has "Standard_D8as"
or vmSize has "Standard_D16as"
or vmSize has "Standard_D32as"
or vmSize has "Standard_D48as"
or vmSize has "Standard_D64as"
or vmSize has "Standard_D96as", "AMD",
"Intel"
)
| project vmName = name, processorType, vmSize, resourceGroup
正在尋找其他專案嗎?
我們錯過了什麼嗎? 您要看到新增的內容嗎? 我們很想聽聽任何您想要在這裡看到的問題、問題或解決方案。 使用您想要在這裡看到的詳細數據,建立新的問題 。
相關內容
相關資源:
相關產品:
相關解決方案: