----- Original Message -----
| Hi,
|
| I notice that many components of puppet do not scale well and are not
| intended for large environment. For example, stored config and
| inventory service. In order to scale, we need to use puppetDB, right?
| Another example is the webrick, and which should be replaced by a
| decent web server such as apache. All these need a lot of new
| installation of pieces of software and configurations.
|
| My question is why the designer of puppet did not consider this and
| integrate everything into a complete solution at the beginning,
| rather
| than having us have to reconfigure everything by hand. Who will use
| puppet if he has only 50 nodes?
|
| --
| Hai Tao
I'm sure that the designers of puppet made every effort to make puppet as
usable and scalable as they could when it was being designed. This is proven
time and time again but the sites that currently have puppet deployed with tens
of thousands of nodes. You should take care when making such bold statements,
but I assume of course that it was not you intention to insult anyone.
We originally rolled puppet out with 10 machines. Managing 10 machines without
puppet was 10 times more work than managing 10 machines with puppet. We had to
log into each host and apply updates as appropriately. We had to develop
management scripts to manage them as well. Puppet helped unify this and ensure
less drift between machines so any more than one machine and puppet can be
really handy.
Now the other thing is that much of Puppet's configuration options can be
swapped out for better scalability. For example the default storage backend
could be MySQL, PostgreSQL or PuppetDB. The built in webrick server swapped
for {Apache,cherokee,nginx}+passenger. The management from CLI to something
like Puppet Dashboard, The Foreman or the Puppet Enterprise solution. It's
completely up to you the route you take.
So does puppet scale well for large environments by default no, but that's ok,
swap out a component that's the bottleneck and move on. It seems that your
complaint is that there isn't a single "all-in-one" solution for you to choose
from, when in fact there is, Puppet Enterprise. This comes with all the tools
you'd need to scale puppet in a "black box" style. If you're too cheap and
don't want to pay for that you can try The Foreman installer which does a
pretty good job of installing the toolchain to scale puppet to larger
environments using Apache and Passenger and you don't really need to know squat
about how the components go together. You could find a "How To" or tutorial
online and just follow it line by line if you want to! Go for it!
At any rate, you're going to have to learn about the toolchain associated with
scaling puppet anyway. You're going to need to learn how to monitor and tweak
Apache and Passenger if you need to scale the web components. You're going to
need to know how to tweak MySQL, PostgreSQL or Puppet DB for stored configs.
For PuppetDB you're also going to have to learn a bit about tuning Java to make
it scale too!
Learn the tools or pay for a tuned black box. You can't have it both ways. If
you want a rather simple way to deploy Puppet+Apache+Passenger+The Foreman, use
The Foreman installer which works quite well. Have fun!
--
James A. Peltier
Manager, IT Services - Research Computing Group
Simon Fraser University - Burnaby Campus
Phone : 778-782-6573
Fax : 778-782-3045
E-Mail : [email protected]
Website : http://www.sfu.ca/itservices
http://blogs.sfu.ca/people/jpeltier
Success is to be measured not so much by the position that one has reached
in life but as by the obstacles they have overcome. - Booker T. Washington
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.