Git Product home page Git Product logo

ansible-swapfile's People

Contributors

kamaln7 avatar rosshinkley avatar vesse avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

ansible-swapfile's Issues

Would you mind tagging version 0.4?

Hi!

I see you've set version 0.4 in meta/main.yml - could I trouble you to create a git tag and push that tag to github?

Should be as simple as 'git tag 0.4' and then 'git push --tags'. I hope :)

Thanks!

Despite Default Role 489M Swap size shown

I just set up swap using the default which should be 512MB

---
swapfile_location: /swapfile
swapfile_size: 512MB
swapfile_swappiness: False
swapfile_vfs_cache_pressure: False
swapfile_use_dd: False

But when I check my Digital Ocean Ubuntu 17.4. 64 bits droplet I see 488 kilobits:

root@larastudio:~# swapon -s
Filename				Type		Size	Used	Priority
/swapfile                              	file    	499996	0	-1

And when I run ls -lh /swapfile I get less than 512MB or 489:

root@larastudio:~# ls -lh /swapfile
-rw------- 1 root root 489M Jun 14 09:36 /swapfile

Any ideas why?

No longer idempotent?

It seems like this role is tearing down and setting up the swapfile every time I run my playbook. I am pretty sure that it left the swapfile alone if it was already appropriate in the last version. Is it possible to fix the check as to whether it needs to do anything or not?

Defaults for swapfile_swappiness and swapfile_vfs_cache_pressure

Hi

Thanks for a great ansible role :)

I was wondering if you'd consider changing the behaviour of the swappiness / cache pressure?

I think the most normal use of Ansible is on servers rather than on desktops - and in that case the default swappiness/cache pressure values are probably most appropriate.

I've come up with a few options/ideas here:

Split Roles

Split the function of configuring swappiness and other values into a new and separate role like kamaln7.swapparams or something similar.

Default to keeping existing config

If no variable is set, then no change is made - and the system keeps the OS defaults.

This way if someone includes a different role that also manages the values, there'll be no conflict. This is likely fiddly to do at an Ansible level, since it might have to inspect the existing /proc values

Use the Linux defaults

If you default the values to the standard linux values of 60/100 it'd at least mean no unexpected changes in most cases.

Document

Just clearly mark that the values will change in an example somewhere :) This is probably easiest!

Thanks again!

Oskar

Falling back to dd

Either a bug or a warning, {{ swapfile_size }} having the units in the example doesn't work if you fall-back to dd, as the corresponding "count" parameter for dd should just be an integer. If you give it units, it will obediently convert them back to bytes first.

Worked example with

swapfile_size=512MB
swapfile_use_dd=False
--
fallocate -l {{ swapfile_size }} {{ swapfile_location }} creates={{ swapfile_location }}

will create a 512MB swapfile, but

swapfile_size=512MB
swapfile_use_dd=True
--
dd if=/dev/zero of={{ swapfile_location }} bs=1M count={{ swapfile_size }} creates={{ swapfile_location }}

will create a 512000000MB or 512 terabyte swap file, which for my purposes is a little excessive.

fallocate not available on all filesystems

On an ext3 filesystem, fallocate fails with:

stderr: fallocate: /swapfile: fallocate failed: Operation not supported

from the man page:

      As  of the Linux Kernel v2.6.31, the fallocate system call is supported
       by the btrfs, ext4, ocfs2, and xfs filesystems.

...either an error message when the filesystem is unsupported or alternate allocation type would be appreciated.

A more reliable alternative is to use dd instead of fallocate:

sudo dd if=/dev/zero of=/mnt/512MiB.swap bs=1024 count=524288
sudo chmod 600 /mnt/512MiB.swap

see: https://help.ubuntu.com/community/SwapFaq#How_do_I_add_more_swap.3F

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.