Hello World! Excuse the pun… jump on board with me on this journey and we will learn how to setup and deploy a micro-services architecture using Kubernetes, Laravel Lumen and Skaffold.

Image for post
Image for post
Kubernetes

1. Project Setup

First off, let’s create an empty directory with git initialised, this will be our project working folder, I am running on Ubuntu so I would run something similar to the following command:

Next up let’s create some kind of directory structure to hold our services and Kubernetes manifests.

Go ahead and create the folder structure:

2. Creating a service

Create a Laravel Lumen application

Now lets create…


Image for post
Image for post

I was un-marshalling some JSON data onto my class and realised we could use PHP 8 attributes to make it cleaner and more easier to use.

Let me walk you through a quick example, imagine you have some JSON data:

The above data represents a flight departing from London Gatwick to Malta…


Image for post
Image for post

Introduction

Hey everyone! 👋 In my first story I guided you through building and deploying a Laravel Lumen application in a micro-services architecture using Kubernetes, Skaffold and Minikube for local testing.

Today we are going to take a deeper dive into a Kubernetes Deployment manifest and explore the following topics:

  • Setting resource requests/limits
  • Setting pod affinity rules.
  • Creating and setting priority classes.

This guide assumes you are familiar with the basics of Kubernetes and Minikube, there will be a chance in each section to participate and run commands against your local cluster, however, you are not required.

Setting Resource Requests / Limits

Let’s kick off with…

Ben Osborne

Experienced Full-stack Developer | PHP | Kubernetes | Go | DevOps | AWS | Google Cloud

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store