Book Image

Kubernetes for Developers

By : Joseph Heck
Book Image

Kubernetes for Developers

By: Joseph Heck

Overview of this book

Kubernetes is documented and typically approached from the perspective of someone running software that has already been built. Kubernetes may also be used to enhance the development process, enabling more consistent testing and analysis of code to help developers verify not only its correctness, but also its efficiency. This book introduces key Kubernetes concepts, coupled with examples of how to deploy and use them with a bit of Node.js and Python example code, so that you can quickly replicate and use that knowledge. You will begin by setting up Kubernetes to help you develop and package your code. We walk you through the setup and installation process before working with Kubernetes in the development environment. We then delve into concepts such as automating your build process, autonomic computing, debugging, and integration testing. This book covers all the concepts required for a developer to work with Kubernetes. By the end of this book, you will be in a position to use Kubernetes in development ecosystems.
Table of Contents (16 chapters)
Title Page
Packt Upsell
Contributors
Preface
Index

Example service – Redis


We will create an example service within Kubernetes, to show you how you can connect to services, and use them to architect your code. Redis (https://redis.io) is a super-flexible data store that you may already be familiar with, and it is easy to use from both Python and Node.js.

Redis is already available as a container, and it is easily found on the Docker Hub (https://hub.docker.com/) as a container image. There are several options available, with the relevant tags listed on the Docker Hub web page:

We can use this image with the kubectl run command to create a deployment, and then with the kubectl expose command to create a service to map to the Pods within the deployment:

kubectl run redis --image=docker.io/redis:alpine

We will create a deployment named redis, and through that deployment download the image and start running it. We can see the Pod operational:

kubectl get pods
NAME                     READY     STATUS    RESTARTS   AGE
flask-1908233635-d6stj   1/1...