Sign in
Categories
Your Saved List Become a Channel Partner Sell in AWS Marketplace Amazon Web Services Home Help

Good declarative software configuration management tool that can be scaled well

  • By Anton S.
  • on 06/19/2022

What do you like best about the product?
If you structure your code to follow the official "the roles and profiles method" - then it is easy to build a reusable and configurable configuration management system.
A lot of ready-to-use modules.
You can extend Puppet by writing Ruby code.
With proper architecture/design - you can scale Puppet to manage tens of thousands of servers.
What do you dislike about the product?
Puppet is declarative and its code does not have strict order - thus sometimes it is hard to manage the order of resource creation, for example.
Language itself is also a bit weird and feels a bit unnatural.
To scale it well, you would need to learn existing "custom" approaches and most likely change the way you initially deployed Puppet and set up clients to talk to Puppet.
What problems is the product solving and how is that benefiting you?
Software configuration management solution for tens of thousands of servers (with proper architecture, of course).
Ability to test configuration changes before deploying to production. Although, for a big scale (servers and code versions) - you would need to define your own testing approach.
Re-using configuration management code, abstracting it.
Recommendations to others considering the product:
Puppet works well for big and small scale, a lot of ready-to-use modules make it easy to start using Puppet, declarative language is weird but fine.
So if you need a continuous (not sporadic) configuration management tool - Puppet is a decent choice. But before making the final decision - I would suggest learning other tools as well.


There are no comments to display