/terraform-eks-grafana-loki-stack

Grafana Stack, with Grafana, Prometheus, Loki, Promtail on AWS EKS

Primary LanguageHCL

terraform-eks-grafana-loki-stack

Grafana Stack, with Grafana, Prometheus, Loki, Promtail on AWS EKS

Requirements

No requirements.

Providers

Name Version
aws n/a
helm n/a

Modules

Name Source Version
eks terraform-aws-modules/eks/aws ~> v19.21.0
loki_oidc_role terraform-aws-modules/iam/aws//modules/iam-role-for-service-accounts-eks ~> 5.0
vpc terraform-aws-modules/vpc/aws ~> 5.0

Resources

Name Type
aws_elasticache_cluster.memcached resource
aws_elasticache_subnet_group.memcached_subnet_group resource
aws_iam_policy.grafana-loki-s3-policy resource
aws_iam_role_policy_attachment.loki-attach resource
aws_s3_bucket.grafana-loki-chunks-bucket resource
aws_s3_bucket.grafana-loki-ruler-bucket resource
aws_security_group.memcached_sg resource
helm_release.grafana-loki-deployment resource
helm_release.grafana-promtail resource
helm_release.prometheus resource
aws_availability_zones.available data source
aws_caller_identity.current data source

Inputs

Name Description Type Default Required
default_tags Default tags to be applied to resources. map(string) {} no
eks_capacity_type Capacity type (ON_DEMAND, SPOT). string "ON_DEMAND" no
eks_desired_size The asg desired size value. number 3 no
eks_instance_type EKS instance types. string "t3.medium" no
eks_max_size The asg max size value. number 5 no
eks_min_size The asg min size value. number 3 no
eks_version EKS version. string "1.29" no
eks_workers_iam_policies IAM policies to be associated to the workers. map(string)
{
"AmazonEBSCSIDriverPolicy": "arn:aws:iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy",
"AmazonEC2ContainerRegistryReadOnly": "arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly",
"AmazonSSMManagedInstanceCore": "arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore"
}
no
elasticache_enabled Deploys and use elasticache memcached for loki cache. bool false no
elasticache_instance_type The elasticache instance type. string "cache.t3.small" no
elasticache_nodes The number of cache nodes in elasticache. number 1 no
elasticache_parameter_group_name The elasticache parameter group name. string "default.memcached1.6" no
elasticache_port_number The elasticache port number. number 11211 no
environment Environment string "dev" no
loki_log_retention The grafana loki log retention in hours. string "720h" no
loki_namespace The namespace where loki should be deployed. string "observability" no
loki_release_name The grafana loki helm release name. string "grafana-loki" no
loki_version The kube prometheus stack helm chart version. string "6.7.1" no
project_name Name to identify the project name in tags, descriptions, etc. string "loki-stack" no
prometheus_namespace The namespace where prometheus should be deployed. string "observability" no
prometheus_release_name The prometheus helm release name. string "kube-prometheus-stack" no
prometheus_version The kube prometheus stack helm chart version. string "61.7.0" no
promtail_namespace The namespace where promtail should be deployed. string "observability" no
promtail_release_name The grafana promtail helm release name. string "grafana-promtail" no
promtail_version The grafana promtail helm chart version. string "6.16.4" no
region AWS region. string "eu-west-2" no
vpc_cidr VPC CIDR. string "10.0.0.0/16" no

Outputs

Name Description
access_cluster_cmd n/a
account_id n/a
cluster_certificate_authority_data n/a
cluster_endpoint n/a
cluster_name n/a
memcached_endpoint n/a