adamalston / kubesat

🛰️ Deploy Kubernetes on AWS manually using Terraform and Ansible

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

kubesat

KubeSat · License Badge AWS Project

Deploy Kubernetes on AWS manually using Terraform and Ansible. Setup a monitoring solution using Prometheus and Grafana to gain oversight of the deployment.

Introduction

Deploying Kubernetes the 'hard way' using Terraform and Ansible allows the developer to exercise more control over their cluster(s). It is also significantly cheaper than using a managed service such as Amazon EKS.

Terraform is a tool for building, changing, and versioning infrastructure safely and efficiently. Configuration files describe to Terraform the components needed to run an application. Terraform generates an execution plan to reach the desired state, and then executes it to build the described infrastructure.

Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates.

A monitoring solution comprised of Prometheus and Grafana provides the developer with more insight into their cluster's performance.

Systems Diagram

systems diagram

Demo

dashboard

Grafana

Setup

Setup documentation can be found in setup.md

Resources

Project icon^ from flaticon.com (edited by me)

Systems diagram^ made with draw.io

Contributors

Back to top

About

🛰️ Deploy Kubernetes on AWS manually using Terraform and Ansible

License:MIT License


Languages

Language:Python 76.4%Language:HCL 17.0%Language:HTML 6.7%