Skip to content

makandra/terraform-eks-adot

Repository files navigation

Terraform module to setup AWS Distro for OpenTelemetry in an EKS cluster.

Usage example

module "adot" {
  source  = "makandra/adot/eks"
  # version = "1.0.0" please check which version you want to use

  cert-manager = true
  cluster_name = "my-eks-cluster"
}

For more detailed examples see the examples section.

cert-manager

ADOT depends on a certificate required for authentication. Please see ADOT prerequisites.

AWS recommends to install cert-manager to the EKS cluster so that a self-signed certificate can be created.

If enabled cert-manager always gets deployed to the cert-manager namespace. If you want to configure cert-manager in more detail disable it in this module and provide your own installation.

Permissions applied

Enabling the ADOT Operator plugin requires some permissions which AWS provides as kubernetes manifest. You can refer to it in ADOT prerequisites. The file is stored in this repository and is applied via kubectl.

Requirements

Name Version
terraform >= 1.0.0
aws >= 4.7.0
helm >= 2.0
kubectl ~>1.14
kubernetes ~>2.12

Providers

Name Version
aws >= 4.7.0
helm >= 2.0
kubectl ~>1.14
kubernetes ~>2.12

Modules

No modules.

Resources

Name Type
aws_eks_addon.this resource
aws_iam_role.adot_collector resource
aws_iam_role_policy_attachment.CloudWatchAgentServerPolicy resource
helm_release.cert-manager resource
kubectl_manifest.this resource
kubernetes_namespace.operator resource
kubernetes_namespace.this resource
kubernetes_service_account.adot-collector resource
aws_eks_cluster.this data source
aws_iam_openid_connect_provider.this data source

Inputs

Name Description Type Default Required
adot_collector_policy_arns List of IAM policy ARNs to attach to the ADOT collector service account. list(string)
[
"arn:aws:iam::aws:policy/AmazonPrometheusRemoteWriteAccess",
"arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy",
"arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess"
]
no
adot_version The version of the AWS Distro for OpenTelemetry addon to use. string "v0.58.0-eksbuild.1" no
cert-manager Whether to deploy cert-manager. If enabled it always gets deployed to the cert-manager namespace. If you want to configure cert-manager in more detail disable it here and provide your own installation. bool n/a yes
cluster_name Name of the EKS cluster to setup ADOT. string n/a yes
namespace The namespace to install the AWS Distro for OpenTelemetry addon. string "adot" no

Outputs

No outputs.

About

Terraform module to setup AWS Distro for OpenTelemetry Operator

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages