Deploy Kubernetes In Five Different Ways

If you’re like many DevOps and IT teams, you want to reap the benefits of containers and container management. Getting started can be painful due to choosing amongst and implementing the numerous deployment models and installers, each with its pros and cons. Let us consider five of these briefly:

1. Deploy Kuberenetes with Minikube for laptop environments
2. kubeadm for on-premises deployments
3. Kubernetes hosted infrastructure with Google Cloud and Microsoft Azure
4. Kube2Go for a small testbed
5. Platform9 Managed Kubernetes (PMK) for a SaaS-Managed, hybrid solution

Though this blog provides some details below, more in-depth coverage is available in Platform9’s Kubernetes Deployment Models: The Ultimate Guide.

deploy kubernetes - cta

1. Deploy Kubernetes with Minikube for laptop environments

The most popular way to deploy Kubernetes locally, Minikube comes with support for a variety of hypervisors, including VirtualBox, VMware Fusion, KVM, and xhyve, and OSs, including OSX, Windows, and Linux. However, running a few containers on an all-in-one node is not as useful as running containers that can scale and reliably run critical applications, whether it’s in the cloud or on premises.

deploy kubernetes - minikube

2. kubeadm for on-premises deployments

One among three installers which include kops and kargo, kubeadm caters to users who want to get their hands dirty with Kubernetes installation. Users will need to invest time and resources into requirements such as scalability and monitoring, and high-availability.

deploy kubernetes - installers

As shown in the figure above, there are a many different components to Kubernetes deployed by kubeadm (and the other installers):

  • Master Node(s): This machine is the controller from which you can deploy Kubernetes pods. Pods are a set of containers that can be deployed across multiple nodes.
  • Pods typically run containerized applications that are very dependent on each other.
  • Worker Nodes: These machines provide an environment where Kubernetes can run.
  • etcd: This is a key-value store used for configuration data and master state information.
  • Scheduler: This service selects appropriate nodes for unscheduled pods
  • API Server: This service provides RESTful Kubernetes API used to update the etcd database. It validates incoming requests before updating etcd.
  • Controller Manager: This service takes care of all other services – discovering and managing of nodes, monitoring pods, etc.
  • Kubelet: This service manages pods on the node based on directions from the API Server on the master.

3. Kubernetes hosted infrastructure with Google Cloud and Microsoft Azure

To get up and running quickly, Google Container Engine (GKE) and Azure Container Service (ACS) provide a platform to deploy your apps in the public cloud. GKE is offered by Google, which is also the pioneer of container orchestration through the Borg Project and leads other public cloud vendors. However, ACS provides flexibility: users get the ability to choose container orchestration and deploy containerized applications on Windows, in addition to Linux.

deploy kubernetes on cloud

4. Kube2Go for a small testbed

As an alternative to hosted infrastructure but restricted to 5 cloud nodes, Kube2Go provides a community focused product which closely resembles Platform9 Managed Kubernetes. Kube2Go aims to make cluster creation and usage drop-dead simple for users. The project aims to make the consumption of Kubernetes clusters easier by simplifying application development using “Helm” charts and integrating serverless functions-as-a-service via Fission.

5. Platform9 Managed Kubernetes (PMK) for a SaaS-Managed, hybrid solution

The Enterprise-grade SaaS-Managed Kubernetes deployment scales for on-premise and public cloud workloads. Like GKE and ACS, Platform9 provides commercial support/SLA, cluster high availability and persistent storage, but links the user’s on-premises infrastructure, enabling a truehybrid environment. Hybrid cloud will be enabled by Cluster Federation, for use cases such as bursting to the public cloud or high availability/disaster recovery.

deploy kubernetes with Platform9

If Platform9 Managed Kubernetes sounds interesting to you, try the free Platform9 sandbox right from your browser.

Synopsis

For a detailed look at deployment considerations, models, and their pros and cons, take a look at Kubernetes Deployment Models: The Ultimate Guide. Let us know of any feedback in the comments section below, tweet us @Platform9Sys or email us at connect@platform9.com.

deploy kubernetes - cta

Platform9

You may also enjoy

Platform9 Introduces Elastic Machine Pool (EMP) at KubeCon 2023 to Optimize Costs on AWS EKS

By Platform9

Kicking off your Kubernetes Implementation Project Successfully [Webinar 1 Recap]

By Platform9

The browser you are using is outdated. For the best experience please download or update your browser to one of the following: