Skip to content

Commit

Permalink
chore(module): rename VM memory metrics
Browse files Browse the repository at this point in the history
Signed-off-by: Pavel Tishkov <pavel.tishkov@flant.com>
  • Loading branch information
fl64 committed Sep 17, 2024
1 parent 24ae25d commit fd23e15
Show file tree
Hide file tree
Showing 2 changed files with 83 additions and 28 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ const (
MetricVirtualMachineConfigurationCpuCoreFraction = "virtualmachine_configuration_cpu_core_fraction"
MetricVirtualMachineConfigurationCpuRequestedCores = "virtualmachine_configuration_cpu_requested_cores"
MetricVirtualMachineConfigurationCpuRuntimeOverhead = "virtualmachine_configuration_cpu_runtime_overhead"
MetricVirtualMachineConfigurationMemorySize = "virtualmachine_configuration_memory_size"
MetricVirtualMachineConfigurationMemoryRuntimeOverhead = "virtualmachine_configuration_memory_runtime_overhead"
MetricVirtualMachineConfigurationMemorySize = "virtualmachine_configuration_memory_size_bytes"
MetricVirtualMachineConfigurationMemoryRuntimeOverhead = "virtualmachine_configuration_memory_runtime_overhead_bytes"
MetricVirtualMachineAwaitingRestartToApplyConfiguration = "virtualmachine_awaiting_restart_to_apply_configuration"
MetricVirtualMachineConfigurationApplied = "virtualmachine_configuration_applied"
MetricVirtualMachineConfigurationRunPolicy = "virtualmachine_configuration_run_policy"
Expand Down
107 changes: 81 additions & 26 deletions templates/kubevirt/service-monitor.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,99 +24,155 @@ spec:
tlsConfig:
insecureSkipVerify: true
metricRelabelings:
# drop _phases
# relablings =============================================================
# drop _phases metrics
- action: drop
regex: kubevirt_vmi_(migration_)?phase_(.*)
sourceLabels:
- __name__
- __name__
# add block_device_name without prefix only for cvi, vi, vd
- action: replace
regex: kubevirt_vmi_storage_.*;(cvi|vi|vd)-(.+)
replacement: $2
separator: ;
sourceLabels:
- __name__
- drive
- __name__
- drive
targetLabel: block_device_name
# add type for vd
- action: replace
regex: kubevirt_vmi_storage_(.*);vd-(.*)
replacement: virtualdisk
separator: ;
sourceLabels:
- __name__
- drive
- __name__
- drive
targetLabel: type
# add type for vi
- action: replace
regex: kubevirt_vmi_storage_(.*);vi-(.*)
replacement: virtualimage
separator: ;
sourceLabels:
- __name__
- drive
- __name__
- drive
targetLabel: type
# add type for cvi
- action: replace
regex: kubevirt_vmi_storage_(.*);cvi-(.*)
replacement: clustervirtualimage
separator: ;
sourceLabels:
- __name__
- drive
- __name__
- drive
targetLabel: type
# add type for cloudinit
- action: replace
regex: kubevirt_vmi_storage_(.*);cloudinit
replacement: cloudinit
separator: ;
sourceLabels:
- __name__
- drive
- __name__
- drive
targetLabel: type
# add type for sysprep
- action: replace
regex: kubevirt_vmi_storage_(.*);sysprep
replacement: sysprep
separator: ;
sourceLabels:
- __name__
- drive
- __name__
- drive
targetLabel: type
# add network=default for all kubevirt_vmi_network_
- action: replace
regex: kubevirt_vmi_network_(.*)
replacement: default
sourceLabels:
- __name__
- __name__
targetLabel: network
# storage metrics ============================================================================
# rename kubevirt_vmi_storage_ -> d8_virtualization_virtualmachine_block_device_
- action: replace
regex: kubevirt_vmi_storage_(.*)
replacement: d8_virtualization_virtualmachine_block_device_$1
replacement: d8_virtualization_virtualmachine_block_device_${1}
sourceLabels:
- __name__
- __name__
targetLabel: __name__
# memory metrics =============================================================================
# hypervisor metrics
- action: replace
regex: kubevirt_vmi_memory_(cached|resident)_(.+)
replacement: d8_virtualization_virtualmachine_hypervisor_memory_${1}_${2}
sourceLabels:
- __name__
targetLabel: __name__
- action: replace
regex: kubevirt_vmi_launcher_memory_(.+)
replacement: d8_virtualization_virtualmachine_hypervisor_memory_${1}
sourceLabels:
- __name__
targetLabel: __name__
# vm instance metrics
- action: replace
regex: kubevirt_vmi_memory_actual_balloon_bytes
replacement: d8_virtualization_virtualmachine_memory_min_size_bytes
sourceLabels:
- __name__
targetLabel: __name__
- action: replace
regex: kubevirt_vmi_memory_domain_bytes_total
replacement: d8_virtualization_virtualmachine_memory_size_bytes
sourceLabels:
- __name__
targetLabel: __name__
# os metrics
- action: replace
regex: kubevirt_vmi_memory_available_bytes
replacement: d8_virtualization_virtualmachine_os_memory_total_bytes
sourceLabels:
- __name__
targetLabel: __name__
- action: replace
regex: kubevirt_vmi_memory_unused_bytes
replacement: d8_virtualization_virtualmachine_os_memory_free_bytes
sourceLabels:
- __name__
targetLabel: __name__
- action: replace
regex: kubevirt_vmi_memory_usable_bytes
replacement: d8_virtualization_virtualmachine_os_memory_potentially_free_bytes
sourceLabels:
- __name__
targetLabel: __name__
# kubevirt_vmi_memory_ -> d8_virtualization_virtualmachine_memory_os_
- action: replace
regex: kubevirt_vmi_memory_(.*)
replacement: d8_virtualization_virtualmachine_os_memory_${1}
sourceLabels:
- __name__
targetLabel: __name__
# other vm metrics =======================================================
# kubevirt_vmi_outdated_ -> d8_internal_virtualization_kubevirt_vmi_outdated_
- action: replace
regex: kubevirt_vmi_outdated_(.*)
replacement: d8_internal_virtualization_kubevirt_vmi_outdated_$1
replacement: d8_internal_virtualization_kubevirt_vmi_outdated_${1}
sourceLabels:
- __name__
- __name__
targetLabel: __name__
# renave kubevirt_vmi_ -> d8_virtualization_virtualmachine
# rename kubevirt_vmi_ -> d8_virtualization_virtualmachine
- action: replace
regex: kubevirt_vmi_(.*)
replacement: d8_virtualization_virtualmachine_$1
replacement: d8_virtualization_virtualmachine_${1}
sourceLabels:
- __name__
- __name__
targetLabel: __name__
# all other metrics -> d8_internal_virtualization_kubevirt_
- action: replace
regex: kubevirt_(.*)
replacement: d8_internal_virtualization_kubevirt_$1
replacement: d8_internal_virtualization_kubevirt_${1}
sourceLabels:
- __name__
- __name__
targetLabel: __name__
# replace job
- action: replace
Expand All @@ -125,7 +181,7 @@ spec:
# exported_namespace -> namespace
- action: replace
sourceLabels:
- exported_namespace
- exported_namespace
targetLabel: namespace
# drop labels
- action: labeldrop
Expand All @@ -136,7 +192,6 @@ spec:
selector:
matchLabels:
prometheus.kubevirt.internal.virtualization.deckhouse.io: "true"

scheme: https
tlsConfig:
insecureSkipVerify: true
Expand Down

0 comments on commit fd23e15

Please sign in to comment.