Two Tutorials: Plan, Create, and Update Deployment Environments with Terraform

Share this post:

Learn how to manage deployment environments with Terraform

Multiple environments are pretty common in a project when building a solution. They support the different phases of the development cycle and the slight differences between the environments, like capacity, networking, credentials, and log verbosity.

This post has excerpts from two tutorials. The first tutorial introduces you to tools like the IBM Cloud CLI and Terraform to automate the creation and maintenance of these deployment environments. The second tutorial introduces best practices to organize users, teams and applications and a sample scenario.

Tutorial 1: Plan, create and update deployment environments

Tutorial 1 introduces you to tools like the IBM Cloud CLI and Terraform that allow you to automate the creation and maintenance of these deployment environments.

Environments with Terraform

To support a multicloud approach, Terraform works with providers. A provider is responsible for understanding API interactions and exposing resources. IBM Cloud has its provider for Terraform enabling users of IBM Cloud to manage resources with Terraform. Although Terraform is categorized as infrastructure as code, it is not limited to Infrastructure-As-A-Service resources. The IBM Cloud Provider for Terraform supports IaaS (bare metal, virtual machine, network services, etc.), CaaS (Kubernetes Service and Kubernetes clusters), PaaS (Cloud Foundry and services) and FaaS (Cloud Functions) resources.

View the tutorial

Tutorial 2: Best practices for organizing users, teams, applications

In Tutorial 2, you will be introduced to best practices to organize users, teams, and applications and given a sample scenario. The sample scenario considers three environments, Development, Testing, and Production. How do you automate the creation of these environments? What tools could be used? Also, you will see an overview of the concepts available in IBM Cloud to manage identity and access management (IAM) and how they can be implemented to support the multiple development stages of an application.

Cloud Identity and Access Management (IAM) enables you to securely authenticate users for both platform and infrastructure services and control access to resources consistently across the IBM Cloud platform. A set of IBM Cloud services are enabled to use Cloud IAM for access control and are organized into resource groups within your account to enable giving users quick and easy access to more than one resource at a time. Cloud IAM access policies are used to assign users and service IDs access to the resources within your account.

View the best practices

This Git repository has all the configuration files needed to set up the environments defined earlier. You can clone the repository to follow the next sections detailing the content of the files.

Get in touch

Don’t forget to check our solution tutorials page for more tutorials with step-by-step instructions and hands-on experience.

If you have any Queries or Suggestions? reach out to me @VidyasagarMSC

Technical Offering Manager & Polyglot Programmer | IBM Cloud

More How-tos stories
May 6, 2019

Are You Ready for SAP S/4HANA Running on Cloud?

Our clients tell us SAP applications are central to their success and strategy for cloud, with a deadline to refresh the business processes and move to SAP S/4HANA by 2025. Now is the time to assess, plan and execute the journey to cloud and SAP S/4HANA

Continue reading

May 3, 2019

Kubernetes Tutorials: 5 Ways to Get You Building Fast

Ready to start working with Kubernetes? Want to build your Kubernetes skills? The five tutorials in this post will teach you everything you need to know about how to manage your containerized apps with Kubernetes.

Continue reading

May 3, 2019

Using Portworx to Deploy and Manage an HA MySQL Cluster on IBM Cloud Kubernetes Service

This tutorial is a walkthrough of the steps involved in deploying and managing a highly available MySQL cluster on IBM Cloud Kubernetes Service.

Continue reading