Documentation ¶
Overview ¶
Package cadvisor provides an interface for Kubelet interactions with cAdvisor.
Index ¶
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" )
const LabelCrioContainers string = "crio-containers"
LabelCrioContainers is a label to allow for cadvisor to track writeable layers separately from read-only layers. Once CAdvisor upstream changes are merged, we should remove this constant
Variables ¶
This section is empty.
Functions ¶
func CapacityFromMachineInfo ¶ added in v1.2.0
func CapacityFromMachineInfo(info *cadvisorapi.MachineInfo) v1.ResourceList
CapacityFromMachineInfo returns the capacity of the resources from the machine info.
func EphemeralStorageCapacityFromFsInfo ¶ added in v1.8.0
func EphemeralStorageCapacityFromFsInfo(info cadvisorapi2.FsInfo) v1.ResourceList
EphemeralStorageCapacityFromFsInfo returns the capacity of the ephemeral storage from the FsInfo.
func UsingLegacyCadvisorStats ¶ added in v1.9.0
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 ¶ added in v1.8.0
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 ¶ added in v1.8.0
func NewImageFsInfoProvider(runtimeEndpoint string) ImageFsInfoProvider
NewImageFsInfoProvider returns a provider for the specified runtime configuration.
type Interface ¶
type Interface interface { Start() error DockerContainer(name string, req *cadvisorapi.ContainerInfoRequest) (cadvisorapi.ContainerInfo, error) ContainerInfo(name string, req *cadvisorapi.ContainerInfoRequest) (*cadvisorapi.ContainerInfo, error) ContainerInfoV2(name string, options cadvisorapiv2.RequestOptions) (map[string]cadvisorapiv2.ContainerInfo, error) GetRequestedContainersInfo(containerName string, options cadvisorapiv2.RequestOptions) (map[string]*cadvisorapi.ContainerInfo, error) SubcontainerInfo(name string, req *cadvisorapi.ContainerInfoRequest) (map[string]*cadvisorapi.ContainerInfo, error) MachineInfo() (*cadvisorapi.MachineInfo, error) VersionInfo() (*cadvisorapi.VersionInfo, error) // Returns usage information about the filesystem holding container images. ImagesFsInfo() (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() (cadvisorapiv2.FsInfo, error) // Get events streamed through passedChannel that fit the request. WatchEvents(request *events.Request) (*events.EventChannel, 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.