Skip to content

saturnops/terraform-kubernetes-rancher

Repository files navigation

RancherKubernetes Terraform Module


This Terraform module deploys Rancher on a Kubernetes cluster, providing an open-source platform for managing Kubernetes and containerized applications.
  • Automatic generation of Kubernetes resources
  • Support for deploying Rancher on a single node or multiple nodes

Supported Versions Table:

Rancher Helm Chart Version K8s supported version (EKS, AKS & GKE)
2.7.0 1.23,1.24
2.7.2 1.23,1.24,1.25,1.26
2.8.2 1.23,1.24,1.25,1.26,1.27

Important Notes:

This module is compatible with EKS, AKS, and GKE, making it ideal for deployments on AWS, Azure, and GCP. Review the documentation, meet configuration requirements, and test thoroughly to ensure proper functionality.

Usage Example

module "rancher" {
  source         = "saturnops/rancher/kubernetes"
  rancher_config = {
    email    = "[email protected]"
    hostname = ""
    values_yaml = ""
  }
}

IAM Permissions

The required IAM permissions to create resources from this module can be found here

Requirements

No requirements.

Providers

Name Version
helm n/a
kubernetes n/a
random n/a

Modules

No modules.

Resources

Name Type
helm_release.rancher resource
kubernetes_limit_range_v1.rancher_limit resource
kubernetes_namespace.cattle_system resource
kubernetes_resource_quota_v1.rancher_resource_quota resource
random_password.rancher_password resource
kubernetes_secret.rancher_password data source

Inputs

Name Description Type Default Required
chart_version Version of the Rancher chart that will be used to deploy Rancher application. string "2.8.2" no
create_resource_limit Whether enable or disble the resource limit For cattle-system namespace bool false no
create_resource_quota Whether enable or disble the resource quota For cattle-system namespace bool false no
namespace Name of the Kubernetes namespace where the Rancher deployment will be deployed. string "cattle-system" no
rancher_config Specify the configuration settings for Rancher including the hostname,email, and custom YAML values. any
{
"email": "",
"hostname": "",
"values_yaml": ""
}
no
rancher_resource_limit Specify the configuration settings for Rancher resources limits including cpu, mem, pvc storage for Pods and Container. any
{
"container_max_cpu": "1000m",
"container_max_mem": "3132Mi",
"container_min_cpu": "5m",
"container_min_mem": "50Mi",
"pod_max_cpu": "1000m",
"pod_max_mem": "4000Mi",
"pod_min_cpu": "5m",
"pod_min_mem": "50Mi",
"pvc_max_storage": "200G",
"pvc_min_storage": "24M"
}
no
rancher_resource_quota Specify the configuration settings for Rancher resources quota in a namespace. any
{
"no_of_pods": 10,
"no_of_services": 5
}
no

Outputs

Name Description
rancher Rancher_Info

Please give our GitHub repository a ⭐️ to show your support and increase its visibility.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published