This week I am in Austin, Texas attending KubeCon + CloudNativeCon North America 2017 conference along with 4,000 other technologists to discuss cloud native computing with kubernetes. You may be wondering what this is all about and why the interest. This event is hosted by the Cloud Native Computing Foundation (CNCF) where adopters and technologists from leading open source and cloud native communities gather to further the education and advancement of cloud native computing. Discussions focus around trends in the rapidly-evolving cloud native landscape, containers, orchestration, microservices, serverless as well as DevOps. Cloud native computing uses an open source software stack to deploy applications as microservices to increase agility and maintainability. Each part gets packaged in its own container that is orchestrated and scheduled to optimize resource utilization.
Background
The CNCF was founded in 2015, is 160 members strong and growing. It’s purpose is to provide an open, cloud-neutral, container-native technology stack that enables cloud portability and avoids vendor lock-in. Today, the CNCF hosts 14 projects, compared to only 4 projects in 2016. This gives you an idea of the interest and adoption rate of cloud native technologies. Refer to the CNCF Landscape for a map of the most popular projects and product offerings in the cloud native space. Currently hosted projects include the following.
Announcements
Some of the more notable announcements were around the upcoming Kubernetes v1.9 release that focuses on the DaemonSet, Deployment, ReplicaSet and StatefulSet. In addition, there was mention of the v2.0 release of Prometheus, the release of fluentd v1.0, Jaeger v1.0 release, CoreDNS v1.0 release and containerd v1.0 release. These are pretty significant milestones. Recently a new Certified Kubernetes Conformance program was announced. This gives enterprise organizations the confidence that workloads running on any Certified Kubernetes distribution or platform will work correctly on other Certified Kubernetes distributions or platforms. To date the CNCF has certified offerings from 40 vendors.
Intel’s Imad Sousou took the stage to talk about the launch of Kata Containers which brings the speed of containers with the security of VMs. Kata Containers is a new open source project, hosted by the OpenStack Foundation, building extremely lightweight virtual machines that seamlessly plug into the container ecosystem. It combines the technology from Intel Clear Containers and Hyper runV. This project is getting a lot of attention and is one to keep an eye on.
Next up, Dianne Marsh, Dir of Engineering at Netflix talked about the relationship between tools and culture and how that impacts the technology. Netflix developed Spinnaker, an open source, multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence. It was developed to be used across both AWS and Google Cloud. Netflix performs around 8,000 orchestrations per day and allows their engineers to decide on deployment strategy. The take away was to choose your tools wisely, don’t fight culture.
Adrian Cockcroft of AWS took the stage to talk about some of the principles behind cloud computing. Those being pay-as-you-go pricing, self-service, globally distributed services, availability, turning off resources to maximize utilization and immutable code deployments. AWS has built an open source CNI plugin that anyone can use with their Kubernetes clusters on AWS. This allows you to natively use Amazon VPC networking with your Kubernetes pods. This works by creating multiple ENIs with secondary IPs and then assigning those to pods. A recent survey showed 63% of Kubernetes deployments were running on AWS. That is pretty astounding. There was mention of EKS (currently in preview) which is a highly available, scalable Kubernetes service on AWS. If you haven’t heard about Fargate, this will be one to check out. It’s a technology that allows you to use containers without having to manage the underlying instances.
Summary
For those of you who are running Kubernetes or who are planning on running Kubernetes, you have choices. You can run Kubernetes in your data center on bare-metal, in AWS, Azure, Google Cloud, Oracle Cloud, IBM Cloud, Alibaba Cloud, OpenShift and Platform9 to name a few. What I’m trying to say is you have plenty of options for deployment with plugins and integrations for just about everything. The container ecosystem is thriving and growing fast, especially Kubernetes.
Resources
If you are just starting to learn Kubernetes (K8s for short) here are a few resources.
Fundamentals of Containers, Kubernetes, and Red Hat OpenShift
Good luck on your journey.