BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Kubernetes 1.3 Released with Cross-Cluster Federation and Alpha Support for Stateful Services

Kubernetes 1.3 Released with Cross-Cluster Federation and Alpha Support for Stateful Services

This item in japanese

Kubernetes 1.3 has been released with improved support for scaling clusters up and down, cross-cluster federated services (including support across public and private/on-prem clouds), improved local development tooling, support for CoreOS’s rkt container format, foundations for the emerging OCI image format and CNI networking standards, and the inclusion of the alpha  ‘PetSet’ feature that enables support for implementing stateful applications.

The Kubernetes blog states that this release contains features that primarily address two user desires: the desire to deploy services across cluster, zone and cloud boundaries; and also the desire to run more diverse workloads in containers, including stateful services. To this end, Kubernetes 1.3 includes the ability to bridge services across multiple public clouds and also on-premise private clouds and datacenters, and also offers integrated alpha support for stateful services, such as key-value stores and databases.

Kubernetes 1.3 also includes several other new features:

  • Increased scale and automation - allowing users to scale their services up and down automatically in response to application demand. Kubernetes 1.3 makes it easier to autoscale clusters up and down, while doubling the maximum number of nodes per cluster
  • Cross-cluster federated services - services can span one or more (possibly remote) clusters and be reachable in a consistent manner from both within and outside their clusters. The Kubernetes blog states that services spanning clusters can have “higher availability, provide geographic distribution and enable hybrid and multi-cloud scenarios”. Kubernetes 1.3 introduces cross-cluster service discovery that enables containers and external clients to consistently resolve to services irrespective of whether they are running partially or completely in other clusters
  • An alpha release of support for stateful applications - inspired by the ‘pets versus cattle’ analogy, a new ‘PetSet’ object has been added to the Kubernetes API that allows operators to treat applications as pets by using the new features:
    • Permanent hostnames that persist across restarts
    • Automatically provisioned persistent disks per container that live beyond the life of a container
    • Unique identities in a group to allow for clustering and leader election
    • Initialization containers which are critical for starting up clustered applications
  • Ease of use for local development - Kubernetes 1.3 introduces Minikube, where with one command a developer can start a local Kubernetes cluster on their laptop that is API compatible with a full Kubernetes cluster. Running Minikube requires the use of a virtual machine, such as VirtualBox, VMware Fusion or KVM. Accordingly, as the use of a VM  may be a restriction for some developers Mike Metral has created nanokube, an open source project with similar goals that only requires Docker to be installed locally in order to run a full Kubernetes cluster.
  • Support for the rkt container image format and container standards OCI & CNI - Kubernetes 1.3 supports emerging standards such as the Container Network Interface (CNI) natively, and has already taken steps to the Open Container Initiative (OCI), which is still being ratified. CoreOS’ rkt has also been introduced as an alternative container runtime in a Kubernetes node, with a first-class integration between rkt and the kubelet
  • Updated Kubernetes dashboard UI - developers can now use the Kubernetes open source dashboard for the majority of interactions with their clusters, rather than having to use the CLI. The updated UI lets developers control, edit and create all workload resources (including Deployments and PetSets)

July also saw milestone releases for several other container orchestration platforms, including: Mesos 1.0 with a new consolidated HTTP API, unified containerisation (including support for running both Docker and rkt format containers without their respective native runtimes), CNI networking support, improved security, and experimental support for both running Mesos on MS Windows and the addition of external storage; and Docker 1.12 GA, where the Docker Engine now has Docker Swarm ‘mode’ integrated out-of-the box (a previous InfoQ article have covered the new features available in Swarm mode).

Adrian Cockcroft, Technology Fellow at Battery Ventures, stated on Twitter that several container orchestration platforms, such as Mesos, Swarm and Kubernetes appear to be converging on a common feature set, and asked what the end game differentiation would be. The full Tweet reply stream contains some lively debate, and key observations from Kelsey Hightower, Staff Developer Advocate at Google Cloud Platform (the creators of Kubernetes) included that from the community standpoint “people just want something that works”, and suggested that when orchestration platforms do become commoditised that “people will pick their products based on human factors like customer services”.

Kubernetes 1.3 is available for download at get.k8s.io and via the open source Kubernetes Github repository. The Kubernetes blog states that Kubernetes is a community project that is built in the open, and offered thanks to all of the contributors, of which the associated GitHub repository now shows 843 unique contributors.

Rate this Article

Adoption
Style

BT