Merge pull request #1340 from devimc/topic/noJournald

pkg: reduce memory footprint
This commit is contained in:
James O. D. Hunt 2019-03-11 14:37:48 +00:00 committed by GitHub
commit cad58e8a2d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 64 additions and 3 deletions

View File

@ -672,7 +672,7 @@ func updateRuntimeConfigShim(configPath string, tomlConf tomlConfig, config *oci
// SetKernelParams adds the user-specified kernel parameters (from the
// configuration file) to the defaults so that the former take priority.
func SetKernelParams(runtimeConfig *oci.RuntimeConfig) error {
defaultKernelParams := GetKernelParamsFunc(needSystemd(runtimeConfig.HypervisorConfig))
defaultKernelParams := GetKernelParamsFunc(needSystemd(runtimeConfig.HypervisorConfig), runtimeConfig.Trace)
if runtimeConfig.HypervisorConfig.Debug {
strParams := vc.SerializeParams(defaultKernelParams, "=")

View File

@ -1414,7 +1414,7 @@ func TestUpdateRuntimeConfigurationInvalidKernelParams(t *testing.T) {
GetKernelParamsFunc = savedFunc
}()
GetKernelParamsFunc = func(needSystemd bool) []vc.Param {
GetKernelParamsFunc = func(needSystemd, trace bool) []vc.Param {
return []vc.Param{
{
Key: "",

View File

@ -37,11 +37,72 @@ var systemdKernelParam = []vc.Param{
},
}
func getKernelParams(needSystemd bool) []vc.Param {
// kernel params to improve memory footprint
var noTraceKernelParam = []vc.Param{
// No logs: agent has its own logging system
{
Key: "systemd.mask",
Value: "systemd-journald.service",
},
{
Key: "systemd.mask",
Value: "systemd-journald.socket",
},
{
Key: "systemd.mask",
Value: "systemd-journal-flush.service",
},
// No udev events: agent implements udev events
{
Key: "systemd.mask",
Value: "systemd-udevd.service",
},
{
Key: "systemd.mask",
Value: "systemd-udevd.socket",
},
{
Key: "systemd.mask",
Value: "systemd-udev-trigger.service",
},
// No timesync: kata is able to setup the time and this service consume network
{
Key: "systemd.mask",
Value: "systemd-timesyncd.service",
},
// No update audit logs
{
Key: "systemd.mask",
Value: "systemd-update-utmp.service",
},
// No temporal files
{
Key: "systemd.mask",
Value: "systemd-tmpfiles-setup.service",
},
{
Key: "systemd.mask",
Value: "systemd-tmpfiles-cleanup.service",
},
{
Key: "systemd.mask",
Value: "systemd-tmpfiles-cleanup.timer",
},
// No mounts
{
Key: "systemd.mask",
Value: "tmp.mount",
},
}
func getKernelParams(needSystemd, trace bool) []vc.Param {
p := []vc.Param{}
if needSystemd {
p = append(p, systemdKernelParam...)
if !trace {
p = append(p, noTraceKernelParam...)
}
}
return p