terraform/website/source/index.html.erb

230 lines
8.2 KiB
Plaintext

<!-- Main jumbotron for a primary marketing message or call to action -->
<div id="jumbotron-mask">
<div id="jumbotron">
<div class="jumbotron-content" id="jumbotron-content">
<h2 class="tag-line" id="tag-line" style="visibility: hidden;">Write, plan, and create infrastructure</h2>
</div>
</div>
</div>
<div class="feature" id="feature-overview">
<div class="container">
<div class="row">
<div class="col-sm-12">
<h2>Features</h2>
</div>
<div class="col-md-4 col-sm-12">
<div class="feature-card feature-card-write">
<h3>Write</h3>
<p>Infrastructure as code</p>
</div>
</div>
<div class="col-md-4 col-sm-12">
<div class="feature-card feature-card-plan">
<h3>Plan</h3>
<p>Workflows, not technologies</p>
</div>
</div>
<div class="col-md-4 col-sm-12">
<div class="feature-card feature-card-create">
<h3>Create</h3>
<p>Cloneable infrastructure</p>
</div>
</div>
</div>
</div>
</div>
<div class="feature" id="feature-write">
<div class="container">
<div class="row">
<div class="col-sm-12">
<h2>Infrastructure as code</h2>
<p class="lead">Define infrastructure as code to increase operator productivity through collaboration and automation.</p>
</div>
<div class="col-sm-4">
<h3>Collaborate &amp; share</h3>
<p>Terraform configuration and state can be stored in version control,
shared, and collaborated on by teams of operators.</p>
<h3>Evolve your infrastructure</h3>
<p>Track the complete history of infrastructure versions.</p>
<h3>Automation friendly</h3>
<p>If it can be codified, it can be automated.</p>
</div>
</div>
</div> <!-- /container -->
<div class="feature-skew" id="feature-auto-bg"></div>
</div> <!-- /feature -->
<div class="feature" id="feature-plan">
<div class="container">
<div class="row">
<div class="col-sm-12">
<h2>One safe workflow across providers</h2>
<p class="lead">Terraform provides an elegant user experience for
operators to safely and predictably make changes to infrastructure.</p>
</div>
<div class="col-sm-4">
<h3>Map resource dependencies</h3>
<p>Understand how a minor change could have potential cascading effects
across an infrastructure before executing that change. Terraform
builds a dependency graph from the configurations, and walks this
graph to generate plans, refresh state, and more.</p>
</div>
<div class="col-sm-4">
<h3>Separation of plan &amp; apply</h3>
<p>Separating plans and applies reduces mistakes and uncertainty at
scale. Plans show operators what would happen, applies execute
changes.</p>
</div>
<div class="col-sm-4">
<h3>One workflow</h3>
<p>Use Terraform to create resources across all major infrastructure
providers (AWS, GCP, Azure, OpenStack, VMware, and more).</p>
</div>
</div>
</div> <!-- /container -->
<div class="feature-skew" id="feature-auto-bg"></div>
</div> <!-- /feature -->
<div class="feature" id="feature-create">
<div class="container">
<div class="row">
<div class="col-sm-12">
<h2>Cloneable infrastructure</h2>
<p class="lead">Infrastructures share commonality across environments
and organizations. Terraform lets operators easily use the same
configurations in multiple places to save time. </p>
</div>
<div class="col-sm-4">
<h3>Identical environments</h3>
<p>Use the same Terraform configuration to provision identical staging,
qa, and production environments.</p>
</div>
<div class="col-sm-4">
<h3>Shareable modules</h3>
<p>Common Terraform configurations can be packaged as modules and used
across teams and organizations.</p>
</div>
<div class="col-sm-4">
<h3>Combine multiple providers consistently</h3>
<p>Terraform allows you to effortlessly combine high-level system
providers. Launch a server from one cloud provider, add a DNS entry
with its IP with a different provider. Built-in dependency resolution
means things happen in the right order.</p>
</div>
</div>
</div> <!-- /container -->
<div class="feature-skew" id="feature-auto-bg"></div>
</div> <!-- /feature -->
<div class="skew-item" id="demos">
<div class="container">
<div class="terminals row">
<div class="col-sm-12">
<h2>Examples</h2>
</div>
<div class="col-md-6 explantion">
<h3>Layering Resources</h3>
<p>Use attributes from other resources to create a layered
infrastructure. Terraform handles ordering resource creation
automatically.
</p>
</div>
<div class="terminal-item col-xs-12 col-lg-12">
<div class="terminal">
<header>
<h4>Example Configuration</h4>
</header>
<div class="terminal-window">
<div class="">
<div class="display">
<p>resource <span class="txt-spe">"digitalocean_droplet"</span> <span class="txt-str">"web"</span> {</p>
<p> name = <span class="txt-str">"tf-web"</span></p>
<p> size = <span class="txt-str">"512mb"</span></p>
<p> image = <span class="txt-str">"centos-5-8-x32"</span></p>
<p> region = <span class="txt-str">"sfo1"</span></p>
<p>}</p>
<p> </p>
<p>resource <span class="txt-spe">"dnsimple_record"</span> <span class="txt-str">"hello"</span> {</p>
<p> domain = <span class="txt-str">"example.com"</span></p>
<p> name = <span class="txt-str">"test"</span></p>
<p> value = <span class="txt-str">"<span class="txt-var">${digitalocean_droplet.web.ipv4_address}</span>"</span></p>
<p> type = <span class="txt-str">"A"</span></p>
<p>}</p>
</div>
</div>
</div>
</div>
</div> <!-- /.terminal-item -->
<div class="col-md-6 explantion">
<h3>Fast, Simplified Interaction</h3>
<p>
Simple and intuitive configuration makes even the most complicated services approachable:
no more web consoles, loading bars, or confusing CLI clients.
</p>
</div>
<div class="terminal-item col-xs-12 col-lg-12">
<div class="terminal">
<header>
<h4>Example Configuration</h4>
</header>
<div class="terminal-window">
<div class="">
<div class="display">
<p>resource <span class="txt-spe">"aws_elb"</span> <span class="txt-str">"frontend"</span> {</p>
<p> name = <span class="txt-str">"frontend-load-balancer"</span></p>
<p> listener {</p>
<p> instance_port = <span class="txt-int">8000</span></p>
<p> instance_protocol = <span class="txt-str">"http"</span></p>
<p> lb_port = <span class="txt-int">80</span></p>
<p> lb_protocol = <span class="txt-str">"http"</span></p>
<p> }</p>
<p> </p>
<p> instances = [<span class="txt-str">"<span class="txt-var">${aws_instance.app.*.id}</span>"</span>]</p>
<p>}</p>
<p> </p>
<p>resource <span class="txt-spe">"aws_instance"</span> <span class="txt-str">"app"</span> {</p>
<p> count = <span class="txt-int">5</span></p>
<p> </p>
<p> ami = <span class="txt-str">"ami-408c7f28"</span></p>
<p> instance_type = <span class="txt-str">"t1.micro"</span></p>
<p>}</p>
</div>
</div>
</div>
</div>
</div> <!-- /.terminal-item -->
<div class="cta col-sm-8 col-sm-offset-2">
<p class="lead">The intro contains a walkthrough guide, introductory literature and
a range of examples to experiment with Terraform.</p>
<p>
<a class="terra-btn" href="#">Get started</a>
</p>
</div>
</div>
</div>
<div class="feature-skew" id="demo-bg"></div>
</div><!-- /#demos -->
<div class="skew-item" id="cta">
<div class="container">
<div class="row">
<div class="intro">
<div class="left col-xs-12 col-sm-4 col-sm-offset-1 col-md-offset-2 col-md-4">
<p>The intro contains a walkthrough guide, introductory literature
and a range of examples to experiment with Terraform.</p>
</div>
<div class="col-xs-12 col-sm-6 col-md-4 right">
<a class="outline-btn" href="/intro/index.html">Try Terraform &#187;</a>
</div>
</div>
</div>
</div>
<div class="feature-skew" id="cta-bg"></div>
</div>