Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
2bca7c52
Commit
2bca7c52
authored
Feb 26, 2016
by
k8s-merge-robot
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #21337 from vishh/ensure-runtime-cgroups
Auto commit by PR queue bot
parents
551d2524
7de6a253
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
32 additions
and
10 deletions
+32
-10
container_manager_linux.go
pkg/kubelet/cm/container_manager_linux.go
+32
-10
No files found.
pkg/kubelet/cm/container_manager_linux.go
View file @
2bca7c52
...
...
@@ -24,6 +24,7 @@ import (
"os/exec"
"strconv"
"strings"
"sync"
"time"
"github.com/golang/glog"
...
...
@@ -74,11 +75,13 @@ func newSystemCgroups(containerName string) *systemContainer {
}
type
containerManagerImpl
struct
{
sync
.
RWMutex
cadvisorInterface
cadvisor
.
Interface
mountUtil
mount
.
Interface
NodeConfig
// External containers being managed.
systemContainers
[]
*
systemContainer
periodicTasks
[]
func
()
}
var
_
ContainerManager
=
&
containerManagerImpl
{}
...
...
@@ -225,12 +228,16 @@ func (cm *containerManagerImpl) setupNode() error {
}
systemContainers
=
append
(
systemContainers
,
cont
)
}
else
{
cont
,
err
:=
getContainerNameForProcess
(
"docker"
)
if
err
!=
nil
{
glog
.
Error
(
err
)
}
else
{
cm
.
periodicTasks
=
append
(
cm
.
periodicTasks
,
func
()
{
cont
,
err
:=
getContainerNameForProcess
(
"docker"
)
if
err
!=
nil
{
glog
.
Error
(
err
)
return
}
cm
.
Lock
()
defer
cm
.
Unlock
()
cm
.
RuntimeCgroupsName
=
cont
}
}
)
}
}
...
...
@@ -267,12 +274,17 @@ func (cm *containerManagerImpl) setupNode() error {
}
systemContainers
=
append
(
systemContainers
,
cont
)
}
else
{
cont
,
err
:=
getContainer
(
os
.
Getpid
())
if
err
!=
nil
{
glog
.
Error
(
"failed to find cgroups of kubelet - %v"
,
err
)
}
else
{
cm
.
periodicTasks
=
append
(
cm
.
periodicTasks
,
func
()
{
cont
,
err
:=
getContainer
(
os
.
Getpid
())
if
err
!=
nil
{
glog
.
Error
(
"failed to find cgroups of kubelet - %v"
,
err
)
return
}
cm
.
Lock
()
defer
cm
.
Unlock
()
cm
.
KubeletCgroupsName
=
cont
}
}
)
}
cm
.
systemContainers
=
systemContainers
...
...
@@ -295,6 +307,8 @@ func getContainerNameForProcess(name string) (string, error) {
}
func
(
cm
*
containerManagerImpl
)
GetNodeConfig
()
NodeConfig
{
cm
.
RLock
()
defer
cm
.
RUnlock
()
return
cm
.
NodeConfig
}
...
...
@@ -325,6 +339,14 @@ func (cm *containerManagerImpl) Start() error {
}
},
time
.
Minute
,
wait
.
NeverStop
)
go
wait
.
Until
(
func
()
{
for
_
,
task
:=
range
cm
.
periodicTasks
{
if
task
!=
nil
{
task
()
}
}
},
5
*
time
.
Minute
,
wait
.
NeverStop
)
return
nil
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment