6

I've 4 Linux machines (1 32-bit laptop, 1 64-bit laptop, 1 64-bit desktop and 1 Raspberry Pi 2). Is there some opensource software to manage the installed packages, the configurations and the users on it? Also, it must be easy to add a 5th machine. If it requires a server, that server needs to run on a Raspberry Pi B+.

1
  • 3
    Not a full answer: I'm sitting in the same boat (64bit laptop, desktop, and multiple BananaPis). I found ClusterSSH being a big help in keeping them up-to-date (running apt-get update && apt-get upgrade on all of them simultaneously). A "real management tool" sounds interesting, though :)
    – Izzy
    Jul 18, 2016 at 9:53

3 Answers 3

3

I was using Ansible for a similar size home cloud in my experimental project (I have Raspberry Pi as well).

The base CLI functionality is open source and free, the GUI (called Tower) is for money. In case of such low number of nodes, CLI is comfortable enough. It's using YML as configuration language (which I don't really like, but it's my personal problem).

There are minimal requirements for the host:

  • ssh daemon running
  • python installed

As you see, no agent is required, you only have to set up an account (with sudo rights) on the node.

You can organize your nodes by roles, and you can set up "playbooks", which contain items for specific roles or role groups.

Say, you set up "sql server" and "web server" roles, and create a "setup" playbook. Then you can define tasks "upgrade packages" for both rules, and "assume apache2 is installed" for only the "web server" role (it installs stuff if it's not installed, and does nothing if it's already installed).

Ansible has lot of modules in several function groups, but you can write yours in Python (I haven't needed it).

1
  • It looks good, especially that it's written in Python. I'm going to try this soon…
    – wb9688
    Jul 20, 2016 at 15:05
2

It sounds like you need chef:

  • Open Source and commercial
  • Runs on Windows, OS-X & Linux including Raspberry Pi
  • Highly scaleable so adding one or more more machines is simple
  • Can manage versioning, upgrades, user & rights
  • Lots of online "recipes" for common tasks
  • Good online learning material
2

One more to consider is Puppet

https://puppet.com/

Much like Chef they have open-source and commercial models.

Having used both I would say that although less configurable in the long run, Puppet has a shallower learning curve and is easier to get started with.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.