Page MenuHomePhabricator

Reduce the effects of puppet breakage on VPS
Open, MediumPublic

Description

This is a master task for issues raised during a recent summit session. Topics include:

  • How is puppet used on VPS?
  • Can the admin use case be separated from the user/customization use case?
  • Should we try to fork some of the puppet modules used on VPS out of the production puppet repo?
  • Is there a way to introduce module versioning to minimize surprise breakages?

Event Timeline

Here are some usage stats:

https://phabricator.wikimedia.org/P8638

As expected, relatively many projects use zero or few user-applied modules, and a small number of projects use very many modules.

And, here is some info about the base classes applied to a VM vs a production machine:

https://phabricator.wikimedia.org/P8639

Lots of shared code in there! The unshared things are pretty clearly hardware vs. virtualization things.

I have an (ironically) unpuppetized example of a dual-run setup running now:

abogott-dual-puppet-base-master.testlabs.eqiad.wmflabs serves only role::wmcs::instance for all clients
abogott-dual-puppet-master.testlabs.eqiad.wmflabs serves only Horizon-selected puppet classes, nothing from role::wmcs::instance

On abogott-dual-puppet-client.testlabs.eqiad.wmflabs...

  1. # sync with the base puppetmaster
  2. puppet agent -tv --config /etc/basepuppet/puppet.conf
  3. # sync with horizon-configured things:
  4. puppet agent -tv

There are several questions to answer here but I don't hate how this is behaving so far.

Andrew triaged this task as Medium priority.Jan 14 2020, 5:18 PM

This is still important but lacking a good way to move forward.