Add eviction-pressure-transition-period flag to kubelet

This commit is contained in:
derekwaynecarr
2016-05-10 17:12:01 -04:00
parent 08440b5dcc
commit 2c01edf9ea
8 changed files with 55 additions and 33 deletions

View File

@@ -188,6 +188,10 @@ func UnsecuredKubeletConfig(s *options.KubeletServer) (*KubeletConfig, error) {
if err != nil {
return nil, err
}
evictionConfig := eviction.Config{
PressureTransitionPeriod: s.EvictionPressureTransitionPeriod.Duration,
Thresholds: thresholds,
}
return &KubeletConfig{
Address: net.ParseIP(s.Address),
@@ -267,8 +271,8 @@ func UnsecuredKubeletConfig(s *options.KubeletServer) (*KubeletConfig, error) {
HairpinMode: s.HairpinMode,
BabysitDaemons: s.BabysitDaemons,
ExperimentalFlannelOverlay: s.ExperimentalFlannelOverlay,
NodeIP: net.ParseIP(s.NodeIP),
Thresholds: thresholds,
NodeIP: net.ParseIP(s.NodeIP),
EvictionConfig: evictionConfig,
}, nil
}
@@ -513,7 +517,7 @@ func SimpleKubelet(client *clientset.Clientset,
configFilePath string,
cloud cloudprovider.Interface,
osInterface kubecontainer.OSInterface,
fileCheckFrequency, httpCheckFrequency, minimumGCAge, nodeStatusUpdateFrequency, syncFrequency, outOfDiskTransitionFrequency time.Duration,
fileCheckFrequency, httpCheckFrequency, minimumGCAge, nodeStatusUpdateFrequency, syncFrequency, outOfDiskTransitionFrequency, evictionPressureTransitionPeriod time.Duration,
maxPods int,
containerManager cm.ContainerManager, clusterDNS net.IP) *KubeletConfig {
imageGCPolicy := kubelet.ImageGCPolicy{
@@ -524,7 +528,9 @@ func SimpleKubelet(client *clientset.Clientset,
DockerFreeDiskMB: 256,
RootFreeDiskMB: 256,
}
evictionConfig := eviction.Config{
PressureTransitionPeriod: evictionPressureTransitionPeriod,
}
kcfg := KubeletConfig{
Address: net.ParseIP(address),
CAdvisorInterface: cadvisorInterface,
@@ -582,6 +588,7 @@ func SimpleKubelet(client *clientset.Clientset,
VolumePlugins: volumePlugins,
Writer: &io.StdWriter{},
OutOfDiskTransitionFrequency: outOfDiskTransitionFrequency,
EvictionConfig: evictionConfig,
}
return &kcfg
}
@@ -783,7 +790,7 @@ type KubeletConfig struct {
Writer io.Writer
VolumePlugins []volume.VolumePlugin
OutOfDiskTransitionFrequency time.Duration
Thresholds []eviction.Threshold
EvictionConfig eviction.Config
ExperimentalFlannelOverlay bool
NodeIP net.IP
@@ -880,7 +887,7 @@ func CreateAndInitKubelet(kc *KubeletConfig) (k KubeletBootstrap, pc *config.Pod
kc.ContainerRuntimeOptions,
kc.HairpinMode,
kc.BabysitDaemons,
kc.Thresholds,
kc.EvictionConfig,
kc.Options,
)