DevOps

Our Tech Stack 2020

I last wrote about our tech stack 2 years ago. There hasn’t been a huge change. We’ve been moving slow and steady. Our migration from PHP/Yii to JavaScript/React is not yet complete but we’re slowly getting there. 3 years on and we’re 40% done. Migrating…

Our Tech Stack 2018

Has our Tech stack remained the same since 2 years ago when I last wrote about it? Hell no! Our website pages are now served by 2 distinct tech stacks. We use a AWS ALB to sniff the request and send either to our “Legacy”…

Working around the lack of volumes-from in Kubernetes

We have been running containerised apps since early 2014 so in theory, moving to Kubernetes should be easy. The problem is that we currently make use of the –volumes-from docker flag to share volumes between containers of the same app. For example, a common pattern…

AWS Lambda development pipeline

Overview The past year, PeoplePerHour has entered the microservices arena, containerising its platform and separating it into services. On the process of doing so, we realised how much we lacked message buses and long running daemons to process requests, either real time or in an…

New CoreOS out – list dangling volumes

A new stable version of CoreOS, the Operating System we use on our AWS instances, came out recently – v899 and docker was upgraded from v1.7 to v1.9.1. This means, it’s now much easier to find docker volumes that are no longer being used by…

Docker File Modified time Gotcha

The key value proposition of Docker is that once you build a container image, you can run it anywhere. I like the way Adrian Mouat puts it: > What is Software: program Q, when given input P, will produce output R. >HOWEVER: One of the…

Calculating IOPS needed in AWS RDS

One of the most vicious and hard to detect issues in database performance deterioration is I/O. When the I/O of a database is lagging there are multiple and unpredicted issues occuring. Some of the most common are: Increased amount of slow queries Write operations get…

nginx – enable cors for specific domains

Enabling cors using nginx is simple… if you have done it once. This is a small and quick-start example of how it can be done and how you can restrict access to a specific number domains.   Gotcha – SOS (read this if you want…