-
-
Notifications
You must be signed in to change notification settings - Fork 178
"server_daemonize = true" should be the default #325
Comments
Which version of MCollective are you using? Because it works fine on our 12.04 and 14.04 machines running MCollective 2.9.0 (2.8.x also worked fine), installed from the Puppetlabs-provided packages. If you look at the init.d script The rationale is discussed in https://tickets.puppetlabs.com/browse/MCO-167 and https://tickets.puppetlabs.com/browse/MCO-181 but the TL;DR is that this way you can start MCollective via init.d or Upstart without having to also touch the |
14.04 uses mcollective v2.0 These are directly from the Ubuntu repos. Does the module require the use of puppetlabs repos? Or a higher mcollective version? If so, I suppose I can submit a pull request for some version verification. I can verify that 14.04 works with v2.0, but only with $server_daemonize = true, otherwise the init.d script will hang. This is the start-stop-daemon from v2.0 from Ubuntu's package repo. start-stop-daemon --start --quiet --pidfile /var/run/mcollective.pid --startas /usr/sbin/mcollectived -- --config=/etc/mcollective/server.cfg --pid=/var/run/mcollective.pid |
So the Ubuntu-provided packages use init.d scripts and not Upstart? Then this is indeed problematic, as you have reported. I think this module is written with the Puppetlabs-provided packages in mind (it was originally developed by Puppetlabs, after all) so you should really think about using these packages instead. At least with Puppet 3.8 and Ubuntu 12.04 and 14.04 you should be fine; the packages work very well, as do the packaged plugins (like shell, puppet, filemgr, and so on). Plus 1.2.1 and 2.0 are really old by now. Once you go into Puppet 4 AIO and Ubuntu 16.04 territory things will get more complicated: MCollective is provided by the AIO puppet-agent package and none of the plugins are packaged for 16.04/PC1 and the AIO layout. See https://tickets.puppetlabs.com/browse/MCO-722 for some discussion. |
The more that I dig and attempt to set up an MCollective SSL based infrastructure with Puppet as the primary agent, the more I understand "I think this module is written with the Puppetlabs-provided packages in mind". There is no mcollective-puppet-agent installed in Ubuntu's default repos. These are only provided by PuppetLabs and to top things off the docs point to the PC1 repo, not the full repo, which is where the MCollective agent resides. Can we get some validation to ease up this bumpy ride? Can we assume that this module is configuring an mcollective server or client and an mcollective puppet agent if installing a server? It's a Puppet module for god sake, how many want the server without the agent? At the least, can we add a parameter to install it? Something like
If so.. mcollective-puppet-agent should be installed or puppet.rb should be placed in the appropriate agent directory. mcollective >= 2.2 needs to be installed. |
I apologize. Just saw the option. mcollective::plugin { 'puppet': Forget my comment regarding mcollective-puppet-agent. |
Puppet agent: 3.4.3
OS: Ubuntu 12.04 och 14.04
This clause is causing me problems and I'm not sure why it's even there:
manifests/defaults.pp
if ($::operatingsystem == 'Ubuntu' and versioncmp($::operatingsystemrelease, '14.10') <= 0){ $server_daemonize = false # See https://tickets.puppetlabs.com/browse/MCO-167 } else { $server_daemonize = true }
A server.cfg with a daemonize = 0 will cause the mcollective init script to hang in 12.04 and 14.04 (and I presume any versions less than that).
The text was updated successfully, but these errors were encountered: