GithubHelp home page GithubHelp logo

terraform-google-autopilot's Introduction

Terraform Module for provisioning GKE Autopilot

This Terraform module creates a Google Kubernetes Engine (GKE) Autopilot cluster in a specified project, region and network. It supports public and private clusters with optional NAT gateway and bastion host.

Variables

  • project_id: The ID of the project where the cluster will be created.
  • network_name: The name of the network where the cluster will be created.
  • subnet_name: The name of the subnet where the cluster will be created.
  • region: The region where the cluster will be created.
  • name: The name of the cluster.
  • description: The description of the cluster.
  • is_private: Whether the cluster should be private.
  • release_channel (Optional): The release channel of the cluster (Default: STABLE).
  • network_tags (Optional): List of network tags to apply to the cluster nodes.
  • fleet_project (Optional): The project where the fleet is located.
  • deletion_protection (Optional): Whether to enable deletion protection for the cluster (Default: false).
  • deploy_nat (Optional): Whether to deploy a NAT gateway for the cluster.
  • router_name (Optional): The name of the Cloud Router for the NAT gateway.
  • bastion_zone (Optional): The zone where the bastion host will be created (Default: ${var.region}-a).
  • bastion_members: List of IAM members with access to the bastion host, should be specified if is_private is true.

Example

Public Cluster:

module "public_gke_autopilot" {
  source  = "layer-3/autopilot/google"

  project_id   = "my-project"
  network_name = "my-network"
  subnet_name  = "my-subnet"
  region       = "us-central1"

  name        = "my-cluster"
  description = "My Public GKE Autopilot cluster"
  is_private  = false
  deploy_nat  = true
}

Private Cluster:

module "private_gke_autopilot" {
  source  = "layer-3/autopilot/google"

  project_id   = "my-project"
  network_name = "my-network"
  subnet_name  = "my-subnet"
  region       = "us-central1"

  name        = "my-cluster"
  description = "My Private GKE Autopilot cluster"
  is_private  = true
  deploy_nat  = true

  bastion_zone    = "us-central1-a"
  bastion_members = [
    "user:[email protected]"
  ]
}

Author

This module is maintained by philanton.

License

This module is licensed under the MIT License.

terraform-google-autopilot's People

Contributors

philanton avatar

Watchers

Camille avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.