Kubernetes to RDS: secure connections via IAM roles without passwords

Databases are a cornerstone of any meaningful business application. Or not meaningful. Or not even business. They keep things consistent. Yes, that’s the one.

For decades, we’ve been using usernames and passwords to connect to databases inside applications. While consistent and secure enough, sometimes we want a different, more secure way to access sensitive data. And in this article, I’m going to show you the entire process of configuring a database connection using AWS native tools -- IAM roles and policies.

Continue reading →

EKS Auto Mode custom NodeClasses and NodePools

Hello, dear reader! It's been a while since our last one-way communication. Mostly because the last couple of months have been taxing on me. Searching for a new job is not an easy task these days. Also, there’s been a new Warhammer box, which I just couldn’t resist.

But I'm slowly getting back up to speed, and today we're gonna explore the abilities to manage the managed service -- in particular, how we can configure custom parameters to spin up instances and storage on AWS EKS to our liking.

Continue reading →

Bash functions

Some time ago I wrote about bash aliases and how they reduce the complexity of long commands by replacing them with several symbols. But aliases are not the only things that can ease the usage of shell. In this article I will share with you the magic of bash functions and provide several examples of how awesome they are.

Continue reading →

Everything* as code

Hello, dear visitor. Seeing you here today means you're likely a developer, engineer, coder, or some combination of these -- and that you're familiar with the term "code". For several decades engineers all over the world were writing code. This code, first and foremost, was meant to solve problems. And today I would like to tell you about solving even more problems with the power of code. I will show you why and how we should use code for more and more scenarios across our professional and personal lives.

Continue reading →

A Beginner's Guide to AWS S3 Block Public Access

S3 is an incredibly useful service for storing and sharing a vast variety of files. Due to its ability to store files in a bucket accessible to a broad audience, it is even possible to host a static website. The first "S" in the acronym S3 stands for "Simple." But is it actually so simple when it comes to public access? In this article, I will try to comprehensively figure out the thing that baffles me each time I come across it: the "Block public access" configuration.

Continue reading →

Deploying React application with AWS Amplify

AWS has long allowed users to host their static websites using S3 buckets. While this is a very simple and reliable solution, sometimes there is a need for a more complex application. AWS addresses this need with AWS Amplify Gen 2. In this article, I'm going to show you how to create and serve a React application utilizing its power.

Continue reading →

Hidden files in an S3 bucket

Recently, during a routine backup procedure for personal files, I discovered that my private bucket, which should contain only one archive, for some reason has approximately 500 objects in it. This surprised me greatly, and I decided to investigate what the issue was and how it happened.

Continue reading →

How to minimize docker image size: 4 key approaches

Containers have been a dominant force in the Internet landscape for nearly two decades. Their popularity stems not only from their convenience but also from the ease of creation and setup. I’m certainly not the first to acknowledge that containers are an incredibly useful tool, and I won’t be the last. Like any tool, however, they can be used quickly or they can be used effectively. Today, we will focus on the latter: optimizing application efficiency by reducing the container's size and examining the trade-offs in terms of size, complexity, and build time.

Continue reading →