Questions tagged [puppet]

Puppet is a configuration management tool (Unix & Windows) with its own Domain Specific Language.

Puppet is a configuration management tool for Unix and Windows. It works either standalone mode (puppet apply) or in client-server mode (puppet agent) with puppet agents running on client systems checking in with the master daemon on the server on a regular basis. Puppet's written in ruby, and puppet source code, i.e. puppet manifests, uses its own domain-specific language that focuses on declaring the system resources and it's intended state.

Combined with system provisioning tools (PXE, kickstart, FAI, etc), puppet can fully automate any software installation and configuration process that doesn't require a GUI interface.

More info:

Related:

1792 questions
9
votes
1 answer

Can Vagrant point to a directory of Puppet manifests for execution?

I am using Vagrant to jump start some initial Puppet config and am confused on how to include/run multiple manifests (other than just site.pp) in the puppet execution workflow without making the extra manifests into modules and including them that…
SeligkeitIstInGott
  • 179
  • 2
  • 5
  • 19
9
votes
6 answers

Is Puppet or Chef suitable for managing very basic server config in a multi tenant environment?

This relates to multi-tenant environments such as a small hosting company. Is Puppet (or similar) a suitable technology for taking care of basic but critical mass changes? For example: Updating DNS resolvers (resolv.conf) Setting SSH keys Updating…
SimonJGreen
  • 3,205
  • 5
  • 33
  • 55
9
votes
1 answer

A same class/module/orwhateveritis multiple times

Puppet must hate me. I have been reading the doc for hours on end and still cannot manage to achieve the following: a class or module (or what is it called) with a variable in it (a parameterized class?); this class to be included multiple times in…
fge
  • 318
  • 2
  • 6
9
votes
1 answer

How can I have puppet only set password when creating a user?

I want Puppet not to manage a password (i.e., reset it when it's changed) but to set the initial password when Puppet creates the user. I was thinking of doing a notify to an Exec resource that sets the password but this is triggered when any…
Belmin Fernandez
  • 10,799
  • 27
  • 84
  • 148
9
votes
2 answers

Installing open-vm-tools in Ubuntu via Puppet; what's the lesser evil?

In an ideal world, configuring puppet to install the open-vm-tools should be as simple as this: class vm-tools { package { 'open-vm-tools': ensure => installed } package { 'open-vm-dkms': ensure => installed } } But,…
Shane Madden
  • 114,520
  • 13
  • 181
  • 251
8
votes
2 answers

SSH keys management system

I'm looking to switch from password based (which I starting to become overwhelmed with) to SSH keys based system. I'd like to know if there any SSH keys management system or server solution, which would allow me to distribute and revoke keys over…
SyRenity
  • 3,179
  • 11
  • 57
  • 79
8
votes
4 answers

Configuration management: Cross-machine dependencies

I've used tools like puppet to manage individual systems, with generally a high level of success. Where puppet falls down is that it isn't good at managing dependencies outside of an individual server. For example, on a MySQL server I configure…
Jon Topper
  • 802
  • 9
  • 17
8
votes
1 answer

How can I deploy rolling OS upgrades & reboots with Puppet or MCollective?

I'm looking for the best way to perform regular rolling upgrades for my infrastructure. Typically, this involves doing this on each host, one at a time: sudo yum update -y && sudo reboot But, I'm hitting limits of that being a scalable. I want to…
pioto
  • 331
  • 1
  • 4
  • 13
8
votes
2 answers

Run puppet exec command only if output file has changed

I am using an exec command to run a shell script which modifies certain configuration files of other packages. The exec command is triggered whenever input parameters such as ip addresses, ports or url change, or when the shell script itself has…
nn4l
  • 1,336
  • 5
  • 23
  • 40
8
votes
7 answers

Version Controlling Foreman & Puppet

I have just setup Foreman for the first time & am not sure how to go about putting all of my configurations under version control. I know I can use Git for each module I install on my Puppet master but would prefer a more holistic solution that…
GeneBean
  • 323
  • 1
  • 4
  • 11
8
votes
1 answer

How to disable user's password via puppet securely?

I have my SSH servers setup to use only Public Key authentication with password authentication disabled. When adding users through puppet I would like to disable user passwords. So far I have came up with this, which seems to work, but I am not sure…
ek9
  • 2,093
  • 4
  • 19
  • 23
8
votes
4 answers

How can I have puppet deploy ssh keys for virtual users?

I am trying to get puppet to assign authorized ssh keys for virtual users but I keep getting the following error: err: Could not retrieve catalog: Could not parse for environment production: Syntax error at 'user'; expected '}' at…
Pheezy
  • 251
  • 1
  • 3
  • 5
8
votes
3 answers

Puppet: Trying to configure puppet client for first use but got some problems with certificates

I'm trying to configure my clinet 'Itai-test' to receive puppet settings from the puppet server which is called 'puppetmaster'. On the server I ran: [root@puppetmaster requests]# puppet cert --generate itai-test.domain Error: A Certificate already…
Itai Ganot
  • 10,644
  • 29
  • 93
  • 146
8
votes
3 answers

Is it possible to use Puppet to ensure multiple files in a directory are present without defining all of them?

I have a couple hundred one-off servers that have different configuration files that need to be present in a directory. Copies of the files reside on the puppet master. Within one of my classes I have a default set of configurations that are always…
Freshy
  • 81
  • 1
  • 1
  • 3
8
votes
1 answer

Determine / set Puppet environment

I'm trying to determine what Puppet thinks the environment is on my agent nodes. Per the documentation I've configured the agent's environment in /etc/puppet/puppet.conf as such [agent] environment = development In order to view the environment…
quickshiftin
  • 2,125
  • 5
  • 27
  • 41