Merge pull request #50932 from yguo0905/stats-cadvisor
Automatic merge from submit-queue (batch tested with PRs 50932, 49610, 51312, 51415, 50705) Implement StatsProvider interface using cadvisor Ref: https://github.com/kubernetes/kubernetes/issues/46984 - This PR changes the `StatsProvider` interface in `pkg/kubelet/server/stats` so that it can provide container stats from either cadvisor or CRI, and the summary API can consume the stats without knowing how they are provided. - The `StatsProvider` struct in the newly added package `pkg/kubelet/stats` implements part of the `StatsProvider` interface in `pkg/kubelet/server/stats`. - In `pkg/kubelet/stats`, - `stats_provider.go`: implements the node level stats and provides the entry point for this package. - `cadvisor_stats_provider.go`: implements the container level stats using cadvisor. - `cri_stats_provider.go`: implements the container level stats using CRI. - `helper.go`: utility functions shared by the above three components. - There should be no user visible behaviors change in this PR. - A follow up PR will implement the StatsProvider interface using CRI. **Release note**: ``` None ``` /assign @yujuhong /assign @WIZARD-CXY
This commit is contained in:
@@ -113,7 +113,7 @@ func TestRunOnce(t *testing.T) {
|
||||
kb.networkPlugin, _ = network.InitNetworkPlugin([]network.NetworkPlugin{}, "", nettest.NewFakeHost(nil), kubeletconfig.HairpinNone, "", network.UseDefaultMTU)
|
||||
// TODO: Factor out "StatsProvider" from Kubelet so we don't have a cyclic dependency
|
||||
volumeStatsAggPeriod := time.Second * 10
|
||||
kb.resourceAnalyzer = stats.NewResourceAnalyzer(kb, volumeStatsAggPeriod, kb.containerRuntime)
|
||||
kb.resourceAnalyzer = stats.NewResourceAnalyzer(kb, volumeStatsAggPeriod)
|
||||
nodeRef := &v1.ObjectReference{
|
||||
Kind: "Node",
|
||||
Name: string(kb.nodeName),
|
||||
|
Reference in New Issue
Block a user