3. Who am I?
Scale experience
•Physical servers Xtratelecom.es.
•AWS and other cloud providers at Wuaki.tv and
3scale.net.
Thursday, November 28, 13
4. Who am I?
Scale experience
•Physical servers Xtratelecom.es.
•AWS and other cloud providers at Wuaki.tv and
3scale.net.
Config Management
• Worked with CFEngine2 for 2 years.
• Puppet user since 2009.
Thursday, November 28, 13
5. Who am I?
Scale experience
•Physical servers Xtratelecom.es.
•AWS and other cloud providers at Wuaki.tv and
3scale.net.
Config Management
• Worked with CFEngine2 for 2 years.
• Puppet user since 2009.
Obsessed about config management and I use Emacs.
Thursday, November 28, 13
6. What is 3scale?
3scale provides tools such as traffic
management, API administration, traffic
reports, and more, to help companies
publicize their APIs easily and power new
types of connected applications.
Thursday, November 28, 13
8. What does scaling stands for?
Scalability is the ability of a system, network,
or process to handle a growing amount of
work in a capable manner or its ability to be
enlarged to accommodate that growth.
Wikipedia
Thursday, November 28, 13
9. What are our scaling needs?
Thursday, November 28, 13
10. What are our scaling needs?
• How many people do we need to scale our
system infrastructure?
Thursday, November 28, 13
11. What are our scaling needs?
• How many people do we need to scale our
system infrastructure?
• How many environments and systems can
our team maintain?
Thursday, November 28, 13
12. What are our scaling needs?
• How many people do we need to scale our
system infrastructure?
• How many environments and systems can
our team maintain?
• Can we delegate configurations easily to our
team members?
Thursday, November 28, 13
26. Puppet at 3scale.
• Since July 2013 we are running Puppet 3.0+.
Thursday, November 28, 13
27. Puppet at 3scale.
• Since July 2013 we are running Puppet 3.0+.
• 2 Puppet master’s.
Thursday, November 28, 13
28. Puppet at 3scale.
• Since July 2013 we are running Puppet 3.0+.
• 2 Puppet master’s.
• Nginx + Unicorn.
Thursday, November 28, 13
29. Puppet at 3scale.
• Since July 2013 we are running Puppet 3.0+.
• 2 Puppet master’s.
• Nginx + Unicorn.
• 15 minutes splay with a splaylimit $runinterval/2.
Thursday, November 28, 13
30. Puppet at 3scale.
• Since July 2013 we are running Puppet 3.0+.
• 2 Puppet master’s.
• Nginx + Unicorn.
• 15 minutes splay with a splaylimit $runinterval/2.
• Using DNS SRV records.
Thursday, November 28, 13
31. Puppet at 3scale.
• Since July 2013 we are running Puppet 3.0+.
• 2 Puppet master’s.
• Nginx + Unicorn.
• 15 minutes splay with a splaylimit $runinterval/2.
• Using DNS SRV records.
• The foreman as our ENC.
Thursday, November 28, 13
32. Puppet at 3scale.
• Since July 2013 we are running Puppet 3.0+.
• 2 Puppet master’s.
• Nginx + Unicorn.
• 15 minutes splay with a splaylimit $runinterval/2.
• Using DNS SRV records.
• The foreman as our ENC.
• Puppetdb and hiera.
Thursday, November 28, 13
33. Puppet at 3scale.
• Since July 2013 we are running Puppet 3.0+.
• 2 Puppet master’s.
• Nginx + Unicorn.
• 15 minutes splay with a splaylimit $runinterval/2.
• Using DNS SRV records.
• The foreman as our ENC.
• Puppetdb and hiera.
•MCollective with Rabbitmq connector.
Thursday, November 28, 13
36. What nobody will tell you about
puppet.
Thursday, November 28, 13
37. What nobody will tell you about
puppet.
• Puppet-lint is your friend and it will help others to
understand your code, so USE IT.
Thursday, November 28, 13
38. What nobody will tell you about
puppet.
• Puppet-lint is your friend and it will help others to
understand your code, so USE IT.
• Puppet-rspec will help you find errors on early stages so
TEST your modules.
Thursday, November 28, 13
39. What nobody will tell you about
puppet.
• Puppet-lint is your friend and it will help others to
understand your code, so USE IT.
• Puppet-rspec will help you find errors on early stages so
TEST your modules.
• Don’t code remotely on your servers, use your local
development environment and git.
Thursday, November 28, 13
40. What nobody will tell you about
puppet.
• Puppet-lint is your friend and it will help others to
understand your code, so USE IT.
• Puppet-rspec will help you find errors on early stages so
TEST your modules.
• Don’t code remotely on your servers, use your local
development environment and git.
• Read puppet documentation on every version.
Thursday, November 28, 13
41. What nobody will tell you about
puppet.
• Puppet-lint is your friend and it will help others to
understand your code, so USE IT.
• Puppet-rspec will help you find errors on early stages so
TEST your modules.
• Don’t code remotely on your servers, use your local
development environment and git.
• Read puppet documentation on every version.
• Be careful about dependencies.
Thursday, November 28, 13
42. What nobody will tell you about
puppet.
• Puppet-lint is your friend and it will help others to
understand your code, so USE IT.
• Puppet-rspec will help you find errors on early stages so
TEST your modules.
• Don’t code remotely on your servers, use your local
development environment and git.
• Read puppet documentation on every version.
• Be careful about dependencies.
• Once you start to puppetize you become an Addict.
Thursday, November 28, 13