X

Step Up to Modern Cloud Development

Terraform and Oracle Bare Metal Cloud Services

tl;dr – it's new, it's awesome, get it here.

Ten years into the rise of IaaS as the dominant compute solution, we've moved past the idea of managing a single instance or a single network or a single anything into an orchestration and automation model, "infrastructure as code." With Terraform support, customers can manage the entire lifecycle of dozens of virtual datacenters: on-demand, temporary Hadoop clusters; steady-state ERP and CRM solutions; 50,000 container Kubernetes fleets. Once you templatize and automate infrastructure, you've truly begun to harness the power of the cloud.

I'm excited to release our Terraform provider today. This is a leap forward in the rapid and continuing evolution of Oracle Bare Metal Cloud Services.

With the new Terraform provider Oracle customers have access to an enterprise class, developer friendly orchestration tool they can use to manage Oracle Bare Metal Cloud Service resources as well as the Oracle Compute Cloud. This new Terraform provider is open-source software, available to all Oracle customers at no charge. We're looking forward to some great contributions from the community, keep reading for details and free stuff!

What Is Terraform and How Does It Work?

Terraform is an OSS for building, changing, and versioning Cloud infrastructure safely and efficiently.

Key Features:

  • Infrastructure as Code: Infrastructure is described using a high-level configuration syntax. The code is stored and managed in a set of text files called "configurations." This allows a blueprint of your data center to be versioned and treated as you would any other code. Additionally, infrastructure can be shared and re-used.

  • Execution Plans: Terraform has a "planning" step where it generates an execution plan. The execution plan shows what Terraform will do when you call apply. This lets you avoid any surprises when Terraform manipulates infrastructure.

  • Resource Graph: Terraform builds a graph of all your resources, and parallelizes the creation and modification of any non-dependent resources. Because of this, Terraform builds infrastructure as efficiently as possible, and operators get insight into dependencies in their infrastructure.

  • Change Automation: Complex change sets can be applied to your infrastructure with minimal human interaction. With the previously mentioned execution plan and resource graph, you know exactly what Terraform will change and in what order, avoiding many possible human errors.

Even more good news: OS configuration tools like Chef, Puppet, Salt, Fabric, Ansible all integrate seamlessly with Terraform, so customers can easily move their existing knowledge, teams, and tooling to the Bare Metal Cloud.

Getting Started with Terraform

Terraform is a mature project with a robust community and available enterprise features and support. If you haven't used the project before here are some great resources:

- The Terraform book: We're giving copies away! Keep reading to find out how you can get a copy.

- Terraform documentation:

- Scott Lowe writes a great blog, including this introduction to Terraform.

Terraform Examples for Oracle Bare Metal Cloud Services:

We've got a great collection of examples included in the provider:

- Complex configurations:

  • Secure, highly available MongoDB; builds the solution described here.
  • Hadoop on high speed, low latency NVMe storage.
  • Gluster, a distributed file system.
  • A Virtual Cloud Network (VCN) with public, private, and bastion subnets
  • Across three Availability Domains (ADs).

- Network resources:

  • VCNs, subnets, security lists, route tables.

- Compute resources:

  • Bare Metal and VM instances, block volumes.

- Identity and Access management:

  • Users, groups, policies, compartments.

Database system:

  • Deploy an Oracle Database on bare metal.

Get Some Free Stuff!

We're looking forward to seeing the Terraform configurations customers contribute back to the community; the first ten customers to contribute a configuration that implements any secure, highly available, cross-AD, big-data solution will receive a copy of the Terraform e-book and some Oracle swag. To contribute a configuration just submit a pull request or email me at craig.carl [at] oracle.com.

Technical questions and feedback on this post are both encouraged: craig.carl [at] oracle.com.

- Join the BMCS community.
- BMCS white papers

Craig
$ terraform plan ~/tf/obmcs/secure-mongo/
$ terraform apply ~/tf/obmcs/secure-mongo/

$ sudo ship_it

Join the discussion

Comments ( 2 )
  • Babu George Wednesday, March 1, 2017
    Is Terraform supported on PaaS ? My requirement is to provision PaaS based solutions for GBU products?
  • Craig Carl Saturday, April 8, 2017
    Babu -
    Let's connect over email.
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.