mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-20 10:20:51 +00:00
Upgrading cAdvisor to 0.38.8
This commit is contained in:
parent
031f2afbba
commit
d573ab8317
4
go.mod
4
go.mod
@ -53,7 +53,7 @@ require (
|
|||||||
github.com/gogo/protobuf v1.3.2
|
github.com/gogo/protobuf v1.3.2
|
||||||
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e
|
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e
|
||||||
github.com/golang/mock v1.4.4
|
github.com/golang/mock v1.4.4
|
||||||
github.com/google/cadvisor v0.38.7
|
github.com/google/cadvisor v0.38.8
|
||||||
github.com/google/go-cmp v0.5.2
|
github.com/google/go-cmp v0.5.2
|
||||||
github.com/google/gofuzz v1.1.0
|
github.com/google/gofuzz v1.1.0
|
||||||
github.com/google/uuid v1.1.2
|
github.com/google/uuid v1.1.2
|
||||||
@ -279,7 +279,7 @@ replace (
|
|||||||
github.com/golangplus/fmt => github.com/golangplus/fmt v0.0.0-20150411045040-2a5d6d7d2995
|
github.com/golangplus/fmt => github.com/golangplus/fmt v0.0.0-20150411045040-2a5d6d7d2995
|
||||||
github.com/golangplus/testing => github.com/golangplus/testing v0.0.0-20180327235837-af21d9c3145e
|
github.com/golangplus/testing => github.com/golangplus/testing v0.0.0-20180327235837-af21d9c3145e
|
||||||
github.com/google/btree => github.com/google/btree v1.0.0
|
github.com/google/btree => github.com/google/btree v1.0.0
|
||||||
github.com/google/cadvisor => github.com/google/cadvisor v0.38.7
|
github.com/google/cadvisor => github.com/google/cadvisor v0.38.8
|
||||||
github.com/google/go-cmp => github.com/google/go-cmp v0.5.2
|
github.com/google/go-cmp => github.com/google/go-cmp v0.5.2
|
||||||
github.com/google/gofuzz => github.com/google/gofuzz v1.1.0
|
github.com/google/gofuzz => github.com/google/gofuzz v1.1.0
|
||||||
github.com/google/martian => github.com/google/martian v2.1.0+incompatible
|
github.com/google/martian => github.com/google/martian v2.1.0+incompatible
|
||||||
|
4
go.sum
4
go.sum
@ -228,8 +228,8 @@ github.com/golangplus/testing v0.0.0-20180327235837-af21d9c3145e h1:KhcknUwkWHKZ
|
|||||||
github.com/golangplus/testing v0.0.0-20180327235837-af21d9c3145e/go.mod h1:0AA//k/eakGydO4jKRoRL2j92ZKSzTgj9tclaCrvXHk=
|
github.com/golangplus/testing v0.0.0-20180327235837-af21d9c3145e/go.mod h1:0AA//k/eakGydO4jKRoRL2j92ZKSzTgj9tclaCrvXHk=
|
||||||
github.com/google/btree v1.0.0 h1:0udJVsspx3VBr5FwtLhQQtuAsVc79tTq0ocGIPAU6qo=
|
github.com/google/btree v1.0.0 h1:0udJVsspx3VBr5FwtLhQQtuAsVc79tTq0ocGIPAU6qo=
|
||||||
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
|
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
|
||||||
github.com/google/cadvisor v0.38.7 h1:ZWyUz+23k1PRmEA+yrnDGtEC6IuU4Vc6439x2NQLHnA=
|
github.com/google/cadvisor v0.38.8 h1:3RQEwcEqPEcJ840AOCvDEjYvgpcbyXfEZd+UHlg1ETg=
|
||||||
github.com/google/cadvisor v0.38.7/go.mod h1:1OFB9sOOMkBdUBGCO/1SArawTnDscgMzTodacVDe8mA=
|
github.com/google/cadvisor v0.38.8/go.mod h1:1OFB9sOOMkBdUBGCO/1SArawTnDscgMzTodacVDe8mA=
|
||||||
github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM=
|
github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM=
|
||||||
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||||
github.com/google/gofuzz v1.1.0 h1:Hsa8mG0dQ46ij8Sl2AYJDUv1oA9/d6Vk+3LG99Oe02g=
|
github.com/google/gofuzz v1.1.0 h1:Hsa8mG0dQ46ij8Sl2AYJDUv1oA9/d6Vk+3LG99Oe02g=
|
||||||
|
1
vendor/github.com/google/cadvisor/container/libcontainer/BUILD
generated
vendored
1
vendor/github.com/google/cadvisor/container/libcontainer/BUILD
generated
vendored
@ -17,7 +17,6 @@ go_library(
|
|||||||
"//vendor/github.com/opencontainers/runc/libcontainer/cgroups/fs:go_default_library",
|
"//vendor/github.com/opencontainers/runc/libcontainer/cgroups/fs:go_default_library",
|
||||||
"//vendor/github.com/opencontainers/runc/libcontainer/cgroups/fs2:go_default_library",
|
"//vendor/github.com/opencontainers/runc/libcontainer/cgroups/fs2:go_default_library",
|
||||||
"//vendor/github.com/opencontainers/runc/libcontainer/configs:go_default_library",
|
"//vendor/github.com/opencontainers/runc/libcontainer/configs:go_default_library",
|
||||||
"//vendor/golang.org/x/sys/unix:go_default_library",
|
|
||||||
"//vendor/k8s.io/klog/v2:go_default_library",
|
"//vendor/k8s.io/klog/v2:go_default_library",
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
51
vendor/github.com/google/cadvisor/container/libcontainer/handler.go
generated
vendored
51
vendor/github.com/google/cadvisor/container/libcontainer/handler.go
generated
vendored
@ -29,14 +29,13 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/google/cadvisor/container"
|
|
||||||
info "github.com/google/cadvisor/info/v1"
|
|
||||||
"golang.org/x/sys/unix"
|
|
||||||
|
|
||||||
"github.com/opencontainers/runc/libcontainer"
|
"github.com/opencontainers/runc/libcontainer"
|
||||||
"github.com/opencontainers/runc/libcontainer/cgroups"
|
"github.com/opencontainers/runc/libcontainer/cgroups"
|
||||||
fs2 "github.com/opencontainers/runc/libcontainer/cgroups/fs2"
|
"github.com/opencontainers/runc/libcontainer/cgroups/fs2"
|
||||||
"k8s.io/klog/v2"
|
"k8s.io/klog/v2"
|
||||||
|
|
||||||
|
"github.com/google/cadvisor/container"
|
||||||
|
info "github.com/google/cadvisor/info/v1"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@ -758,16 +757,6 @@ func (h *Handler) GetProcesses() ([]int, error) {
|
|||||||
return pids, nil
|
return pids, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func minUint32(x, y uint32) uint32 {
|
|
||||||
if x < y {
|
|
||||||
return x
|
|
||||||
}
|
|
||||||
return y
|
|
||||||
}
|
|
||||||
|
|
||||||
// var to allow unit tests to stub it out
|
|
||||||
var numCpusFunc = getNumberOnlineCPUs
|
|
||||||
|
|
||||||
// Convert libcontainer stats to info.ContainerStats.
|
// Convert libcontainer stats to info.ContainerStats.
|
||||||
func setCPUStats(s *cgroups.Stats, ret *info.ContainerStats, withPerCPU bool) {
|
func setCPUStats(s *cgroups.Stats, ret *info.ContainerStats, withPerCPU bool) {
|
||||||
ret.Cpu.Usage.User = s.CpuStats.CpuUsage.UsageInUsermode
|
ret.Cpu.Usage.User = s.CpuStats.CpuUsage.UsageInUsermode
|
||||||
@ -785,37 +774,7 @@ func setCPUStats(s *cgroups.Stats, ret *info.ContainerStats, withPerCPU bool) {
|
|||||||
// cpuacct subsystem.
|
// cpuacct subsystem.
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
ret.Cpu.Usage.PerCpu = s.CpuStats.CpuUsage.PercpuUsage
|
||||||
numPossible := uint32(len(s.CpuStats.CpuUsage.PercpuUsage))
|
|
||||||
// Note that as of https://patchwork.kernel.org/patch/8607101/ (kernel v4.7),
|
|
||||||
// the percpu usage information includes extra zero values for all additional
|
|
||||||
// possible CPUs. This is to allow statistic collection after CPU-hotplug.
|
|
||||||
// We intentionally ignore these extra zeroes.
|
|
||||||
numActual, err := numCpusFunc()
|
|
||||||
if err != nil {
|
|
||||||
klog.Errorf("unable to determine number of actual cpus; defaulting to maximum possible number: errno %v", err)
|
|
||||||
numActual = numPossible
|
|
||||||
}
|
|
||||||
if numActual > numPossible {
|
|
||||||
// The real number of cores should never be greater than the number of
|
|
||||||
// datapoints reported in cpu usage.
|
|
||||||
klog.Errorf("PercpuUsage had %v cpus, but the actual number is %v; ignoring extra CPUs", numPossible, numActual)
|
|
||||||
}
|
|
||||||
numActual = minUint32(numPossible, numActual)
|
|
||||||
ret.Cpu.Usage.PerCpu = make([]uint64, numActual)
|
|
||||||
|
|
||||||
for i := uint32(0); i < numActual; i++ {
|
|
||||||
ret.Cpu.Usage.PerCpu[i] = s.CpuStats.CpuUsage.PercpuUsage[i]
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
func getNumberOnlineCPUs() (uint32, error) {
|
|
||||||
var availableCPUs unix.CPUSet
|
|
||||||
if err := unix.SchedGetaffinity(0, &availableCPUs); err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
return uint32(availableCPUs.Count()), nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func setDiskIoStats(s *cgroups.Stats, ret *info.ContainerStats) {
|
func setDiskIoStats(s *cgroups.Stats, ret *info.ContainerStats) {
|
||||||
|
42
vendor/github.com/google/cadvisor/utils/sysinfo/sysinfo.go
generated
vendored
42
vendor/github.com/google/cadvisor/utils/sysinfo/sysinfo.go
generated
vendored
@ -383,7 +383,7 @@ func getCoresInfo(sysFs sysfs.SysFs, cpuDirs []string) ([]info.Core, error) {
|
|||||||
for _, cpuDir := range cpuDirs {
|
for _, cpuDir := range cpuDirs {
|
||||||
cpuID, err := getMatchedInt(cpuDirRegExp, cpuDir)
|
cpuID, err := getMatchedInt(cpuDirRegExp, cpuDir)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("Unexpected format of CPU directory, cpuDirRegExp %s, cpuDir: %s", cpuDirRegExp, cpuDir)
|
return nil, fmt.Errorf("unexpected format of CPU directory, cpuDirRegExp %s, cpuDir: %s", cpuDirRegExp, cpuDir)
|
||||||
}
|
}
|
||||||
if !sysFs.IsCPUOnline(cpuDir) {
|
if !sysFs.IsCPUOnline(cpuDir) {
|
||||||
continue
|
continue
|
||||||
@ -401,25 +401,6 @@ func getCoresInfo(sysFs sysfs.SysFs, cpuDirs []string) ([]info.Core, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
coreIDx := -1
|
|
||||||
for id, core := range cores {
|
|
||||||
if core.Id == physicalID {
|
|
||||||
coreIDx = id
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if coreIDx == -1 {
|
|
||||||
cores = append(cores, info.Core{})
|
|
||||||
coreIDx = len(cores) - 1
|
|
||||||
}
|
|
||||||
desiredCore := &cores[coreIDx]
|
|
||||||
|
|
||||||
desiredCore.Id = physicalID
|
|
||||||
if len(desiredCore.Threads) == 0 {
|
|
||||||
desiredCore.Threads = []int{cpuID}
|
|
||||||
} else {
|
|
||||||
desiredCore.Threads = append(desiredCore.Threads, cpuID)
|
|
||||||
}
|
|
||||||
|
|
||||||
rawPhysicalPackageID, err := sysFs.GetCPUPhysicalPackageID(cpuDir)
|
rawPhysicalPackageID, err := sysFs.GetCPUPhysicalPackageID(cpuDir)
|
||||||
if os.IsNotExist(err) {
|
if os.IsNotExist(err) {
|
||||||
klog.Warningf("Cannot read physical package id for %s, physical_package_id file does not exist, err: %s", cpuDir, err)
|
klog.Warningf("Cannot read physical package id for %s, physical_package_id file does not exist, err: %s", cpuDir, err)
|
||||||
@ -432,7 +413,28 @@ func getCoresInfo(sysFs sysfs.SysFs, cpuDirs []string) ([]info.Core, error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
coreIDx := -1
|
||||||
|
for id, core := range cores {
|
||||||
|
if core.Id == physicalID && core.SocketID == physicalPackageID {
|
||||||
|
coreIDx = id
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if coreIDx == -1 {
|
||||||
|
cores = append(cores, info.Core{})
|
||||||
|
coreIDx = len(cores) - 1
|
||||||
|
}
|
||||||
|
desiredCore := &cores[coreIDx]
|
||||||
|
|
||||||
|
desiredCore.Id = physicalID
|
||||||
desiredCore.SocketID = physicalPackageID
|
desiredCore.SocketID = physicalPackageID
|
||||||
|
|
||||||
|
if len(desiredCore.Threads) == 0 {
|
||||||
|
desiredCore.Threads = []int{cpuID}
|
||||||
|
} else {
|
||||||
|
desiredCore.Threads = append(desiredCore.Threads, cpuID)
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return cores, nil
|
return cores, nil
|
||||||
}
|
}
|
||||||
|
4
vendor/modules.txt
vendored
4
vendor/modules.txt
vendored
@ -517,9 +517,9 @@ github.com/golang/protobuf/ptypes/wrappers
|
|||||||
# github.com/google/btree v1.0.0 => github.com/google/btree v1.0.0
|
# github.com/google/btree v1.0.0 => github.com/google/btree v1.0.0
|
||||||
github.com/google/btree
|
github.com/google/btree
|
||||||
# github.com/google/btree => github.com/google/btree v1.0.0
|
# github.com/google/btree => github.com/google/btree v1.0.0
|
||||||
# github.com/google/cadvisor v0.38.7 => github.com/google/cadvisor v0.38.7
|
# github.com/google/cadvisor v0.38.8 => github.com/google/cadvisor v0.38.8
|
||||||
## explicit
|
## explicit
|
||||||
# github.com/google/cadvisor => github.com/google/cadvisor v0.38.7
|
# github.com/google/cadvisor => github.com/google/cadvisor v0.38.8
|
||||||
github.com/google/cadvisor/accelerators
|
github.com/google/cadvisor/accelerators
|
||||||
github.com/google/cadvisor/cache/memory
|
github.com/google/cadvisor/cache/memory
|
||||||
github.com/google/cadvisor/client/v2
|
github.com/google/cadvisor/client/v2
|
||||||
|
Loading…
Reference in New Issue
Block a user