- Open source clouds, virtualization, and application management efforts are growing in healthcare as vendors are using tools that are meant to enhance deployment and management of applications. Kubernetes is one such tool that is becoming more popular in HIT infrastructure.
Kubernetes (K8s) is a “platform for automating deployment, scaling, and operations of application containers across clusters of hosts," according to the official Kubernetes site. Originally designed by Google in 2014, Kubernetes was later donated to the Cloud Native Computing Foundation to make the code open source and available to everyone.
Kubernetes is made up of a set of independent, composable control processes that continuously drive the current state towards the provided desired state.
This tool also allows organizations to:
- Deploy applications quickly and predictably
- Scale applications on the fly
- Roll out new features seamlessly
- Limit hardware usage to required resources only
Kubernetes supports containers, which virtualizes operating systems in order to run applications with their dependencies in an isolated environment. Isolating an application and its code allows developers to arrange applications like building blocks that do not affect one another when they are moved within the infrastructure.
Containers have been around for some time, but Kubernetes lets organizations take advantage of what is referred to as the “new way” of deploying applications.
“The Old Way to deploy applications was to install the applications on a host using the operating system package manager,” the official Kubernetes site explains. “This had the disadvantage of entangling the applications’ executables, configuration, libraries, and lifecycles with each other and with the host OS. One could build immutable virtual-machine images in order to achieve predictable rollouts and rollbacks, but VMs are heavyweight and non-portable.”
The “new way” of deploying applications is to utilize containers by virtualizing the operating system rather than the hardware. This gives each application access to its own file system, which isolates it from the host and eliminates entanglement.
Applications no longer need to cross reference out of the same file repository, which allows them to be easily moved, modified, and deployed because no other applications are affected.
Kubernetes schedules and runs these containers on clusters of physical and virtual machines, allowing IT administrators much more control over their container environment while automating certain tasks to save time.
“Kubernetes also allows developers to ‘cut the cord’ to physical and virtual machines, moving from a host-centric infrastructure to a container-centric infrastructure, which provides the full advantages and benefits inherent to containers,” says the Kubernetes site. “Kubernetes provides the infrastructure to build a truly container-centric development environment.”
Kubernetes meets many application needs including mounting storage systems, balancing loads, monitoring resources, rolling updates, and debugging among others.
Kubernetes shares many characteristics with platform-as-a-service (PaaS) systems, but is not a PaaS. Instead, Kubernetes runs on the application level instead of the hardware level. Kubernetes is not formed out of a single set of features like PaaS, but it does offer deployment scaling, logging, and monitoring like PaaS systems do.
Kubernetes is gaining traction in the health IT world because of the vendors using it to develop their cloud platforms.
Last month, Red Hat announced its latest OpenShift Container Management Platform version.
The latest version of OpenShift provides containers based on Kubernetes 1.6. Red Hat has contributed to both Docker and Kubernetes open source code to improve its products as well as give customers more control over their application and container environments.
Kubernetes was also a popular topic at VMworld 2017, as several Kubernetes based collaborations were announced.
VMware announced its collaboration with Pivotal and Google Cloud on the Pivotal Container Service (PKS).
PKS allows enterprises and service providers to deliver Kubernetes on VMware vSphere and Google Cloud Platform with compatibility to Google Container Engine (GKE). PKS is built to help organizations operationalize Kubernetes.
"We see an open hybrid cloud ecosystem forming based on many technologists and providers coming together on Kubernetes, and Pivotal Container Service is a great way to run containers and Kubernetes on premises," Google Cloud VP of Product Management, Developer Platforms Sam Ramji said in a statement. "It gives you native access to Google Cloud services, and it's on the same release cadence as Google Container Engine. With Pivotal Container Service plus Google Container Engine, you get constant compatibility, and your services, and workloads are deployed the same way, anywhere you need them."
IBM Watson Health announced back in July their deployment of applications with Kubernetes so Watson developers can rapidly build highly available applications using containers.
Kubernetes is an example of what open source tools can do for a healthcare organization looking to gain visibility and control over its HIT infrastructure as it continues to add more advanced virtualization solutions.
Containers are being used by organizations to initiate continuous delivers practices as they seek to digitally transform their IT infrastructure, according to Gartner. Containers alone are not enough to provide organizations with continuous delivery, which is where Kubernetes comes in. The tool is a way for organizations to automate deployment, scaling, and operations to provide better visibility and control of contained applications.
Open source lets vendors and users collaborate to innovate faster by combining knowledge for the sake of progress. Vendor collaborations based on open source solutions – like Kubernetes – give organizations the opportunity to fit their IT infrastructure to meet their needs.