4 Deploying applications in Kubernetes

 

This chapter covers

  • Scheduling pods to nodes
  • Creating multiple containers within a pod
  • Requesting and limiting the resources a pod can take
  • Passing configuration data to pods

Now let’s shift our focus to the workloads and scheduling part of the exam objectives and focus on the many different aspects of scheduling and their intricacies. Deploying applications to run on Kubernetes is commonly referred to as “scheduling”, which makes sense because we’re placing a pod on a node to run. There are many ways to deploy applications (aka schedule pods) to Kubernetes, as we’ll discover in this chapter. You will realize that one size doesn’t fit all, which creates freedom to run the applications in the environment that’s best for the containerized application. This includes the ability to reserve resources from the underlying infrastructure as well as decouple components such as configuration information and sensitive data within.

4.1 Scheduling applications

4.1.1 Node selectors

4.1.2 Node and pod affinity

4.2 Configuring Pods

4.2.1 Resource requests and limits

4.2.2 Multi-container pods

4.2.3 ConfigMaps

4.2.4 Secrets

4.3 Summary