Categories
AWS Kubernetes Terraform

The Most Streamlined Way to Monitor Your Kubernetes Cluster with Linux and Windows Nodes

In the previous post, Boost Your EKS Efficiency: Migrating from Cluster-Autoscaler to Karpenter, we added Karpenter to our AWS EKS reachable by private VPN and created via Terraform.
We can then deploy our applications and scale them in the most appropriate way.
However, we also need to be able to monitor our applications and the infrastructure they use.
But what is the fastest and most efficient way to monitor a Kubernetes cluster and its nodes, both Linux and Windows?

There is a stack called kube-prometheus that was created specifically to provide a ready-made and complete solution that includes everything needed to monitor your Kubernetes cluster.
In this way, in one go we install not only Prometheus, Grafana and also other necessary software such as the exporter for Windows nodes, but we already have all the configurations, dashboards and alarms ready, prepared by a specialized community.

Kubernetes cluster monitoring using kube-prometheus

In this post we will see how to install kube-prometheus on our test infrastructure via Terraform in the fastest way to be ready to monitor our microservices.

Categories
AWS Kubernetes Terraform

Boost Your EKS Efficiency: Migrating from Cluster-Autoscaler to Karpenter

In the previous post How to create an AWS EKS cluster with VPN access using Terraform, we had deployed cluster-autoscaler on our EKS to be able to automatically scale managed node groups.

Let’s now see how to deploy Karpenter on EKS via Terraform and then how to migrate from cluster-autoscaler to Karpenter.

We do this because Karpenter is a sort of evolution of cluster-autoscaler and has several advantages: not only is it faster and allows us to go beyond the constraints of managed node groups, but it allows us to better optimize costs and make development teams more autonomous.

How Karpenter works – original image from https://karpenter.sh/
Categories
AWS Kubernetes Terraform

How to create an AWS EKS cluster with VPN access using Terraform

This Terraform project example allows you to create an EKS with its VPC, its VPN to access it privately and the cluster-autoscaler.
It is excellent for creating your own infrastructure on which you can then carry out your own tests and developments.

In the following diagram we see a summary of the infrastructure that we will create, that is, a VPC with private and public subnets per availability zone, with an EKS and an AWS VPN client that allows you to connect to the private subnets, as well as access the EKS privately.

AWS EKS with private access via AWS client VPN