Getting Started with Terraform for Google Cloud
Contact us to book this course
Learning Track
Foundations
Delivery methods
On-Site, Virtual
Duration
1 day
This course covers an introduction to Kubernetes, a software layer that sits between your applications and your hardware infrastructure. Google Kubernetes Engine (GKE) brings you Kubernetes as a managed service on Google Cloud. This course teaches the basics of GKE and how to get applications containerized and running in Google Cloud. The course covers a basic introduction to Google Cloud, an overview of containers and Kubernetes, Kubernetes architecture, and Kubernetes operations.
Objectives
- Discuss the differences among Google Cloud compute platforms
- Discuss the components and architecture of Kubernetes
- Identify how Google manages Kubernetes orchestration
- Create and manage Google Kubernetes Engine clusters by using the Google Cloud console and the gcloud/kubectl commands
Audience
- Application developers, cloud solutions architects, DevOps engineers, IT managers
- Individuals who use Google Cloud to create new solutions or to integrate existing systems, application environments, and infrastructure with Google Cloud
Prerequisites
- Having completed Google Cloud Fundamentals: Core Infrastructure, or having equivalent experience
- Basic proficiency with command-line tools and Linux operating system environments
Course outline
- Introduction to IaC
- What Is infrastructure as Code (IaC)?
- Problems IaC Can Solve
- Benefits of IaC
- Provisioning Versus Configuration
- Imperative Versus Declarative Approach
- Introduction to Terraform
- Terraform Overview
- Terraform Features
- IaC Configuration Workflow
- Terraform Use Cases
- Using Terraform
- How to Use Terraform
- Running Terraform in Production
- Installing Terraform
- Authentication for Google Cloud
- The Author Phase
- Terraform Directory Structure
- Introduction to HCL Syntax
- Resources
- Variables
- State
- Modules
- Terraform Commands
- terraform init
- terraform plan
- terraform apply
- terraform fmt
- terraform destroy
- Terraform Validator Tool
- Introduction
- Why Use the Terraform Validator Tool?
- Validation Workflow
- Terraform Validator Use Cases
- Introduction to Resources
- Resources Overview
- Syntax
- Example
- Refer a Resource Attribute
- Considerations to Define a Resource Block
- Meta-Arguments for Resources
- Resource Dependencies
- Implicit Dependency
- Explicit Dependency
- Introduction to Variables
- Overview
- Syntax to Declare a Variable
- Syntax to Reference and Assign a Value to a Variable
- Variables Best Practices
- Introduction to Output Values
- Output Values Overview
- Best Practices
- Terraform Registry and CFT
- Introduction to Terraform Registry
- Introduction to CFT
- Introduction to Modules
- Why Are Modules Needed?
- What Is a Module?
- Example
- Reusing Configurations by Using Modules
- Module Sources
- Calling a Module into the Source Configuration
- Using Variables to Parameterize Your Configuration
- Pass Resource Attributes Using Output Variables
- Module Use Cases, Benefits, and Best Practices
- Introduction to Terraform State
- How Information Is Stored in a Terraform State File
- Ways to Save a State File
- Storing a State File in a Cloud Storage Bucket
- Issues when Storing the Terraform State Locally
- Benefits of Storing a State File in a Cloud Storage Bucket
- Process of Storing a Terraform State File Remotely in a Cloud Storage Bucket
- Terraform State Best Practices