Kubernetes 101: Container Orchestration in the Cloud

Posted by Dustin Keib, Head of Cloud Enablement

Jun 10, 2020

featured-image

Welcome to our next look at Kubernetes in the cloud. As we’ve learned so far, K8s is all about applications. It drives them in a manner similar to how a locomotive powers a freight train and all of its key components, which we’ve discussed. 

Now let’s talk about the powerful engine behind them in this latest edition of Kubernetes 101 and examining container orchestration in the cloud to keep your apps running reliably and securely.

What is Container Orchestration?

As we discussed in an earlier blog that explained the difference between containers and pods, containers are what house, or package, your applications in a Kubernetes environment within a pod. 

Kubernetes containers and podsAs a reminder, a pod is a collection of one or more containers that run in clusters of nodes on a virtual machine in the cloud. Containerization of applications can help break apart internal application concerns into “microservices”, which help your developers be more careful in deploying applications. You want to containerize your apps when they get too large or complex to maintain as a large monolith or to increase the usage density of your cloud environment. 

Once you do this, it’s helpful to automate how you manage and maintain these containers within pods, usually in replicated groups. That’s where container orchestration in the cloud comes into play.

When you orchestrate containers, you are automatically managing the container lifecycle, from deployment to death, and its environment. Orchestration includes such activities as:

  • Provisioning and scheduling containers/clusters
  • Ensuring container availability
  • Deploying and managing containers
  • Allocating resources among containers
  • Scaling containers to balance application workloads
  • Monitoring container health and performance

How Does Kubernetes Drive Container Orchestration?

Kubernetes is considered the gold standard of container orchestration solutions. When you use Kubernetes to run container orchestration in the cloud, you’re automating, coordinating, and scheduling deployment, scaling and management of containerized applications.

containersWhen you’re ready to deploy an app into a container on a cluster, you’ll use a configuration file to let the Kubernetes engine know how it should network with containers and store log information. Kubernetes will then schedule the app’s deployment to a container and determines the most appropriate host in the cluster for the deployed application.

Once an app is containerized, the Kubernetes engine will assume responsibility for the container lifecycle based on your predetermined specs. It can orchestrate all of the aforementioned activities above to keep your application environment available and healthy. It removes the need for you to do any of it manually.

Why is Kubernetes Important to Container Orchestration?

Kubernetes microservices

When it comes to powering microservices architecture, Kubernetes delivers big benefits. Because it’s open-source, it can run on any infrastructure platform, including Google Cloud and Amazon Web Services (AWS). This is important particularly when you are using multiple infrastructure solutions. 

It means you can easily move apps across these platforms without losing availability and performance. You get immense portability that allows you to scale granularly, both vertically and horizontally, down to specific app functions across your infrastructure environment.

Kubernetes container orchestration also allows you to boost productivity and speed with a quick, simplified deployment process. You get zero downtime and little room for error.

 

7 Domains Whitepaper

Subscribe for Updates

Dustin Keib, Head of Cloud Enablement

Dustin is a software engineer, systems architect, and cloud scalability expert at Onix. His deep understanding of the full SaaS and Paas stack comes from 20+ years of enterprise IT experience. Dustin is a Certified Google Cloud Solutions Architect, AWS Solutions Architect - Associate, and Puppet Professional and has a deep knowledge of infrastructure automation, containers, and CI/CD system design and implementation.

Popular posts

AWS 101: What is Amazon S3 and Why Should I Use It?

Kubernetes 101: What are Nodes and Clusters?

Update: How to Pass the AWS Solutions Architect Professional Exam