MicroK8s provides Kubernetes 1.14 on any Linux desktop, server or VM – over 40 Linux distros. Mac and Windows are supported too, with multipass.
Existing Charmed Kubernetes users can upgrade smoothly to Kubernetes 1.14, regardless of the underlying hardware or machine virtualisation. Supported deployment targets include AWS, GCE, Azure, VMware, OpenStack, LXD, and bare metal.
“With this release, Canonical makes sure all container orchestration deployments and developers on Ubuntu benefit from the latest features of Kubernetes, as soon as they become available upstream.“ commented Carmine Rimi, Kubernetes product manager at Canonical.
What’s new in Kubernetes 1.14
Notable Upstream Kubernetes 1.14 features:
- New stable features:
- Windows Node support – includes support for Windows Server 2019 for worker nodes and containers.
- Improved kubectl plugin system – extends functionality to kubectl to support extensions, adding new commands as well as overriding specific subcommands at any depth.
- Durable local storage management – makes locally attached (non-network attached) storage available as a persistent volume source, allowing users to take advantage of the typically cheaper and improved performance of persistent local storage.
- Pod priority and preemption – enables Kubernetes scheduler to schedule more important Pods first and when the cluster is out of resources, it removes less important pods to create room for more important ones.
- Pod Ready++ – introduces extension point for external feedback on pod readiness.
- kubeadm improvements:
- Easier multi-node control plane HA setup – joining control plane nodes to a HA cluster can now be simplified by enabling the optional automatic copy of certificates from an existing control plane node.
- Phased execution introduced for
kubeadm join– Similar to the work that was done for kubeadm init in 1.13, in 1.14 the join phases can be now executed step-by-step/selectively using the kubeadm join phase sub-command. This makes it possible to further customize the workflow of joining nodes to the cluster
- Pid limiting has graduated to beta – prevents a pod from starving pid resource
- New (Alpha) storage features:
- CSI Volume Resize Support – this feature adds the ability to dynamically resize a CSI volume for CSI plugins that support this feature.
- CSI Inline Volume Support – prior to 1.14, volumes that are backed by CSI drivers can only be used with the PersistentVolume and PersistentVolumeClaim objects. This works well for remote persistent volumes. With CSI Inline Volume support, local ephemeral volumes can be created and referred to directly in a pod spec, without PV/PVC objects. This puts CSI drivers on feature parity with existing in-tree storage plugins, which already support this volume deployment mode.
- CustomResourceDefinition (CRD) OpenAPI Support – Publishing CRD OpenAPI enables client-side validation, schema explanation and client generation for CustomResources. It covers the gap between CR and native Kubernetes APIs, which already support OpenAPI documentation.
- Kustomize integrated into Kubectl – Declarative specification of Kubernetes objects is the recommended way to manage Kubernetes production workloads, however gaps in the kubectl tooling force users to write their own scripting and tooling to augment the declarative tools with preprocessing transformations. With the new kustomize subcommand you can use a kustomization.yaml file to reference config files, generate config from those files, and allow the user to apply transformations to configs. You can learn more about kustomize here.
- For more information, please see the upstream release notes.
Notable Charmed Kubernetes 1.14 features:
- Pure upstream Kubernetes 1.14 binaries.
- CoreDNS 1.4 is the new default Kubernetes DNS provider, replacing kube-dns. Existing clusters will remain on kube-dns during the upgrade but can be switched to CoreDNS with a charm configuration change.
- Tigera Secure EE CNI plugin joins Flannel, Calico, and Canal as supported networking.
- HAcluster integration adds a new high-availability cluster configuration option using virtual IPs.
- Docker 18.09.2 is the new default in Ubuntu, and Charmed Kubernetes includes a charm action to upgrade Docker across worker nodes.
- Registry enhancements such as read-only mode, frontend support, and additional TLS configuration options.
- Charmed Kubernetes gains support for vSphere `folder` and `respool_path`, and OpenStack `ignore-volume-az`, `bs-version`, and `trust-device-path`.
Notable MicroK8s 1.14 features:
- Pure upstream Kubernetes 1.14 binaries.
- MicroK8s now uses containerd directly, bypassing Docker.
- Improved security of exposed ports and services.
- Jaeger, available with microk8s.enable jaeger
- Fluentd, try it with microk8s.enable fluentd
- Prometheus, enable it with microk8s.enable prometheus
- Istio updated to v1.0.5
- Ingress updated to v0.22.0
- Community page with MicroK8s use cases
- Slack – #cdk and #microk8s on the Kubernetes Slack
- Launchpad – https://launchpad.net/charmed-kubernetes
- IRC – #cdk8s on Freenode IRC
If you’re interested in Kubernetes support, consulting, or training, please get in touch!
About Charmed Kubernetes
Canonical’s certified, multi-cloud Charmed Kubernetes installs pure upstream binaries, and offers simplified deployment, scaling, management, and upgrades of Kubernetes, regardless of the underlying hardware or machine virtualisation. Supported deployment environments include AWS, GCE, Azure, VMware, OpenStack, LXD, and bare metal.
Charmed Kubernetes integrates tightly with underlying cloud services and hardware – enabling GPGPU’s automatically and leveraging cloud-specific services like AWS, Azure and GCE load balancers and storage. Charmed Kubernetes allows independent placement and scaling of components such as etcd or the Kubernetes Master, providing an HA or minimal configuration, and built-in, automated, on-demand upgrades from one version to the next.
Enterprise support for Charmed Kubernetes by Canonical provides customers with a highly available, multi-cloud, flexible and secure platform for their cloud-native workloads and enjoys wide adoption across enterprise, particularly in the telco, financial and retail sectors.