Software Alternatives, Accelerators & Startups

Why we use Terraform and not Chef, Puppet, Ansible, SaltStack, or CloudFormation

Terraform Chef Puppet Enterprise Ansible SaltStack AWS CloudFormation
  1. Tool for building, changing, and versioning infrastructure safely and efficiently.
    Pricing:
    • Open Source
    Example: Terraform and Ansible. You use Terraform to deploy all the underlying infrastructure, including the network topology (i.e., VPCs, subnets, route tables), data stores (e.g., MySQL, Redis), load balancers, and servers. You then use Ansible to deploy your apps on top of those servers.This is an easy approach to start with, as there is no extra infrastructure to run (Terraform and Ansible are both client-only applications) and there are many ways to get Ansible and Terraform to work together (e.g., Terraform adds special tags to your servers and Ansible uses those tags to find the server and configure them). The major downside is that using Ansible typically means you’re writing a lot of procedural code, with mutable servers, so as your code base, infrastructure, and team grow, maintenance may become more difficult.

    #DevOps Tools #Developer Tools #Continuous Integration And Delivery 31 social mentions

  2. 2
    Automation for all of your technology. Overcome the complexity and rapidly ship your infrastructure and apps anywhere with automation.
    Configuration management tools such as Chef, Puppet, Ansible, and SaltStack typically default to a mutable infrastructure paradigm. For example, if you tell Chef to install a new version of OpenSSL, it’ll run the software update on your existing servers and the changes will happen in-place. Over time, as you apply more and more updates, each server builds up a unique history of changes. This often leads to a phenomenon known as configuration drift, where each server becomes slightly different than all the others, leading to subtle configuration bugs that are difficult to diagnose and nearly impossible to reproduce.

    #DevOps Tools #Dev Ops #Product Deployment

  3. Get started with Puppet Enterprise, or upgrade or expand.
    Once again, Chef, Puppet, and SaltStack do have varying levels of support for agentless modes (e.g., salt-ssh), but these often feel like they were tacked on as an afterthought and don’t always support the full feature set of the configuration management tool. That’s why in the wild, the default or idiomatic configuration for Chef, Puppet, and SaltStack almost always includes an agent, and usually a master too.

    #DevOps Tools #Developer Tools #Continuous Integration And Delivery 1 social mentions

  4. Radically simple configuration-management, application deployment, task-execution, and multi-node orchestration engine
    Pricing:
    • Open Source
    Example: Terraform and Ansible. You use Terraform to deploy all the underlying infrastructure, including the network topology (i.e., VPCs, subnets, route tables), data stores (e.g., MySQL, Redis), load balancers, and servers. You then use Ansible to deploy your apps on top of those servers.This is an easy approach to start with, as there is no extra infrastructure to run (Terraform and Ansible are both client-only applications) and there are many ways to get Ansible and Terraform to work together (e.g., Terraform adds special tags to your servers and Ansible uses those tags to find the server and configure them). The major downside is that using Ansible typically means you’re writing a lot of procedural code, with mutable servers, so as your code base, infrastructure, and team grow, maintenance may become more difficult.

    #DevOps Tools #IT Automation #Build And Deployment Automation 9 social mentions

  5. SaltStack event-driven automation delivers security, cloud and configuration management for a software-defined world and enterprise complexity and scale.
    Once again, Chef, Puppet, and SaltStack do have varying levels of support for agentless modes (e.g., salt-ssh), but these often feel like they were tacked on as an afterthought and don’t always support the full feature set of the configuration management tool. That’s why in the wild, the default or idiomatic configuration for Chef, Puppet, and SaltStack almost always includes an agent, and usually a master too.

    #DevOps Tools #Security #Web Application Security

  6. AWS CloudFormation gives developers and systems administrators an easy way to create and manage a...
    Pricing:
    • Open Source
    Of course, there are downsides to declarative languages too. Without access to a full programming language, your expressive power is limited. For example, some types of infrastructure changes, such as a rolling, zero-downtime deployment, are hard to express in purely declarative terms. Similarly, without the ability to do “logic” (e.g. if-statements, loops), creating generic, reusable code can be tricky (especially in CloudFormation). Fortunately, Terraform provides a number of powerful primitives , such as input variables, output variables, modules, create_before_destroy, and count, that make it possible to create clean, configurable, modular code even in a declarative language. We’ll discuss these tools more in Part 4, How to create reusable infrastructure with Terraform modules and Part 5, Terraform tips & tricks: loops, if-statements, and pitfalls.

    #DevOps Tools #Continuous Integration #Continuous Deployment 113 social mentions

Discuss: Why we use Terraform and not Chef, Puppet, Ansible, SaltStack, or CloudFormation

Log in or Post with