IBM Cloud Docs
Schematics workspaces

Schematics workspaces

Schematics workspaces delivers Terraform as a service capabilities to automate the provisioning and configuration management of your IBM Cloud resources, and rapidly build, duplicate, and scale complex, multitiered cloud environments.

Terraform is an open source project that allows you to specify your cloud infrastructure resources and services as code. It applies the concept of Infrastructure as Code (IaC), using code to manage and provision infrastructure (networks, virtual machines, load-balancers, clusters, services and connection topology) in a descriptive model instead of manual processes.

With Terraform, configuration files define your infrastructure, which also makes it easier to edit, share, and reuse configurations. By codifying your infrastructure, you provision the same environment every time avoiding undocumented, ad hoc configuration changes.

The blog Infrastructure as Code: Chef, Ansible, Puppet, or Terraform? provides an overview of several of the most popular open-source IaC tools and summarizes their capabilities and relative strengths.

Schematics workspace overview

IBM Cloud Schematics is a multi-tenant service delivering Terraform as a service. Schematics provides a shared environment, where each user can securely execute Terraform configs to deploy services and resources on IBM Cloud®.

Deploying infrastructure and services with workspaces
Deploying infrastructure and services with workspaces

Using your supplied Terraform template (config), Schematics executes the Terraform CLI engine to provision the resources defined in the config. Schematics provides a secure container environment to execute the Terraform engine, using the IBM Cloud Terraform provider to provision and manage resources using the IBM Cloudservice APIs.

Features

IBM Cloud Schematics provides built in remote-state management for Terraform. Terraform state files are automatically preserved between runs and are accessible by Schematics commands and operations. Schematics remote-state management enables team work and workspace shared operations, with built in state locking preventing concurrent operations against the same state file.

Workspaces is designed for teams. Terraform templates can be stored in a GitHub, GitLab, or Bitbucket repositories to ensure source control and enable collaboration, review, and auditing in your organization.

Workspaces support drift detection, detecting when the configuration of your deployed infrastructure differs from the wanted state that is defined in your template configuration. Drift can occur for many reasons. The most frequent cause changes that are applied manually outside of Terraform automation.

Next steps

So far you have learned about Schematics workspaces. The following are some next steps to explore.