Terraform module to deploy Redis on kubernetes.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Mahidhar Reddy b366d6b0b0 fix:change secrets to config map 1 month ago
examples/default fix:change secrets to config map 1 month ago
.gitignore Initial commit 2 months ago
.pre-commit-config.yaml refactor:redis 1 month ago
CHANGELOG.md Initial commit 2 months ago
Jenkinsfile refactor 1 month ago
LICENSE Initial commit 2 months ago
README.md fix:change secrets to config map 1 month ago
data.tf Initial commit 2 months ago
main.tf fix:change secrets to config map 1 month ago
outputs.tf fix:change secrets to config map 1 month ago
providers.tf Initial commit 2 months ago
variables.tf fix:change secrets to config map 1 month ago
versions.tf init commit 1 month ago

README.md

terraform-module-multi-template

Template repository for public terraform modules

Requirements

Name Version
terraform >= 0.13
kubernetes >= 1.10.0
random >= 2.0

Providers

Name Version
kubernetes >= 1.10.0
random >= 2.0

Modules

No Modules.

Resources

Name
kubernetes_config_map
kubernetes_service
kubernetes_service_account
kubernetes_stateful_set
random_string

Inputs

Name Description Type Default Required
annotations Map of annotations that will be applied on all resources. map(string) {} no
args Redis command arguments.
Can be used to specify command line arguments, for example:
args = [
“redis-server”,
“--maxmemory-policy volatile-ttl"
]
list(string) [] no
config_map_annotations Map of config annotations that will be applied on all resources. map(string) {} no
config_map_labels Map of config_map lables that will be applied on all resources. map(string) {} no
config_map_name config_map name for Redis string "redis" no
configuration “configration needed for redis “
ref: http://download.redis.io/redis-stable/redis.conf
string "" no
image The docker image registry used to retrieve the redis image string "redis" no
image_version image version to use for redis string "6.2.1" no
kubernetes_node_selector kubernetes node selecrtor map(string) {} no
labels Map of labels that will be applied on all resources. map(string) {} no
liveness_probe “Redis Liveness Probe configuration"
example : {
enabled = true
initial_delay_seconds = 30
period_seconds = 10
}
map(string)
{
“enabled”: true,
“failure_threshold”: 5,
“initial_delay_seconds”: 30,
“period_seconds”: 10,
“success_threshold”: 1,
“timeout_seconds”: 5
}
no
namespace Name of the namespace in which to deploy the module. string "redis" no
readiness_probe Redis Readiness Probe configuration map(string)
{
“enabled”: true,
“failure_threshold”: 5,
“initial_delay_seconds”: 30,
“period_seconds”: 10,
“success_threshold”: 1,
“timeout_seconds”: 5
}
no
redis_image_pull_policy One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. string "IfNotPresent" no
replicas replicas required for the redis instance string "1" no
resources_limits_cpu “Amount of cpu time that the application limits.“

Redis Master resource limits
ref: http://kubernetes.io/docs/user-guide/compute-resources/
master_resource_limits = {
cpu = “100m"
}
string "100m" no
resources_limits_memory Redis Master resource limits
ref: http://kubernetes.io/docs/user-guide/compute-resources/
master_resource_limits = {
memory = “256Mi"
}
string "256Mi" no
resources_requests_cpu “Amount of cpu time that the application limits.“

Redis Master resource limits
ref: http://kubernetes.io/docs/user-guide/compute-resources/
master_resource_limits = {
cpu = “100m"
}
string "100m" no
resources_requests_memory Redis Master resource limits
ref: http://kubernetes.io/docs/user-guide/compute-resources/
master_resource_limits = {
memory = “256Mi"
}
string "256Mi" no
security_context security context if required map(string)
{
“enabled”: true,
“fs_group”: 1001,
“run_as_user”: 1001
}
no
service_account_annotations Map of service account annotations that will be applied on all resources. map(string) {} no
service_account_name Service_account_name for Redis string "redis" no
service_annotations service annotations required for redis map(string) {} no
service_labels Map of service lables that will be applied on all resources. map(string) {} no
service_name service name for Redis string "redis" no
service_port port valuue for the redis string "6379" no
service_type service type of string "ClusterIP" no
stateful_set_annotations Map of annotations that will be applied on the statefulset. map(string) {} no
stateful_set_automount_service_account_token Whether or not to mount the service account token in the pods. bool true no
stateful_set_labels Map of labels that will be applied on the statefulset. map(string) {} no
stateful_set_name Name of the statefulset to deploy. string "redis" no
stateful_set_template_annotations Map of annotations that will be applied on the statefulset template. map(string) {} no
stateful_set_template_labels Map of labels that will be applied on the statefulset template. map(string) {} no
stateful_set_volume_claim_template_annotations Map of annotations that will be applied on the statefulset volume claim template. map(string) {} no
stateful_set_volume_claim_template_enabled Whether or not to enable the volume claim template on the statefulset. bool true no
stateful_set_volume_claim_template_labels Map of labels that will be applied on the statefulset volume claim template. map(string) {} no
stateful_set_volume_claim_template_name Name of the statefulset's volume claim template. string "redis" no
stateful_set_volume_claim_template_requests_storage Size of storage the stateful set volume claim template requests. string "10Gi" no
stateful_set_volume_claim_template_storage_class Storage class to use for the stateful set volume claim template. string null no

Outputs

Name Description
config_map n/a
service n/a
service_account n/a
statefulset n/a

Versioning

This repository follows Semantic Versioning 2.0.0

Git Hooks

This repository uses pre-commit hooks.