package cadvisor
import "k8s.io/kubernetes/pkg/kubelet/cadvisor"
Package cadvisor provides an interface for Kubelet interactions with cAdvisor.
Index ¶
- Constants
- func CapacityFromMachineInfo(info *cadvisorapi.MachineInfo) v1.ResourceList
- func EphemeralStorageCapacityFromFsInfo(info cadvisorapi2.FsInfo) v1.ResourceList
- func UsingLegacyCadvisorStats(runtimeEndpoint string) bool
- type ImageFsInfoProvider
- type Interface
Constants ¶
const ( // CrioSocketSuffix is the path to the CRI-O socket. // Please keep this in sync with the one in: // github.com/google/cadvisor/tree/master/container/crio/client.go // Note that however we only match on the suffix, as /var/run is often a // symlink to /run, so the user can specify either path. CrioSocketSuffix = "run/crio/crio.sock" )
Functions ¶
func CapacityFromMachineInfo ¶
func CapacityFromMachineInfo(info *cadvisorapi.MachineInfo) v1.ResourceList
CapacityFromMachineInfo returns the capacity of the resources from the machine info.
func EphemeralStorageCapacityFromFsInfo ¶
func EphemeralStorageCapacityFromFsInfo(info cadvisorapi2.FsInfo) v1.ResourceList
EphemeralStorageCapacityFromFsInfo returns the capacity of the ephemeral storage from the FsInfo.
func UsingLegacyCadvisorStats ¶
UsingLegacyCadvisorStats returns true if container stats are provided by cadvisor instead of through the CRI. CRI integrations should get container metrics via CRI. TODO: cri-o relies on cadvisor as a temporary workaround. The code should be removed. Related issue: https://github.com/kubernetes/kubernetes/issues/51798
Types ¶
type ImageFsInfoProvider ¶
type ImageFsInfoProvider interface { // ImageFsInfoLabel returns the label cAdvisor should use to find the filesystem holding container images. ImageFsInfoLabel() (string, error) // In split image filesystem this will be different from ImageFsInfoLabel ContainerFsInfoLabel() (string, error) }
ImageFsInfoProvider informs cAdvisor how to find imagefs for container images.
func NewImageFsInfoProvider ¶
func NewImageFsInfoProvider(runtimeEndpoint string) ImageFsInfoProvider
NewImageFsInfoProvider returns a provider for the specified runtime configuration.
type Interface ¶
type Interface interface { Start() error ContainerInfoV2(name string, options cadvisorapiv2.RequestOptions) (map[string]cadvisorapiv2.ContainerInfo, error) GetRequestedContainersInfo(containerName string, options cadvisorapiv2.RequestOptions) (map[string]*cadvisorapi.ContainerInfo, error) MachineInfo() (*cadvisorapi.MachineInfo, error) VersionInfo() (*cadvisorapi.VersionInfo, error) // Returns usage information about the filesystem holding container images. ImagesFsInfo(context.Context) (cadvisorapiv2.FsInfo, error) // Returns usage information about the root filesystem. RootFsInfo() (cadvisorapiv2.FsInfo, error) // Returns usage information about the writeable layer. // KEP 4191 can separate the image filesystem ContainerFsInfo(context.Context) (cadvisorapiv2.FsInfo, error) // Get filesystem information for the filesystem that contains the given file. GetDirFsInfo(path string) (cadvisorapiv2.FsInfo, error) }
Interface is an abstract interface for testability. It abstracts the interface to cAdvisor.
func New ¶
func New(imageFsInfoProvider ImageFsInfoProvider, rootPath string, cgroupRoots []string, usingLegacyStats, localStorageCapacityIsolation bool) (Interface, error)
New creates a new cAdvisor Interface for linux systems.
Source Files ¶
cadvisor_linux.go doc.go helpers_linux.go types.go util.go
Directories ¶
Path | Synopsis |
---|---|
pkg/kubelet/cadvisor/testing |
- Version
- v1.33.0 (latest)
- Published
- Apr 23, 2025
- Platform
- linux/amd64
- Imports
- 25 packages
- Last checked
- 3 hours ago –
Tools for package owners.