Split crio context initialization
This commit is contained in:
parent
6757727a00
commit
e9a44a2984
@ -19,6 +19,7 @@ import (
|
|||||||
"github.com/google/cadvisor/fs"
|
"github.com/google/cadvisor/fs"
|
||||||
info "github.com/google/cadvisor/info/v1"
|
info "github.com/google/cadvisor/info/v1"
|
||||||
"github.com/google/cadvisor/watcher"
|
"github.com/google/cadvisor/watcher"
|
||||||
|
"k8s.io/klog"
|
||||||
)
|
)
|
||||||
|
|
||||||
// NewPlugin returns an implementation of container.Plugin suitable for passing to container.RegisterPlugin()
|
// NewPlugin returns an implementation of container.Plugin suitable for passing to container.RegisterPlugin()
|
||||||
@ -29,6 +30,17 @@ func NewPlugin() container.Plugin {
|
|||||||
type plugin struct{}
|
type plugin struct{}
|
||||||
|
|
||||||
func (p *plugin) InitializeFSContext(context *fs.Context) error {
|
func (p *plugin) InitializeFSContext(context *fs.Context) error {
|
||||||
|
crioClient, err := Client()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
crioInfo, err := crioClient.Info()
|
||||||
|
if err != nil {
|
||||||
|
klog.V(5).Infof("CRI-O not connected: %v", err)
|
||||||
|
} else {
|
||||||
|
context.Crio = fs.CrioContext{Root: crioInfo.StorageRoot}
|
||||||
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -30,7 +30,6 @@ import (
|
|||||||
"github.com/google/cadvisor/cache/memory"
|
"github.com/google/cadvisor/cache/memory"
|
||||||
"github.com/google/cadvisor/collector"
|
"github.com/google/cadvisor/collector"
|
||||||
"github.com/google/cadvisor/container"
|
"github.com/google/cadvisor/container"
|
||||||
"github.com/google/cadvisor/container/crio"
|
|
||||||
"github.com/google/cadvisor/container/docker"
|
"github.com/google/cadvisor/container/docker"
|
||||||
"github.com/google/cadvisor/container/raw"
|
"github.com/google/cadvisor/container/raw"
|
||||||
"github.com/google/cadvisor/events"
|
"github.com/google/cadvisor/events"
|
||||||
@ -156,24 +155,12 @@ func New(memoryCache *memory.InMemoryCache, sysfs sysfs.SysFs, maxHousekeepingIn
|
|||||||
// Try to connect to docker indefinitely on startup.
|
// Try to connect to docker indefinitely on startup.
|
||||||
dockerStatus = retryDockerStatus()
|
dockerStatus = retryDockerStatus()
|
||||||
|
|
||||||
crioClient, err := crio.Client()
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
crioInfo, err := crioClient.Info()
|
|
||||||
if err != nil {
|
|
||||||
klog.V(5).Infof("CRI-O not connected: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
context := fs.Context{
|
context := fs.Context{
|
||||||
Docker: fs.DockerContext{
|
Docker: fs.DockerContext{
|
||||||
Root: docker.RootDir(),
|
Root: docker.RootDir(),
|
||||||
Driver: dockerStatus.Driver,
|
Driver: dockerStatus.Driver,
|
||||||
DriverStatus: dockerStatus.DriverStatus,
|
DriverStatus: dockerStatus.DriverStatus,
|
||||||
},
|
},
|
||||||
Crio: fs.CrioContext{
|
|
||||||
Root: crioInfo.StorageRoot,
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := container.InitializeFSContext(&context); err != nil {
|
if err := container.InitializeFSContext(&context); err != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user