tdenson
Posts: 153
Joined: Tue May 13, 2014 1:51 pm

Distributing software

Sun Apr 05, 2015 6:24 pm

Is there an automatic way of distributing new software and updates to a network of Raspberry Pis ? I notice there is something called ansible for Ubuntu which seems to do this, but is not available on the Pi as far as I know.

User avatar
DougieLawson
Posts: 39120
Joined: Sun Jun 16, 2013 11:19 pm
Location: A small cave in deepest darkest Basingstoke, UK
Contact: Website Twitter

Re: Distributing software

Sun Apr 05, 2015 6:31 pm

What makes you think that https://github.com/ansible/ansible won't run on a RPi?
Note: Any requirement to use a crystal ball or mind reading will result in me ignoring your question.

Criticising any questions is banned on this forum.

Any DMs sent on Twitter will be answered next month.
All non-medical doctors are on my foes list.

jwatte
Posts: 203
Joined: Sat Aug 13, 2011 7:28 pm

Re: Distributing software

Sun Apr 05, 2015 9:10 pm

How big is the set of devices? Do you have control of all of them?

For something simple, you could set up a master repository (a directory with ssh shell access for some user) and set up a crontab that does rsync from that master on each of the devices at a frequency you decide.

You could also use various configuration management systems, like cfengine, puppet, etcd, or nix, depending on how hard-core you want to go into system configuration management.

It all depends on what your particular requirements and deployment scenarios are!

User avatar
B.Goode
Posts: 10356
Joined: Mon Sep 01, 2014 4:03 pm
Location: UK

Re: Distributing software

Sun Apr 05, 2015 9:26 pm


tdenson
Posts: 153
Joined: Tue May 13, 2014 1:51 pm

Re: Distributing software

Mon Apr 06, 2015 1:41 pm

DougieLawson wrote:What makes you think that https://github.com/ansible/ansible won't run on a RPi?
Simply that I read that it was only available for Ubuntu and Red Hat - although I guess I haven't considered the possibility of compiling it from source which is not something I generally do, although I suppose it's about time I did !

tdenson
Posts: 153
Joined: Tue May 13, 2014 1:51 pm

Re: Distributing software

Mon Apr 06, 2015 1:47 pm

jwatte wrote:How big is the set of devices? Do you have control of all of them?

For something simple, you could set up a master repository (a directory with ssh shell access for some user) and set up a crontab that does rsync from that master on each of the devices at a frequency you decide.

You could also use various configuration management systems, like cfengine, puppet, etcd, or nix, depending on how hard-core you want to go into system configuration management.

It all depends on what your particular requirements and deployment scenarios are!
I currently have 6 Pis on the same network, and yes I have complete control of them all. The main thing I would like to replicate across them is the installation of software, I want to keep them all identical. It would also be nice, but not essential to replicate changes to configuration files such as crontab and startup files. I have another possible strategy which is to keep a master SD card and every so often duplicate it and physically replace the card in each Pi (the only thing that is different between them is the hostname). This falls down if my users start keeping private files on those cards, although I may use the Windows 7 server as a file server and have all personal files saved there. As you can tell I am still thinking this through.

tdenson
Posts: 153
Joined: Tue May 13, 2014 1:51 pm

Re: Distributing software

Mon Apr 06, 2015 4:10 pm

B.Goode wrote:PiNet? http://pinet.org.uk/
That's an interesting approach, I'd never heard of PiNet until your post. I've had a quick skim through the user doc and it looks a real possibility. Would you happen to know if there is any significant performance hit loading the OS (and apps ?) across the network ?

Return to “Advanced users”