Orlando Florin Rosu - Fotolia
Organizations can offload some of the heavy lifting to deploy containers with Kubernetes as a service from a hosting...
Docker containers have a steep learning curve because of the intrinsic paradigm shift from hardware virtualization to OS-level abstraction. Developers and IT pros know how to interact with line-of-business applications through VMs, but Docker packages an application with all its dependencies into portable containers that share an OS and run on different host servers with different hardware platforms.
Containerization becomes more complex when a company seeks high availability and scale for Dockerized apps -- this is where Kubernetes fits in. Essentially, Kubernetes creates a robust private cloud with redundant storage, networking and compute resources for containers. The Kubernetes web administration console presumes that the user has a deep knowledge of private cloud.
Kubernetes-as-a-service vendors purport to simplify this administration and management, while maintaining the benefits of the underlying open source technology.
Before an organization can decide on using Kubernetes as a service or not, it must address vital questions:
- Will clusters be hosted on premises, in the cloud or in a hybrid system?
- How much support does the IT organization need? Will it rely on the provider's monitoring and maintenance tooling?
- What are the pros and cons of running pure open source Kubernetes versus a modified distribution?
- How much vendor lock-in is involved? How easy or difficult would it be to migrate clusters to another cloud provider or on premises?
CoreOS Tectonic sticks to Kubernetes project
Container Linux by CoreOS, formerly called CoreOS Linux, is a lightweight Linux distribution optimized for clustered deployment and Docker container workloads. CoreOS Tectonic is a management layer that eases Kubernetes installation, configuration and maintenance on premises or in the cloud.
Tectonic simplifies installation and management, automates patch management to secure the hosting infrastructure and ensures that clusters always run the latest upstream Kubernetes release and not a forked version.
Forked versions are the Kubernetes-as-a-service distributions provided by other vendors or developed by other users, and they differ from the pure form of Kubernetes without a service accompaniment. Tectonic, however, remains true to the original project.
Organizations can install Tectonic on Amazon Web Services (AWS), Microsoft Azure or OpenStack using the HashiCorp Terraform tool or on bare metal in an on-premises data center. Terraform gives users a way to define computing infrastructures as code; this facilitates rapid resource provisioning and maintenance.
Tectonic is free for use on up to 10 managed nodes, then priced per node annually.
Red Hat OpenShift underpins enterprise containers
Red Hat Enterprise Linux (RHEL) is a widely adopted Linux distribution. OpenShift, Red Hat's container application platform, orchestrates RHEL, the OpenShift Origin Kubernetes-as-a-service distribution and Docker into a flexible, extensible infrastructure that runs either on premises as OpenShift Dedicated or on AWS or Google Cloud Platform public clouds.
In OpenShift, Red Hat handles most of the inner workings of container deployment and management with its package of Kubernetes and related tools, while the organization focuses on line-of-business applications and service deployment workflows (Figure 3).
Tectonic acts as a wrapper for Kubernetes, but OpenShift provides the entire stack, from OS through its proprietary Kubernetes distribution, including integrated source control and continuous integration and deployment pipeline tooling.
Red Hat is known for robust support: OpenShift pricing includes telephone, email and ticket-based help options.
Canonical makes Ubuntu, a leading free and open source Linux server and desktop OS distribution. The Canonical Kubernetes-as-a-service distribution is a packaged deployment that stitches together additional Canonical open source projects surrounding Kubernetes, such as Juju, an application modeling framework that uses Charm scripts to simplify Kubernetes infrastructure builds; Conjure-up orchestrates these Juju script deployments. This distribution runs on various infrastructure environments, including local workstations, bare-metal servers, AWS, Google Compute Engine, Azure, Joyent and OpenStack.
Canonical partnered with Google, Kubernetes' original developer, to maintain its distribution, with the aim to simplify and standardize Kubernetes clusters on just about any conceivable environment.
Users can engage Canonical to host Kubernetes clusters or do it themselves and obtain help directly from Canonical and Google.
Platform9 shuns lock-in
Platform9 is an as-a-service hosting provider for open source tools and frameworks that can manage Kubernetes clusters regardless of where they're hosted. Platform9 advertises its Kubernetes distribution as a software-as-a-service application with no vendor lock-in.
Similar to Tectonic, Platform9 wraps native Kubernetes with its own agents and tooling. Its web console interface is easy to use (Figure 4). Platform9's pricing is per socket, and enterprise discounts are available.
Take into account pricing and the financial bottom line; these Kubernetes-as-a-service providers offer value beyond the underlying free and open source software upon which their products are built.
Need more vendor options for Kubernetes?
Pivotal integrated it with the Cloud Foundry platform as a service
Microsoft supports building a Kubernetes cluster on Azure
And OpenStack can rely on Kubernetes combined with Fuel