0

We currently have a variety of systems (Linux, Solarix, *BSD, HP-UX ...) on which we are not allowed to install anything into / (but I have root access. That's strange, I know). But we'd like to run Puppet on all of them. So, the obvious idea is to install Puppet with all prebuilt dependencies into some isolated tree, something like "jail", which will allow to use dependences from some prefix and to access the host system. The big advatanges would be uniform deployment and updates.

One solution that came to my mind is to deploy Gentoo Prefix, and install Puppet there with package manager. However, this requires a lot of extra space and some manual patching for each system.

Maybe there are some more elegant and simple solutions?

Uwe L. Korn
  • 224
  • 1
  • 14
  • You should quickly get rid of the person setting up these rules... – Christopher Perrin Oct 08 '12 at 13:32
  • _Everything_ is under `/`. So you can't install anything at all on the servers? That makes them kind of useless. – Michael Hampton Oct 08 '12 at 14:09
  • Michael, yes, we can't install custom software. Those are production servers, which typically do one single job: oracle, apache, etc. List of software is issued by the customer and we can't change it. – Alexander Oct 08 '12 at 16:43
  • Maybe "jail" is a wrong term. Do you mean installing Puppet and its dependences into a different location, like /opt? – Rilindo Oct 09 '12 at 00:22
  • Rilindo, yes, maybe "jail" is a little misleading. However, because I want some universal way of doing it, this probably has to be some sort of wrapper, which I can't think a name for. – Alexander Oct 09 '12 at 07:47

2 Answers2

0

Puppet Enterprise installs all of its libraries into the /opt/puppet directory to avoid messing with system Ruby. It will add cache and logs to parts of /var, and agent configuration files into /etc, but you can configure all that in puppet.conf.

James
  • 51
  • 2
0

So you can't install things, but you can use Puppet to modify system configuration settings? That seems like a pretty arbitrary rule.

You really aren't going to find one cross-platform way of doing this, it's going to be a different setup on each system.

devicenull
  • 5,622
  • 1
  • 26
  • 31