Application Updates, Gradual Rollouts, and Autoscaling

This chapter will expand upon the core concepts, and show you how to roll out updates and test new features of your application with minimal disruption to uptime. It will cover the basics of doing application updates, gradual rollouts, and A/B testing. In addition, we will look at scaling the Kubernetes cluster itself.

In version 1.2, Kubernetes released a Deployments API. Deployments are the recommended way to deal with scaling and application updates going forward. As mentioned in previous chapters, ReplicationControllers are no longer the recommended manner for managing application updates. However, as they're still core functionality for many operators, we will explore rolling updates in this chapter as an introduction to the scaling concept and then dive into the preferred method of using Deployments in the next chapter.

We'll also investigate the functionality of Helm and Helm Charts that will help you manage Kubernetes resources. Helm is a way to manage packages in Kubernetes much in the same way that apt/yum manage code in the Linux ecosystem. Helm also lets you share your applications with others, and most importantly create reproducible builds of Kubernetes applications.

In this chapter, we will cover the following topics:

  • Application scaling
  • Rolling updates
  • A/B testing
  • Application autoscaling
  • Scaling up your cluster
  • Using Helm

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.15.219.80