O'Reilly logo
live online training icon Live Online training

DataOps Boot Camp: Deploying Python APIs on Kubernetes

enter image description here

Containerizing a Python Application

Topic: System Administration
Alberto Ríos
Ollie Hughes

When composing robust pipelines, data engineers frequently create data-driven APIs. These composable APIs are more reusable than traditional, monolithic extract-transform-load (ETL) tool suites. Kubernetes provides a platform for developers to easily host these data APIs in the cloud without having to ask the ops team or understand the underlying technology and networks involved.

Join experts Alberto C. Ríos and Oliver Hughes to learn the basics of containerizing APIs. Using Katacoda interactive scenarios, you’ll get hands-on experience deploying a Kubernetes cluster on your laptop or development lab and using Kubernetes to deploy your API.

APAC friendly time

What you'll learn-and how you can apply it

By the end of this live online course, you’ll understand:

  • Basic Kubernetes concepts
  • How to containerize your applications
  • How to configure your deployments
  • Basic Kubernetes networking

And you’ll be able to:

  • Deploy an existing application into Kubernetes
  • Configure your applications and expose them to the internet

This training course is for you because...

  • You’re a working data engineer or data scientist who runs, or wants to run, data pipelines and APIs on Kubernetes.
  • You want to effectively design and work in Kubernetes.

Prerequisites

  • A working knowledge of the Linux or macOS command line
  • A basic understanding of programming

Recommended follow-up:

About your instructors

  • Alberto C. Ríos is a Software Engineer interested in building products people love in agile environments with a focus on high-quality tests.

    At the moment, he's part of the Spring Engineering team at Pivotal working from Seville, Spain on a fully remote team. We are building Spring Cloud related products and frameworks to help people adopt microservices architecture and improve the experience of Spring in Cloud Foundry and Kubernetes.

    Alberto is interested in Reliability, Continuous Delivery, Testing and contributes to several Java Open Source projects. Recently, he's have been speaking at different major software conferences, such as Devoxx Belgium, the largest software conference in Europe and DevNexus, the largest Java conference in America

  • Oliver has had a passion for all things technology from a young age with a keen interest in electronics and computer programming. After graduating from Plymouth University, he started working in the shipping industry, building systems for monitoring traffic movements using Java and Oracle. After a few years he moved into the National Security industry working on innovative research projects for the UK Government. During this time, he was lucky enough to work closely with Python, Docker, Cloud Computing and DevOps tooling when these technologies was still in it’s infancy. He moved to Pivotal (now acquired by VMware) in 2016 where he was able to develop his skills to a much deeper level, building cloud based middleware using Spring Framework for some of largest enterprises in the world. At Pivotal, he gained a deep understand of Kubernetes and has presented a number of talks on the subject aimed at Software Engineers. In his free time, he his passionate about outdoor pursuits and camping

Schedule

The timeframes are only estimates and may vary according to how the class is progressing

Course overview (10 minutes)

  • Presentation: Katacoda overview

Building an image from source (45 minutes)

  • Presentation: Containerizing applications; introduction to Docker; Docker layers; the importance of the base image; uploading the image into an image registry
  • Katacoda interactive exercises: Explore application containerization; containerize a Python application
  • Q&A

Break (5 minutes)

Deploying a dev cluster using Lightweight Kubernetes (K3s) (45 minutes)

  • Presentation: Using multipass to create a Kubernetes node; using the K3s Kubernetes distribution to deploy Kubernetes onto the VM
  • Katacoda interactive exercise: Deploy a dev cluster
  • Q&A

Break (5 minutes)

Kubernetes fundamentals and deploying your application (70 minutes)

  • Presentation: kubectl and friends; creating your first Kubernetes object; creating a deployment; exposing your application with services; adding configuration and Secrets
  • Katacoda interactive exercises: Create a Kubernetes deployment; expose a Python application
  • Q&A