New Release for Kubernetes
It’s coming! Kubernetes 1.6 is the newest released focused on delivering new networking capabilities, improved Daemon sets, scheduling and federation features.
As Kubernetes continues to claw its way to becoming standard and increasingly is being used to deploy larger clusters requiring customers to focus on utilization and deployment standards to maximize the inherent capabilities. With the new release, Federation allows users to maximize resources by allowing users to use the closest cluster to them or to use the cluster that has more spare capacity. In addition, some of the beta features like kubefed supports federation on on-premise clusters and will allow for automatic configuration using kube-dns to join clusters and allows them to pass arguments to various federation components.
Improved Access Controls and Authentication
With the new release, users can access a new beta that uses Role Based Access Control roles to manage the control plane, controller components and nodes. In addition, the Attribute-Based Access Controls have been updated with new wild card options for authenticated users as well as improved APIs.
New Scheduling Features
Right off the bat you have some new beta features that allow users to have multiple schedulers with each scheduler managing different aspects for your Kubernetes pod including setting which scheduler you want for a pod on the pod sec versus doing it through annotation from the previous version.
Some of the beta features including release updated Taints which allow users to dedicated a node to a specific pod. This is a similar methodology used in OpenStacks “flavors.” You also get new node and pod affinity and anti-affinity capabilities. With this users can schedule which pods should be and should not be on the same individual unit of hardware. As an example you can separate web apps from databases or vice versa. Moreover, you could also have an element that needs to be highly available and you can spread your instances easily over different nodes to protect your application or service from failure.
Network and Storage Updates
With the 1.6 release Kubernetes released the generally available version of StorageClasses. StorageClasses are similar to flavors in OpenStack and allow users to specify which storage is used. In addition, users can use configmap and secret to populate environment variables for dynamic PersistentVolume provisioning.
For those users who need it gives you the ability to control DNS by enabling stubDomains allow end-users to define the nameservers used for specific domains (such as *.mycompany.local), as well as specifying what upstreamNameservers you want to use, bypassing the default resolve.conf.
Some Other Notable Changes
Many of the changes in 1.6 are more focused on the operators and there are a still a lot of questions related to end-user usability but we can save that for another blog post. Some of these changes include:
The ability to know via the API whether a Deployment is blocked
Easier logging access
Improvements to the Horizontal Pod Autoscaler
You can see the full release notes.