On Thu, 2010-02-18 at 08:13 -0800, Nigel Kersten wrote: > On Thu, Feb 18, 2010 at 8:04 AM, Brice Figureau > <[email protected]> wrote: > > On Thu, 2010-02-18 at 07:52 -0800, Nigel Kersten wrote: > >> +puppet-users, puppet-dev to catch the developer-y folks too. > >> > >> > >> How, if at all, do any of you do capacity planning with Puppet? > >> > >> I've worked out a snippet of ruby code that will take the cached fact > >> data from the servers, and use that to issue a bunch of catalog > >> retrieval requests. I ended up modifying my auth.conf (such an > >> awesomely flexible setup) > > > > Thanks :-) > > It really is great work Brice. It's as simple as changing the first > auth definiton to: > > # allow nodes to retrieve their own catalog (ie their configuration) > path ~ ^/catalog/([^/]+)$ > method find > allow $1 > allow my-benchmarking-client > > > > > > >> to allow a given certificate to request > >> anyone's catalogs, which made this all a lot easier. > >> > >> I'm now looking at jmeter to issue the https with client certificate > >> GET requests, and before I dive too deeply into scripting jmeter, I > >> thought I'd see what anyone else is doing in this space. > > > > I'm not familiar with jmeter, but I suppose you want to measure request > > service time. But what would also be interesting is memory and or CPU > > consumption on the host. I'm not sure jmeter can gather those metrics by > > itself. > > I agree that's useful info to get, but there's a sense in which I > don't care what state the puppetmaster is in, so long as it can still > provide catalogs to clients.
The question we have to answer is what's the client timeout. I suppose Jmeter will only show how long requests are taking compared to concurrency. We need to know above what limits the system fails. > I'm ultimately interested in working out exactly how many simultaneous > clients I can support with a given configuration. > > A further step would be to mix two kinds of benchmarks. One that just > sees how many simultaneous clients can be served before catalog > provision fails, and another that does a file retrieval for every file > resource in the catalog after that. Since I'm offloading file serving to my nginx front-end, I really don't care about file serving anymore :-). If you are doing lots of file serving, I really suggest you offload it, there's really little value in using a beast like puppet to serve static files :-) > I should mention the idea of jmeter came from James Bellenger's blog > at http://www.forwardcamegrendel.org/benchmarking-puppet-jmeter Interesting read. I wasn't aware of that blog post. -- Brice Figureau Follow the latest Puppet Community evolutions on www.planetpuppet.org! -- You received this message because you are subscribed to the Google Groups "Puppet Developers" 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-dev?hl=en.
