Skip to content

Terraform module which provides a set of reusable, configurable, and scalable GKE addons configurations.

License

Notifications You must be signed in to change notification settings

squareops/terraform-google-gke-addons

Repository files navigation

GKE Addons

squareops_avatar

SquareOps Technologies Your DevOps Partner for Accelerating cloud journey.


This module provides a set of reusable, configurable, and scalable GCP GKE addons configurations. It enables users to easily deploy and manage a highly available GKE cluster using infrastructure as code. This module supports a wide range of features service monitors, Ingress nginx controller, Cert-Manager with Let's Encrypt, Reloader, and External Secrets. Users can configure these features using a set of customizable variables that allow for fine-grained control over the deployment. Additionally, this module is regularly updated to keep pace with the latest changes in the GKE ecosystem, ensuring that users always have access to the most up-to-date features and functionality.

Usage Example

module "gke_addons" {
  source                                        = "squareops/gke-addons/google"
  name                                          = "name"
  location                                      = "asia-south1"
  project                                       = "project-id"
  environment                                   = "dev"
  ingress_nginx_enabled                         = true
  cert_manager_enabled                          = true
  cert_manager_install_letsencrypt_http_issuers = true
  cert_manager_letsencrypt_email                = ""
  external_secret_enabled                       = true
  service_monitor_crd_enabled                   = true
  enable_keda                                   = true
  enable_reloader                               = true
  vpc_name                                      = "dev-vpc"
}

Refer examples for more details.

Configure a Service Account

In order to execute this module you must have a Service Account with the roles mentioned in IAM.md.

Requirements

Name Version
terraform >= 0.13.0
google >= 4.51, < 5.0
google-beta >= 4.51, < 5.0

Providers

Name Version
helm n/a

Modules

Name Source Version
cert_manager ./addons/cert-manager n/a
external_secrets ./addons/external-secrets n/a
ingress_nginx_controller ./addons/ingress-nginx n/a
keda ./addons/keda n/a
reloader ./addons/reloader n/a
service_monitor_crd ./addons/service_monitor_crd n/a

Resources

Name Type
helm_release.cert_manager_le_http resource

Inputs

Name Description Type Default Required
cert_manager_enabled Enable or disable the nginx-ingress controller bool false no
cert_manager_install_letsencrypt_http_issuers Enable or disable installation of Let's Encrypt HTTP issuers for cert-manager bool false no
cert_manager_letsencrypt_email Email address to register with Let's Encrypt for cert-manager string "" no
cert_manager_version Version of cert-manager to deploy string "1.12.2" no
enable_keda Enable or disable keda deployment bool false no
enable_reloader Enable or disable reloader bool false no
environment Environment in which the infrastructure is being deployed (e.g., production, staging, development) string n/a yes
external_secret_enabled Enable or disable external-secrets deployment bool false no
external_secrets_version Version of the external-secret operator string "0.8.3" no
ingress_nginx_enabled Enable or disable the nginx-ingress controller bool false no
ingress_nginx_version Version of the nginx-ingress controller string "4.7.0" no
keda_version Version of KEDA to deploy string "2.10.2" no
name The suffix name for the resources being created. string n/a yes
project ID of the Google Cloud project string "" no
region Region where the resources will be provisioned string "asia-south1" no
reloader_version Reloader release version string "1.0.27" no
service_monitor_crd_enabled Enable or disable the installation of Custom Resource Definitions (CRDs) for Prometheus Service Monitor. bool false no
vpc_name Name of the VPC network string "" no

Outputs

Name Description
nginx_ingress_controller_lb NGINX Ingress Controller Load Balancer IP

Contribute & Issue Report

To report an issue with a project:

  1. Check the repository's issue tracker on GitHub
  2. Search to check if the issue has already been reported
  3. If you can't find an answer to your question in the documentation or issue tracker, you can ask a question by creating a new issue. Make sure to provide enough context and details.

License

Apache License, Version 2.0, January 2004 (https://www.apache.org/licenses/LICENSE-2.0)

Support Us

To support our GitHub project by liking it, you can follow these steps:

  1. Visit the repository: Navigate to the GitHub repository

  2. Click the "Star" button: On the repository page, you'll see a "Star" button in the upper right corner. Clicking on it will star the repository, indicating your support for the project.

  3. Optionally, you can also leave a comment on the repository or open an issue to give feedback or suggest changes.

Staring a repository on GitHub is a simple way to show your support and appreciation for the project. It also helps to increase the visibility of the project and make it more discoverable to others.

Who we are

We believe that the key to success in the digital age is the ability to deliver value quickly and reliably. That’s why we offer a comprehensive range of DevOps & Cloud services designed to help your organization optimize its systems & Processes for speed and agility.

  1. We are an AWS Advanced consulting partner which reflects our deep expertise in AWS Cloud and helping 100+ clients over the last 5 years.
  2. Expertise in Kubernetes and overall container solution helps companies expedite their journey by 10X.
  3. Infrastructure Automation is a key component to the success of our Clients and our Expertise helps deliver the same in the shortest time.
  4. DevSecOps as a service to implement security within the overall DevOps process and helping companies deploy securely and at speed.
  5. Platform engineering which supports scalable,Cost efficient infrastructure that supports rapid development, testing, and deployment.
  6. 24*7 SRE service to help you Monitor the state of your infrastructure and eradicate any issue within the SLA.

We provide support on all of our projects, no matter how small or large they may be.

To find more information about our company, visit squareops.com, follow us on Linkedin, or fill out a job application. If you have any questions or would like assistance with your cloud strategy and implementation, please don't hesitate to contact us.

About

Terraform module which provides a set of reusable, configurable, and scalable GKE addons configurations.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages