# AWS Observability Accelerator for Terraform Welcome to AWS Observability Accelerator for Terraform! ## Getting Started ## Documentation ## Examples ## Usage ## Submodules ## Motivation ## Support & Feedback --- ## Requirements | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | >= 0.14.0 | | [aws](#requirement\_aws) | >= 4.0.0, < 5.0.0 | | [awscc](#requirement\_awscc) | >= 0.24.0 | | [grafana](#requirement\_grafana) | 1.25.0 | ## Providers | Name | Version | |------|---------| | [aws](#provider\_aws) | >= 4.0.0, < 5.0.0 | | [grafana](#provider\_grafana) | 1.25.0 | ## Modules | Name | Source | Version | |------|--------|---------| | [managed\_grafana](#module\_managed\_grafana) | terraform-aws-modules/managed-service-grafana/aws | ~> 1.3 | | [operator](#module\_operator) | ./modules/add-ons/adot-operator | n/a | ## Resources | Name | Type | |------|------| | [aws_prometheus_alert_manager_definition.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/prometheus_alert_manager_definition) | resource | | [aws_prometheus_workspace.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/prometheus_workspace) | resource | | [grafana_data_source.amp](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/data_source) | resource | | [grafana_folder.this](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/folder) | resource | | [aws_caller_identity.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/caller_identity) | data source | | [aws_eks_cluster.eks_cluster](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/eks_cluster) | data source | | [aws_grafana_workspace.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/grafana_workspace) | data source | | [aws_partition.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/partition) | data source | | [aws_region.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/region) | data source | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [aws\_region](#input\_aws\_region) | AWS Region | `string` | n/a | yes | | [eks\_cluster\_id](#input\_eks\_cluster\_id) | EKS Cluster Id | `string` | n/a | yes | | [enable\_alertmanager](#input\_enable\_alertmanager) | Create AMP AlertManager for all workloads | `bool` | `false` | no | | [enable\_amazon\_eks\_adot](#input\_enable\_amazon\_eks\_adot) | n/a | `bool` | `true` | no | | [enable\_cert\_manager](#input\_enable\_cert\_manager) | Allow reusing an existing installation of cert-manager | `bool` | `true` | no | | [enable\_infra\_metrics](#input\_enable\_infra\_metrics) | n/a | `bool` | `false` | no | | [enable\_java](#input\_enable\_java) | Deploys a collector for JAVA/JMX based workloads, dashboards and alerting rules | `bool` | `false` | no | | [enable\_java\_recording\_rules](#input\_enable\_java\_recording\_rules) | Enable AMP recording rules for Java | `bool` | `true` | no | | [enable\_managed\_grafana](#input\_enable\_managed\_grafana) | n/a | `bool` | `true` | no | | [enable\_managed\_prometheus](#input\_enable\_managed\_prometheus) | n/a | `bool` | `true` | no | | [enable\_opentelemetry\_operator](#input\_enable\_opentelemetry\_operator) | n/a | `bool` | `false` | no | | [grafana\_api\_key](#input\_grafana\_api\_key) | n/a | `string` | `null` | no | | [infra\_metrics\_config](#input\_infra\_metrics\_config) | n/a |
object({
helm_config = map(any)

enable_kube_state_metrics = bool
kms_create_namespace = bool
ksm_k8s_namespace = string
ksm_helm_chart_name = string
ksm_helm_chart_version = string
ksm_helm_release_name = string
ksm_helm_repo_url = string
ksm_helm_settings = map(string)
ksm_helm_values = map(any)

enable_node_exporter = bool
ne_create_namespace = bool
ne_k8s_namespace = string
ne_helm_chart_name = string
ne_helm_chart_version = string
ne_helm_release_name = string
ne_helm_repo_url = string
ne_helm_settings = map(string)
ne_helm_values = map(any)

enable_dashboards = bool
})
| `null` | no | | [irsa\_iam\_permissions\_boundary](#input\_irsa\_iam\_permissions\_boundary) | IAM permissions boundary for IRSA roles | `string` | `""` | no | | [irsa\_iam\_role\_path](#input\_irsa\_iam\_role\_path) | IAM role path for IRSA roles | `string` | `"/"` | no | | [managed\_grafana\_region](#input\_managed\_grafana\_region) | AWS Managed Grafana Workspace Region | `string` | `null` | no | | [managed\_grafana\_workspace\_id](#input\_managed\_grafana\_workspace\_id) | n/a | `string` | `""` | no | | [managed\_prometheus\_workspace\_id](#input\_managed\_prometheus\_workspace\_id) | AWS Managed Prometheus Workspace ID | `string` | `""` | no | | [managed\_prometheus\_workspace\_region](#input\_managed\_prometheus\_workspace\_region) | AWS Managed Prometheus Workspace Region | `string` | `null` | no | | [tags](#input\_tags) | Additional tags (e.g. `map('BusinessUnit`,`XYZ`) | `map(string)` | `{}` | no | ## Outputs | Name | Description | |------|-------------| | [aws\_region](#output\_aws\_region) | EKS Cluster Id | | [eks\_cluster\_id](#output\_eks\_cluster\_id) | EKS Cluster Id | | [eks\_cluster\_version](#output\_eks\_cluster\_version) | n/a | | [grafana\_dashboards\_folder\_id](#output\_grafana\_dashboards\_folder\_id) | n/a | | [managed\_grafana\_workspace\_endpoint](#output\_managed\_grafana\_workspace\_endpoint) | n/a | | [managed\_prometheus\_workspace\_endpoint](#output\_managed\_prometheus\_workspace\_endpoint) | n/a | | [managed\_prometheus\_workspace\_id](#output\_managed\_prometheus\_workspace\_id) | n/a | | [managed\_prometheus\_workspace\_region](#output\_managed\_prometheus\_workspace\_region) | n/a | ## Security See [CONTRIBUTING](CONTRIBUTING.md#security-issue-notifications) for more information. ## License Apache-2.0 Licensed. See [LICENSE](https://github.com/aws-ia/terraform-aws-eks-blueprints/blob/main/LICENSE).