2 Cloud-native application challenges

 

This chapter covers

  • Working with a cloud-native application running in a Kubernetes cluster
  • Choosing between local and remote Kubernetes clusters
  • Understanding the main components and Kubernetes resources
  • Understanding the challenges of working with cloud-native applications

When I want to try something new, a framework, a new tool, or just a new application, I tend to be impatient; I want to see it running immediately. Then, when it is running, I want to dig deeper and understand how it works. I break things to experiment and validate that I understand how these tools, frameworks, or applications work internally. That is the sort of approach we’ll take in this chapter!

To have a cloud-native application up and running, you will need a Kubernetes cluster. In this chapter, you will work with a local Kubernetes cluster using a project called KinD (Kubernetes in Docker, https://kind.sigs.k8s.io/). This local cluster will allow you to deploy applications locally for development and experimentation. To install a set of microservices, you will use Helm, a project that helps package, deploy, and distribute Kubernetes applications. You will install the walking skeleton services introduced in chapter 1, which implements a Conference application.

2.1 Running our cloud-native applications

2.1.1 Choosing the best Kubernetes environment for you

2.1.2 Installing the walking skeleton

2.2 Installing the Conference application with a single command

2.2.1 Verifying that the application is up and running

2.2.2 Interacting with your application

2.3 Inspecting the walking skeleton

2.3.1 Kubernetes deployments basics

2.3.2 Exploring deployments

2.3.3 ReplicaSets

2.3.4 Connecting services

2.3.5 Exploring services

2.3.6 Service discovery in Kubernetes

2.3.7 Troubleshooting internal services

2.4 Cloud-native application challenges

sitemap