Documentation ¶
Index ¶
- Constants
- Variables
- func RecordBESuppressCores(suppressType string, value float64)
- func RecordBESuppressLSUsedCPU(value float64)
- func RecordCollectNodeCPUInfoStatus(err error)
- func RecordContainerCPI(status *corev1.ContainerStatus, pod *corev1.Pod, cycles, instructions float64)
- func RecordContainerPSI(status *corev1.ContainerStatus, pod *corev1.Pod, psi *util.PSIByResource)
- func RecordContainerResourceLimits(resourceName string, status *corev1.ContainerStatus, pod *corev1.Pod, ...)
- func RecordContainerResourceRequests(resourceName string, status *corev1.ContainerStatus, pod *corev1.Pod, ...)
- func RecordContainerScaledCFSBurstUS(podNS, podName, containerID, containerName string, value float64)
- func RecordContainerScaledCFSQuotaUS(podNS, podName, containerID, containerName string, value float64)
- func RecordKoordletStartTime(nodeName string, value float64)
- func RecordNodeResourceAllocatable(resourceName string, value float64)
- func RecordNodeUsedCPU(value float64)
- func RecordPodEviction(reasonType string)
- func RecordPodPSI(pod *corev1.Pod, psi *util.PSIByResource)
- func Register(node *corev1.Node)
- func ResetCPUBurstCollector()
- func ResetContainerCPI()
- func ResetContainerPSI()
- func ResetContainerResourceLimits()
- func ResetContainerResourceRequests()
- func ResetPodPSI()
- type PSIRecord
Constants ¶
View Source
const ( CPIField = "cpi_field" Cycles = "cycles" Instructions = "instructions" )
View Source
const ( KoordletSubsystem = "koordlet" NodeKey = "node" StatusKey = "status" StatusSucceed = "succeeded" StatusFailed = "failed" EvictionReasonKey = "reason" BESuppressTypeKey = "type" ContainerID = "container_id" ContainerName = "container_name" PodUID = "pod_uid" PodName = "pod_name" PodNamespace = "pod_namespace" ResourceKey = "resource" )
View Source
const ( PSIDegree = "psi_degree" PSIPrecision = "psi_precision" PSIResourceType = "psi_resource_type" CPUFullSupported = "cpu_full_supported" )
View Source
const ( ResourceTypeCPU = "cpu" ResourceTypeMem = "mem" ResourceTypeIO = "io" Precision10 = "avg10" Precision60 = "avg60" Precision300 = "avg300" DegreeSome = "some" DegreeFull = "full" )
Variables ¶
View Source
var ( KoordletStartTime = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "start_time", Help: "the start time of koordlet", }, []string{NodeKey}) CollectNodeCPUInfoStatus = prometheus.NewCounterVec(prometheus.CounterOpts{ Subsystem: KoordletSubsystem, Name: "collect_node_cpu_info_status", Help: "the count of CollectNodeCPUInfo status", }, []string{NodeKey, StatusKey}) PodEviction = prometheus.NewCounterVec(prometheus.CounterOpts{ Subsystem: KoordletSubsystem, Name: "pod_eviction", Help: "Number of eviction launched by koordlet", }, []string{NodeKey, EvictionReasonKey}) NodeUsedCPU = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "node_used_cpu_cores", Help: "Number of cpu cores used by node in realtime", }, []string{NodeKey}) CommonCollectors = []prometheus.Collector{ KoordletStartTime, CollectNodeCPUInfoStatus, PodEviction, NodeUsedCPU, } )
View Source
var ( ContainerCPI = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "container_cpi", Help: "Container cpi collected by koordlet", }, []string{NodeKey, ContainerID, ContainerName, PodUID, PodName, PodNamespace, CPIField}) CPICollectors = []prometheus.Collector{ ContainerCPI, } )
View Source
var ( ContainerScaledCFSBurstUS = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "container_scaled_cfs_burst_us", Help: "The maximum accumulated run-time(in microseconds) in container-level set by koordlet", }, []string{NodeKey, PodNamespace, PodName, ContainerID, ContainerName}) ContainerScaledCFSQuotaUS = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "container_scaled_cfs_quota_us", Help: "Run-time replenished within a period (in microseconds) in container-level set by koordlet", }, []string{NodeKey, PodNamespace, PodName, ContainerID, ContainerName}) CPUBurstCollector = []prometheus.Collector{ ContainerScaledCFSBurstUS, ContainerScaledCFSQuotaUS, } )
View Source
var ( BESuppressCPU = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "be_suppress_cpu_cores", Help: "Number of cores suppress by koordlet", }, []string{NodeKey, BESuppressTypeKey}) BESuppressLSUsedCPU = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "be_suppress_ls_used_cpu_cores", Help: "Number of cpu cores used by LS. We consider non-BE pods and podMeta-missing pods as LS.", }, []string{NodeKey}) CPUSuppressCollector = []prometheus.Collector{ BESuppressCPU, BESuppressLSUsedCPU, } )
View Source
var ( NodeName string Node *corev1.Node )
View Source
var ( ContainerPSI = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "container_psi", Help: "Container psi collected by koordlet", }, []string{NodeKey, ContainerID, ContainerName, PodUID, PodName, PodNamespace, PSIResourceType, PSIPrecision, PSIDegree, CPUFullSupported}) PodPSI = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "pod_psi", Help: "Pod psi collected by koordlet", }, []string{NodeKey, PodUID, PodName, PodNamespace, PSIResourceType, PSIPrecision, PSIDegree, CPUFullSupported}) PSICollectors = []prometheus.Collector{ ContainerPSI, PodPSI, } )
View Source
var ( NodeResourceAllocatable = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "node_resource_allocatable", Help: "the node allocatable of resources updated by koordinator", }, []string{NodeKey, ResourceKey}) ContainerResourceRequests = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "container_resource_requests", Help: "the container requests of resources updated by koordinator", }, []string{NodeKey, ResourceKey, PodUID, PodName, PodNamespace, ContainerID, ContainerName}) ContainerResourceLimits = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Subsystem: KoordletSubsystem, Name: "container_resource_limits", Help: "the container limits of resources updated by koordinator", }, []string{NodeKey, ResourceKey, PodUID, PodName, PodNamespace, ContainerID, ContainerName}) ResourceSummaryCollectors = []prometheus.Collector{ NodeResourceAllocatable, ContainerResourceRequests, ContainerResourceLimits, } )
Functions ¶
func RecordBESuppressCores ¶
func RecordBESuppressLSUsedCPU ¶ added in v1.1.1
func RecordBESuppressLSUsedCPU(value float64)
func RecordCollectNodeCPUInfoStatus ¶
func RecordCollectNodeCPUInfoStatus(err error)
func RecordContainerCPI ¶ added in v1.1.0
func RecordContainerCPI(status *corev1.ContainerStatus, pod *corev1.Pod, cycles, instructions float64)
func RecordContainerPSI ¶ added in v1.1.0
func RecordContainerPSI(status *corev1.ContainerStatus, pod *corev1.Pod, psi *util.PSIByResource)
func RecordContainerResourceLimits ¶ added in v1.1.1
func RecordContainerResourceRequests ¶ added in v1.1.1
func RecordContainerScaledCFSBurstUS ¶ added in v1.1.1
func RecordContainerScaledCFSQuotaUS ¶ added in v1.1.1
func RecordKoordletStartTime ¶
func RecordNodeResourceAllocatable ¶ added in v1.1.1
func RecordNodeUsedCPU ¶ added in v1.1.1
func RecordNodeUsedCPU(value float64)
func RecordPodEviction ¶
func RecordPodEviction(reasonType string)
func RecordPodPSI ¶ added in v1.1.0
func RecordPodPSI(pod *corev1.Pod, psi *util.PSIByResource)
func ResetCPUBurstCollector ¶ added in v1.1.1
func ResetCPUBurstCollector()
func ResetContainerCPI ¶ added in v1.1.0
func ResetContainerCPI()
func ResetContainerPSI ¶ added in v1.1.0
func ResetContainerPSI()
func ResetContainerResourceLimits ¶ added in v1.1.1
func ResetContainerResourceLimits()
func ResetContainerResourceRequests ¶ added in v1.1.1
func ResetContainerResourceRequests()
func ResetPodPSI ¶ added in v1.1.0
func ResetPodPSI()
Types ¶
Click to show internal directories.
Click to hide internal directories.