Cleanup of the 'Terraform vs. Custom Solutions' section.

This commit is contained in:
Joshua Lund 2014-09-02 12:29:22 -06:00
parent b52d323040
commit 280875774f
5 changed files with 27 additions and 26 deletions

View File

@ -7,11 +7,11 @@ sidebar_current: "vs-other-boto"
# Terraform vs. Boto, Fog, etc.
Libraries like Boto, Fog, etc. are used to provide native access
clients to cloud providers and services by using their APIs. Some
to cloud providers and services by using their APIs. Some
libraries are focused on specific clouds, while others attempt
to bridge them all and mask the semantic differences. Using a client
library only provides low-level access to APIs, requiring application
developers to build their own tooling to build and manage their infrastructure.
developers to create their own tooling to build and manage their infrastructure.
Terraform is not intended to give low-level programmatic access to
providers, but instead provides a high level syntax for describing

View File

@ -6,11 +6,12 @@ sidebar_current: "vs-other-chef"
# Terraform vs. Chef, Puppet, etc.
Configuration management tools install and manage tools on a machine
that already exists. Terraform is not a configuration management tool,
and uses the existing tooling to do what they do best: bootstrap and initialize resources.
Configuration management tools install and manage software on a machine
that already exists. Terraform is not a configuration management tool,
and it allows existing tooling to focus on their strengths: bootstrapping
and initializing resources.
Using provisioners, Terraform allows any configuration management tool
Using provisioners, Terraform enables any configuration management tool
to be used to setup a resource once it has been created. Terraform
focuses on the higher-level abstraction of the datacenter and associated
services, without sacrificing the ability to use configuration management

View File

@ -6,16 +6,16 @@ sidebar_current: "vs-other-cloudformation"
# Terraform vs. CloudFormation, Heat, etc.
Tools like CloudFormation, Heat, etc allow the details of an infrastructure
Tools like CloudFormation, Heat, etc. allow the details of an infrastructure
to be codified into a configuration file. The configuration files allow
the infrastructure to be elastically created, modified and destroyed. Terraform
is inspired by the problems they solve.
Terraform similarly uses configuration files to detail the infrastructure
setup, but it goes further, by being both cloud agnostic and enabling
setup, but it goes further by being both cloud-agnostic and enabling
multiple providers and services to be combined and composed. For example,
Terraform can be used to orchestrate an AWS and OpenStack cluster simultaneously,
while enabling 3rd party services like CloudFlare and DNSimple to be integrated
while enabling 3rd-party providers like CloudFlare and DNSimple to be integrated
to provide CDN and DNS services. This enables Terraform to represent and
manage the entire infrastructure with its supporting services, instead of
only the subset that exists within a single provider. It provides a single
@ -34,5 +34,5 @@ the actions in the plan. Other tools combine the planning and execution
phases, meaning operators are forced to mentally reason about the effects
of a change, which quickly becomes intractable in large infrastructures.
Terraform lets operators apply changes with confidence, as they know exactly
what will happen before running.
what will happen beforehand.

View File

@ -7,21 +7,21 @@ sidebar_current: "vs-other-custom"
# Terraform vs. Custom Solutions
Most organizations start by manually managing infrastructure through
simple scripts or web based interfaces. As the infrastructure grows,
any manual approach to management becomes both error prone and tedious.
As a result, many organizations begin to home-roll tooling to help
simple scripts or web-based interfaces. As the infrastructure grows,
any manual approach to management becomes both error-prone and tedious,
and many organizations begin to home-roll tooling to help
automate the mechanical processes involved.
These tools require time and resources to build and maintain.
As tools of necessity, they represent the minimum viable
features needed by an organization, being built to handle only
the immediate needs. As a result they are often hard
to extend and difficult to maintain. Because the tooling must be
updated in lock step with any new features or infrastructure,
it becomes the limiting factor for how fast infrastructure
the immediate needs. As a result, they are often hard
to extend and difficult to maintain. Because the tooling must be
updated in lockstep with any new features or infrastructure,
it becomes the limiting factor for how quickly the infrastructure
can evolve.
Terraform is designed to tackle these challenges. It provides a simple
Terraform is designed to tackle these challenges. It provides a simple,
unified syntax, allowing almost any resource to be managed without
learning new tooling. By capturing all the resources required, the
dependencies between them can be resolved automatically so that operators
@ -29,10 +29,10 @@ do not need to remember and reason about them. Removing the burden
of building the tool allows operators to focus on their infrastructure
and not the tooling.
Additionally, Terraform is an open source tool. In addition to
HashiCorp, the community around it helps to extend its features,
Furthermore, Terraform is an open source tool. In addition to
HashiCorp, the community around Terraform helps to extend its features,
fix bugs and document new use cases. Terraform helps solve a problem
that exists in every organization and provides a standard that can
be adopted to avoid re-inventing the wheel between and within organizations.
It's open source nature ensures it will be around in the long term.
be adopted to avoid reinventing the wheel between and within organizations.
Its open source nature ensures it will be around in the long term.

View File

@ -7,13 +7,13 @@ sidebar_current: "vs-other"
# Terraform vs. Other Software
Terraform provides a flexible abstraction of resources and providers. This model
allows for representing everything from physical hardware, virtual machines,
allows for representing everything from physical hardware, virtual machines, and
containers, to email and DNS providers. Because of this flexibility, Terraform
can be used to solve many different problems. This means there are a number of
existing tools that overlap with the capabilities of Terraform. We compare Terraform
to a number of these tools, but it should be noted that Terraform is not mutual
to a number of these tools, but it should be noted that Terraform is not mutually
exclusive with other systems. It can be used to manage a single application, or the
entire datacenter.
Use the navigation to the left to read the comparison of Terraform to specific
systems.
Use the navigation on the left to read comparisons of Terraform versus other
specific systems.