CtrlK
BlogDocsLog inGet started
Tessl Logo

nitinjain999/platform-skills

Production-grade platform engineering handbook — Kubernetes, Terraform, Flux CD, GitHub Actions, AWS, and more.

67

Quality

84%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

README.mdexamples/terraform/eks-cluster/

EKS Cluster Module

Production-ready Amazon EKS cluster module with opinionated defaults and security best practices.

Features

  • Security: Private endpoint, envelope encryption, audit logging enabled
  • Networking: VPC CNI with custom networking support
  • IAM: IRSA (IAM Roles for Service Accounts) configured
  • Add-ons: AWS Load Balancer Controller, EBS CSI Driver, VPC CNI
  • Managed node groups: Auto-scaling with multiple instance types
  • Monitoring: CloudWatch logging and Container Insights ready

Usage

module "eks_cluster" {
  source = "./eks-cluster"

  cluster_name    = "production-cluster"
  cluster_version = "1.29"

  vpc_id     = module.vpc.vpc_id
  subnet_ids = module.vpc.private_subnets

  node_groups = {
    general = {
      desired_size = 3
      min_size     = 2
      max_size     = 10

      instance_types = ["t3.large", "t3a.large"]
      capacity_type  = "SPOT"

      labels = {
        role = "general"
      }

      taints = []
    }
  }

  tags = {
    Environment = "production"
    ManagedBy   = "terraform"
  }
}

Requirements

NameVersion
terraform>= 1.5.0
aws>= 5.0.0

Providers

NameVersion
aws>= 5.0.0

Inputs

NameDescriptionTypeDefaultRequired
cluster_nameName of the EKS clusterstringn/ayes
cluster_versionKubernetes versionstring"1.29"no
vpc_idVPC ID where cluster will be createdstringn/ayes
subnet_idsList of subnet IDs for the clusterlist(string)n/ayes
node_groupsMap of node group configurationsmap(any){}no
tagsTags to apply to all resourcesmap(string){}no

Outputs

NameDescription
cluster_idEKS cluster ID
cluster_endpointEKS cluster endpoint
cluster_security_group_idSecurity group ID attached to the cluster
cluster_iam_role_arnIAM role ARN of the cluster
oidc_provider_arnARN of the OIDC provider for IRSA

Examples

See the terraform examples directory for additional patterns.

Security Considerations

  • Cluster endpoint is private by default
  • Envelope encryption enabled for secrets
  • Audit logging enabled for control plane
  • IAM roles follow least-privilege principles
  • Security groups restrict traffic appropriately

License

Apache-2.0

examples

terraform

BEFORE_AFTER.md

CHANGELOG.md

CODE_OF_CONDUCT.md

COMMANDS.md

CONTRIBUTING.md

EDITOR_INTEGRATIONS.md

GETTING_STARTED.md

HOW_IT_WORKS.md

install.sh

INSTALLATION.md

LAUNCH.md

PROMPTS.md

QUICKSTART.md

README.md

renovate.json

SECURITY.md

SKILL.md

tessl.json

tile.json