Piotr Belina

Welcome to my blog.

  • I live in GdaƄsk, Poland
  • I am a Software Engineer & DevOps Engineer

Taking Book Notes Video Summary

Recently I saw a video by Tiago Forte which seemed to me very interesting about taking book notes. It is an interview with Alex Wieckowski from Alex & Books in which he describes his method to get the most out of the book. TLDR Highlight the most interesting parts inside the book. Create your own table of contents at the first page of the book. Write down summary of the book in your own words at the last page of the book....

Deploying Unifi Controller to Kubernetes

Deploying Unifi Controller to Kubernetes

I would like to share with you my manifest to deploy Unifi Controller to my homelab k8s cluster. The config is based on this thread on unifi community forum I wanted to deploy Unifi Controller, this way to easily control config.gateway.json which can persist the non-standard config for router. Without config.gateway.json, the BGP configuration is lost after the router restart. I wanted the BGP config for MetalLB This manifest has several assumptions:...

S3 deployment pipeline for Hugo with GitHub Actions

Create S3 deployment pipeline for Hugo with GitHub Actions

In this post I would like to describe how to create a simple Continuous Deployment pipeline for Hugo website with GitHub Actions. AWS GitHub account First of all, we will need a AWS access key & secret key for GitHub Actions pipeline user to be able to deploy the website. I will create it with Terraform. The user github_deploy is created with aws_iam_user resource, you can of course changed the name of the user....

Serverless blog with Hugo - how website piotrbelina.com is built

Serverless blog with Hugo - how my website is built

I wanted to describe how this website is built. My blog is static page generated by excellent tool called Hugo which makes it serverless solution. It is already second version of static blog, the previous version was built with Gatsby. But since I am a big fan of Go programming language and the build time of Gatsby website was high, I decided to migrate to Hugo. S3, CloudFront & Lambda@Edge Here you can see the architecture of the website....

August 13, 2021 5 min

Gunzip S3 AWS Lambda in Go

You have a gzipped file in S3 and you want to gunzip it. Better yet it is gunzipped on S3 upload event. I could not find a solution, so I am publishing my own. This solution uses streaming with io.Pipe so, it does not have a trouble with Lambda /tmp disk space limit. Solution Full code can be found in GitHub repository. 1 2 3 4 5 6 7 8 9 10 11 12 13 func HandleRequest(ctx context....

April 14, 2021 2 min

#CloudGuruChallenge Multi-Cloud Madness: My Experience

This week I was working on #CloudGuruChallenge Multi Cloud Madness. I decided to challenge myself. I know AWS, I know GCP and I did not know Azure. I have not designed or implemented a multi-cloud solution yet. So it seemed a perfect opportunity to try something new. GitHub repository Design My solution uses 3 public cloud providers: AWS, Google Cloud and Azure. I described the infrastructure as a code using Terraform....

January 31, 2021 3 min
Piotr Belina AWS Certifications Badges

How I passed AWS Associate Certifications

Hello, my name is Piotr Belina. I recently passed three AWS Associate certifications: AWS Certified Solutions Architect Associate, AWS Certified Developer Associate and AWS Certified SysOps Administrator Associate. I would like to tell you how I learned to the exam, what has helped me to prepare and what were the exam topics. Why I passed the certifications I was using AWS since 2012 for my personal projects. I wanted to organize my AWS knowledge and gain some understanding about services I did not used yet like Lambda....

January 5, 2021 4 min