Skip to content

provectus/sak-incubator

Repository files navigation

tflint

⚠️ working on the readme in progress

SAK-incubator

The sak-incubator repository contains Terraform modules that pass the verification and evaluation stage. After adapting the module to the project, it will get its own repository of the form sak - < module name> and a fixed version. You can offer your modules here

Using SAK Modules

To use modules in your cluster, include some in your project by uncommenting them in the modules.tf file, set variables for these modules in the example.tfvars file, and deploy your cluster. To add or destroy a module, add/remove it in the modules.tf file and run:

terraform plan -out plan && terraform apply plan

All SAK Modules

SAK Modules:

Some of the SAK modules are core - you can't deploy a cluster without them. Core modules are in bold in the list below. Other modules are optional.

Core Modules

1. Kubernetes

Kubernetes module is used to deploy the EKS cluster in Amazon. It creates an autoscaling group (ASG) of EC2 instances in selected accessibility zones and runs containers on those instances, maintaining and scaling them.

2. Network

Network module is a VPC module for creating networks, load balancers, and gateways.

3. System

⚠️ some modules migrate to their repository (like sak-cert-manager, sak-external-dns)

System module configures an EKS cluster with addons and Helm charts - cert-manager (ExternalDNS), external-dns, saled-secrets, kube-state-metrics. Cert-manager is a native Kubernetes certificate management addon to automate issuance and management of TLS certificates. ExternalDNS addon makes Kubernetes resources discoverable via public DNS servers. kube-state-metrics Helm Chart listens to the Kubernetes API server and generates metrics about the state of the objects (deployments, nodes and pods). sealed-secrets manages secretes.

Optional Modules

Other (non-core) modules are optional. You can include them in your project by uncommenting them in the modules.tf file and setting variables for them in the example.tfvars file. You can also add your own modules to include in your cluster deployments.