kubernetes: k8s.io/kubernetes/pkg/util/sysctl Index | Files | Directories

package sysctl

import "k8s.io/kubernetes/pkg/util/sysctl"

Index

Package Files

sysctl.go

Constants

const (

    // VMOvercommitMemory refers to the sysctl variable responsible for defining
    // the memory over-commit policy used by kernel.
    VMOvercommitMemory = "vm/overcommit_memory"
    // VMPanicOnOOM refers to the sysctl variable responsible for defining
    // the OOM behavior used by kernel.
    VMPanicOnOOM = "vm/panic_on_oom"
    // KernelPanic refers to the sysctl variable responsible for defining
    // the timeout after a panic for the kernel to reboot.
    KernelPanic = "kernel/panic"
    // KernelPanicOnOops refers to the sysctl variable responsible for defining
    // the kernel behavior when an oops or BUG is encountered.
    KernelPanicOnOops = "kernel/panic_on_oops"
    // RootMaxKeys refers to the sysctl variable responsible for defining
    // the maximum number of keys that the root user (UID 0 in the root user namespace) may own.
    RootMaxKeys = "kernel/keys/root_maxkeys"
    // RootMaxBytes refers to the sysctl variable responsible for defining
    // the maximum number of bytes of data that the root user (UID 0 in the root user namespace)
    // can hold in the payloads of the keys owned by root.
    RootMaxBytes = "kernel/keys/root_maxbytes"

    // VMOvercommitMemoryAlways represents that kernel performs no memory over-commit handling.
    VMOvercommitMemoryAlways = 1
    // VMPanicOnOOMInvokeOOMKiller represents that kernel calls the oom_killer function when OOM occurs.
    VMPanicOnOOMInvokeOOMKiller = 0

    // KernelPanicOnOopsAlways represents that kernel panics on kernel oops.
    KernelPanicOnOopsAlways = 1
    // KernelPanicRebootTimeout is the timeout seconds after a panic for the kernel to reboot.
    KernelPanicRebootTimeout = 10

    // RootMaxKeysSetting is the maximum number of keys that the root user (UID 0 in the root user namespace) may own.
    // Needed since docker creates a new key per container.
    RootMaxKeysSetting = 1000000
    // RootMaxBytesSetting is the maximum number of bytes of data that the root user (UID 0 in the root user namespace)
    // can hold in the payloads of the keys owned by root.
    // Allocate 25 bytes per key * number of MaxKeys.
    RootMaxBytesSetting = RootMaxKeysSetting * 25
)

type Interface Uses

type Interface interface {
    // GetSysctl returns the value for the specified sysctl setting
    GetSysctl(sysctl string) (int, error)
    // SetSysctl modifies the specified sysctl flag to the new value
    SetSysctl(sysctl string, newVal int) error
}

Interface is an injectable interface for running sysctl commands.

func New Uses

func New() Interface

New returns a new Interface for accessing sysctl

Directories

PathSynopsis
testing

Package sysctl imports 4 packages (graph) and is imported by 599 packages. Updated 2019-06-14. Refresh now. Tools for package owners.