Go gRPC services in production on Kubernetes

By Myles McDonnell

Elevator Pitch

This talk walks through the entire process of building a gRPC service using Go and delivering that into production running on Kubernetes. Demonstration will include service code, unit testing, system testing, CI and CD using Concourse.CI, Quay.io and Helm along with monitoring using Prometheus.

Description

There are a number steps that need to be taken and a number of tools to be used in order to build an effective continuous delivery pipeline for a Go gRPC service into production on Kubernetes.

This talk walks through and demonstrates each step of the way, from first writing the Proto specification all the way through the build and deployment pipeline to monitoring the service in a live environment using Prometheus on a Google Cloud Platform hosted Kubernetes cluster. All code and artefacts will be publicly available for attendees following the talk.

In addition to demonstrating how this is done the talk will focus on the value and purpose of each step in a wider context. For example, how can breaking API changes be managed in an environment where a service in production has several consumers? What can be done to assist developer communities in consuming services pre and post deployment? Whilst the demonstration is built on Go and gRPC most if not all of the same concerns and techniques are equally applicable to services built using other technologies and exposing difference types of API, such as REST or GraphQL.

Notes

Hello Organisers!

You can read my professional bio here: https://www.linkedin.com/in/mylesmcdonnell/

The subject matter of the talk is based on the work I have been doing for a client since January where we are building a suite of products and services using Go and NodeJS. I aim to balance the talk between technical details and abstract techniques and approaches, combined with fluid and easy to follow demonstrations of the development process, CD pipeline and monitoring tasks.

I am currently based in London although I am moving to Barcelona in June so I will have no costs to be reimbursed. I have previous experience in delivering technical talks, having given a talk at GolangUK in 2017 and several talks at Meetups in London.

Kind Regards

Myles