Back

Speaker "Jonathan Johnson" Details Back

 

Topic

1. Workshop : "Kubernetes fundamentals"

2. Workshop : "Design and Development of Cloud Native Applications"

Abstract

Topics
Deploying ★ Scaling ★ Observing ★ Serverless ★ Operators ★ Meshing ★ Machine Learning
Kubernetes is a rich infrastructure that helps you tackle the complexities of distributed computing. As a developer you want to understand how to design your code to take advantage of the whole data center for your scaling, load balanced, and resilient microservices.
These workshops are for software engineers (architects, developers, DevOps, administrators, testers) who want to move their solutions to microservices and containers running on cloud native, distributed container platforms. We cover the key techniques to automate, deploy, and manage containerized applications on Kubernetes.
Workshops, 4  hours each:
 
Kubernetes Fundamentals
Kubernetes Techniques
Kubernetes Advanced
 
Abstracts
Kubernetes Fundamentals
What is Kubernetes? 
This is an introduction to Kubernetes from a developer’s perspective. This workshop helps you understand the terms, architecture and the mechanics of Kubernetes and its tools. We’ll break down its control plane components and understand how it can manage and scale your applications across hundreds of machines. With hands-on exercises you will make declarations and control Kubernetes to have it start and connect applications together. By the end of the workshop you will understand how to run applications and how Kubernetes carries out these seemingly complex requests.
Kubernetes Techniques
How do I use Kubernetes? 
There’s much more to Kubernetes than just running your applications. There are 50 types of standard resources that you can use and control. Many applications are stateful so we’ll see how to connect microservices and data stores to data volumes. We explore scaling applications based on fluctuating backpressures. We’ll explore the 3 pillars of observability with logging, tracing and metrics. In the hands-on labs you’ll experience how to package a polyglot application stack and run the components in concert. Many applications communicate through REST and some prefer the faster gRPC connections and we’ll investigate those differences. As your applications grow you’ll need to package them into installable Helm charts. You’ll be exposed to the importance of the operator pattern to see it solving some architecture goals for deployment and management of applications. During these four hours we’ll touch on the major topics that you’ll need to understand as an application engineer using Kubernetes.
Kubernetes Advanced
How can Kubernetes help me solve problems? 
Now that you understand how Kubernetes works and can trust its resilience and scalability, we’ll explore some interesting application stacks that stand on the shoulders of Kubernetes. The Knative API on Kubernetes has proven to be an effective host for serverless frameworks using Knative. While Kubernetes has an effective networking control plane, we’ll add a service mesh to Kubernetes to see what advantages and complications it can add to a cluster. CI/CD pipelines and workflows run very effectively on Kubernetes and we’ll experience the advantages of Tekton. All of these topics lead us to the Kubeflow machine learning stack and we’ll install and dissect its parts to understand how it leverages Kubernetes, meshes, knative, and pipelines to deliver a scalable workflow engine for developing and deploying models. You’ll have a deeper appreciation for how Kubernetes can host complex distributed computing applications.
 

Profile

Software Architectures ★ Speaker ★ Workshop Hosting ★ Kubernetes & Java Specialist ★ Independent
An independent consultant working worldwide, specializing in the ecosystem of distributed computing with containers, Java, microservices, Kubernetes and continuous delivery.
For 30 years I have been designing useful software to move businesses forward. My career began creating laboratory instrument software and throughout the years, my focus has been moving with industry advances benefitting from Moore’s Law. I was enticed by the advent of object-oriented design and applied it to financial software. As banking moved to the internet, enterprise applications took off and Java exploded onto the scene. Since then, I have inhabited that ecosystem. After a few years, I returned to laboratory software and leveraged Java-based state machines and enterprise services to manage the terabytes of data flowing out of DNA sequencing instruments. As a hands-on architect, I applied the advantages of microservices, containers, and Kubernetes with a laboratory management platform.
Today I enjoy sharing my experience with peers. I provide my perspective on ways to modernize application architectures while adhering to the fundamentals of modularity - high cohesion and low coupling.