Evaluation of open source configuration management tool - puppet. What can bring to development team and the entire organization. How it works internaly, possible modes it can operate etc.
2. BigData – near future – technology list
• Hadoop cluster
• Hbase installed on top of Hadoop cluster
• Monitoring capability – Zabbix
• Log management – ? Syslog server ?
• Stand alone components
• Web-container – Apache Tomcat
• Messaging server - ? ActiveMQ, RabbitMQ,
Kafka… ?
• …
3. Common infrastructure tasks
• Install the technologies
• Keep the environments consistent
• Scale out the clusters
• Maintain the servers
• Business solution components upgrades
• Surveillance of the infrastructure configuration
• …
4. Solution with puppet
• What puppet is?
– Automation configuration management tool used by
DevOps
– Describe the desired state of the machine instead of how
to achieve it
– All is resource
– Motto: “Code your infrastructure”
– Elementary building block = Manifest
– Offers predefined resource types – User, File, …
– Allows to create custom types
– Huge open source community – you don’t need to code
everything
5. Puppet pros and cons
• Benefits
– It is a code!
• Abstracts you from the details of underlying infrastructure (configuration manager)
• Your infrastructure has history ! – you have your code versioned – don’t you?
• Your infrastructure is consistent – you execute the same code on every single machine,
every single environment
• You can code everything and you need to understand what your infrastructure is pretty
well
• It is readable
– You can check the state of the machine if is in comply with desired state
– …
• Disadvantages
– It is a code!
• You need to test, release ,…
• You need to think when you write the code – which kind of flexibility your code should
offer – if you don’t code it you cannot configure it
• ..