Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: disable swap for executor_linux allocations #3958

Merged
merged 2 commits into from
Mar 13, 2018
Merged

fix: disable swap for executor_linux allocations #3958

merged 2 commits into from
Mar 13, 2018

Commits on Mar 13, 2018

  1. fix: disable swap for executor_linux allocations

    A comment in the nomad source code states that swapping for
    executor_linux allocations is disabled but it wasn't.
    
    Nomad wrote -1 to the memsw.limit_in_bytes cgroup file to disable
    swapping.
    This has the following problems:
    
    1.) Writing -1 to the file does not disable swapping. It sets
        the limit for memory and swap to unlimited.
    2.) On common Linux distributions like Ubuntu 16.04 LTS the
        memsw.limit_in_bytes cgroup file does not exist by default.
        The memsw.limit_in_bytes file only exist if the Linux kernel is
        build with CONFIG_MEMCG_SWAP=yes and either
        CONFIG_MEMCG_SWAP_ENABLED=yes or when the kernel parameter
        swapaccount=1 is passed during boot.
        Most Linux distributions disable swap accounting by default because
        of higher memory usage.
        Nomad silently ignores if writing to the memsw.limit_in_bytes file
        fails. The allocation succeeds, no message is logged to notify the
        user.
    
    To ensure that disabling swap works on common Linux kernels, disable
    swapping by writing 0 to the memory.swappiness file.
    Using the memory.swappiness file only requires that the kernel is
    compiled with CONFIG_MEMCG=yes. This is the default in common Linux
    kernels.
    fho committed Mar 13, 2018
    Configuration menu
    Copy the full SHA
    fbc461b View commit details
    Browse the repository at this point in the history
  2. Add #3958 to changelog

    schmichael committed Mar 13, 2018
    Configuration menu
    Copy the full SHA
    6c9dc48 View commit details
    Browse the repository at this point in the history