Seattle, WA
December 10–13, 2018
Click Here for More Information & Registration
View Venue Map

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

Application & Development [clear filter]
Tuesday, December 11


Getting The Most Out Of Kubernetes with Resource Limits and Load Testing - Harrison Harnisch, Buffer
You've carefully crafted your first K8s service, and you're ready to deploy it to production. Well, not quite: there are still some important unknowns to understand before your service will be ready for production. It's still unclear how the new service behaves when it's being pushed, and it's possible that K8s will kill the service before serving a single request. At Buffer, we've developed a technique to optimize K8s deployment limits using load testing to identify optimal resource limits. When the service is under heavy load there are a few key metrics to watch to identify bottlenecks. These key metrics can be used to adjust resource limits. This approach allowed us to safely and efficiently switch over more than half our production traffic to our K8s cluster and can be applied to any application.

This talk will include a live demo of how to tune Etcd using methods we do at Buffer.

avatar for Harrison Harnisch

Harrison Harnisch

Staff Software Engineer, ZEIT
Harrison is a Staff Software Engineer at Buffer, implementing the transition to microservices with Kubernetes and Docker. He's given talks at KubeconEU and KubeconUS about setting resource limits.

Tuesday December 11, 2018 10:50am - 11:25am
Ballroom 6E


Front-end Application Deployment Patterns - Ross Kukulinski, Heptio
Kubernetes is a powerful deployment platform that allows complex workflows like rolling, blue-green, and canary deployments of software. Safely managing these complex deployment patterns for frontend browser applications where HTML references multiple CSS, JavaScript, or image assets is fraught with challenges. Doing this poorly results in broken page loads or inconsistent UI behavior.

In this session, Ross Kukulinski, will cover:
- Common deployment patterns for applications on Kubernetes
- How web-applications make these patterns more complex
- Solutions and associated live-demos showing how to resolve these problems

Attendees will leave this presentation with a variety of strategies to manage blue-green, canary, and A/B deployments of front-end applications using of Kubernetes.

avatar for Ross Kukulinski

Ross Kukulinski

Product Manager, VMware
Ross Kukulinski is a Senior Product Manager at Heptio, Inc., where he focuses on growing the Kubernetes community, tackling global-scale engineering problems, and guiding businesses on their Cloud Native journey. His technical background is in architecting and deploying scalable... Read More →

Tuesday December 11, 2018 11:40am - 12:15pm
Ballroom 6E


Scale Your Service on What Matters: Autoscaling on Latency - Thomas Rampelberg, Buoyant
Scaling HTTP based workloads is about more than cpu and memory. This talk will show why it is critical to scale based on latency, as well as how to do it for your own service by combining Linkerd, Prometheus, and Kubernetes. We demonstrate how to use Linkerd to instrument your service to collect aggregated service latency, store these metrics in Prometheus, and use them as custom metrics for consumption by Kubernetes’s Horizontal Pod Autoscaler. We demonstrate how latency-based autoscaling outperforms CPU- and memory-based autoscaling under a variety of conditions including live traffic from the attendees of this talk, and suggest ways to safely apply this technique to existing systems.

avatar for Thomas Rampelberg

Thomas Rampelberg

Software Engineer, Buoyant
Thomas Rampelberg is a Software Engineer at Buoyant Inc. He has made a career of building infrastructure software that allows developers and operators to focus on what is important to them. He is focused on one of the big problems in this space: providing insight into what is happening... Read More →

slides pdf

Tuesday December 11, 2018 1:45pm - 2:20pm
Ballroom 6B


Connecting and Testing Virtual Network Topologies on Kubernetes - Rich Renner & Gage Orsburn, One Source Integrations
Today's complex, agile networking setups demand the same CI/CD and automated testing support as user-facing applications have. But you can't simulate an entire networking topology with Kubernetes. Or can you?

The declarative approach of Kubernetes makes it simple to recreate and orchestrate distributed applications for continuous integration. In this session we are going to talk about how we used L2 device plugins to wire up the different parts of our applications. And how KubeVirt allowed us to even test pre-existing virtual network appliances in the very same setup.

This setup enables entire enterprise topologies to be modeled and validated before released into production.

avatar for Gage Orsburn

Gage Orsburn

Software Architect, One Source Integrations
One Source Integrations Contribute to kubevirt speaking for shares at Cisco Systems.
avatar for Rich Renner

Rich Renner

Solutions Architect, One Source Integrations

Tuesday December 11, 2018 2:35pm - 3:10pm
Ballroom 6E


Kubernetes Is Not For Developers and Other Things the Hype Never Told You - Taylor Thomas & Jordan Olshevski, Microsoft
As a new or experienced user of Kubernetes, you’ve likely heard someone say something similar to “Kubernetes will make things so much better for your developers!” In this talk, we will examine why Kubernetes is not a developer tool and cut through other common misconceptions. Along the way, we’ll learn how Kubernetes provides powerful abstractions for running and operating applications.

Luckily for us, there are many options for leveraging the abstractions Kubernetes provides to create a better developer experience. Drawing on real-life experience with Kubernetes at three large corporations, we will work through practical examples of using Helm, Draft, custom controllers, and other Kubernetes tools to build example platforms for empowering developers.

avatar for Jordan Olshevski

Jordan Olshevski

Senior Software Engineer, Microsoft
Jordan Olshevski has spent most of his career working on distributed systems, and is currently working on Azure Kubernetes Service at Microsoft. Before joining Microsoft, he helped develop Nike's next generation runtime platform based on Kubernetes.
avatar for Taylor Thomas

Taylor Thomas

Senior Software Engineer, Microsoft
Taylor Thomas is a Senior Software Engineer working on Azure Kubernetes Service at Microsoft. He has been involved with containers and Kubernetes platforms at Intel and Nike and is one of the core maintainers of Helm. He currently lives in the Utah area and enjoys hiking and camp... Read More →

Tuesday December 11, 2018 3:40pm - 4:15pm
Ballroom 6E


Becoming Cloud Native Without Starting From Scratch - Marin Jankovski, GitLab
Full rewrite of a working application is a luxury most companies can't afford.
In this session, we will talk about how running GitLab architecture was adapted to be closer to a regular cloud native application without having to rewrite the whole application and disrupt ongoing product development. As an additional requirement, architecture had to be modeled on what is required for installation of GitLab.com scale (SaaS) while also keeping in mind on-premises installation customers which will use the same set of tools. We will discuss what parts of the application we left out of Kubernetes, how we loosely decoupled previously integrated components and how and why are we enforcing some old behaviours. We will share our experiences with using de-facto standard for distributing applications (Helm), but some mis-steps and some good choices we think we made.

avatar for Marin Jankovski

Marin Jankovski

Engineering Manger, Delivery, GitLab Inc.
Marin Jankovski is a software developer with over 8 years of experience working on complex systems. In 2012 he joined GitLab as the first employee where his focus shifted more into the DevOps territory. In 2015 he started the team, which he is currently leading, responsible for building... Read More →

Tuesday December 11, 2018 4:30pm - 5:05pm
Ballroom 6E
Wednesday, December 12


Trace Driven Development: Unifying Testing and Observability - Ted Young, LightStep
This talk proposes a fundamentally new approach to tracing and monitoring: Trace Testing. We discuss testing against trace data rather than code, and how this technique opens the door to an entire suite of verification practices which are difficult to achieve with the current unit/integration test dichotomy.

We show that Trace Tests can span across multiple network calls, languages, and services, while still retaining unit-test-like ability to observe fine grained internal behavior. This combination is particularly useful in mircoservice and serverless environments.

In addition, Trace Testing ensure that behavior which is important enough to test in development is also observable in production.

We also propose that formal proof logic – which can catch new classes of bugs and help with live debugging – is not nearly as complicated once you have distributed tracing.

avatar for Ted Young

Ted Young

Director of Open Source Development, LightStep
Ted Young is the Director of Open Source Development at LightStep, and one of the core maintainers of the OpenTracing project. Ted has spent the last 15 years building distributed systems in a variety of environments: computer animation, national elections, and elastic compute platforms... Read More →

Wednesday December 12, 2018 10:50am - 11:25am
Ballroom 6E


Deploying Rock Solid Applications with Kubernetes - Jelmer Snoeck, Manifold
Kubernetes has made it easy to deploy applications to the cloud. It’s even made it easy to deploy the same application across several instances. This, however, does not mean that your application will be highly available by default. To achieve high availability for your applications, there's a lot more involved.

In this talk we'll look at:
- creating secure Docker images and enforcing this at the cluster level with Pod Security Policies;
- configuring Health Checks and possible caveats like Circular Dependencies;
- limiting traffic between services with Network Policies;
- tolerating node failure by implementing correct Anti-Affinity rules;
- rescheduling pods onto new available nodes after node failure with Disruption Budgets;
- setting up correct deployment strategies;
- how to automate this with Custom Resource Definitions;

avatar for Jelmer Snoeck

Jelmer Snoeck

Tech Lead, Manifold
Jelmer Snoeck is a software engineer at Manifold. He has a background as Site Reliability Engineer at companies like Wonderbly and Mint Digital. Here he focused on reliability and availability. He's currently using these skills to build integrations on top of Kubernetes. Jelmer also... Read More →

Wednesday December 12, 2018 11:40am - 12:15pm
Ballroom 6E


Effective Development with Kubernetes: Techniques, Tools and Telepresence - Philip Lombardi, Datawire.io
Every software development cycle is rife with inefficiency. Seasoned devs know the pain of getting access to essential remote systems, waiting for tests to run (and then fail), or debugging with only log files. This talk teaches you how to best leverage Kubernetes, remote infrastructure and related tooling to create a dev cycle that maximizes velocity and minimizes developer friction and frustration.

Using tools such as Kubernetes, Docker and Telepresence, I will walk attendees through several advanced techniques that can be used to produce an effective developer experience and optimized dev loop. The goal of this is to eliminate many sources of frustrating inefficiency and reduce cycle time between releases. I will demonstrate how to incrementally adopt some of these techniques and how to approach introducing new and unfamiliar technology and techniques to skeptical dev teams.

avatar for Philip Lombardi

Philip Lombardi

Lead Platform Engineer, Datawire.io
Philip Lombardi is Lead Platform Engineer at Boston startup Datawire.io where he is responsible for the teams internal Kubernetes platform and many of the dev tools that help Datawire engineers write and ship code daily. Philip is an active contributor to the CNCF Telepresence project... Read More →

Wednesday December 12, 2018 1:45pm - 2:20pm
Ballroom 6E


Debugging Applications on Kubernetes - Michelle Noorali & Radu Matei, Microsoft
Once upon a time, using a debugger was a normal part of development. Then along came the cloud, and suddenly, a tool developers took for granted completely disappeared. We used to have a single place like an IDE of choice to add some breakpoints, step through the code, and hopefully solve the issue.

In a distributed world where there are many moving parts that can’t always be run on a single machine, debugging an application consisting of multiple services has become significantly harder with microservices written in a variety of languages that come with their own toolchain spread across multiple teams and repositories.

In this demo-led session, we’ll discuss the current state of debugging applications in Kubernetes and provide multiple methods and solutions for debugging so that we can leverage all of the goodness of microservices and the ease of use of existing debugging workflows.

avatar for Radu Matei

Radu Matei

Software Engineer, Microsoft
Radu is a Software Engineer at Microsoft Azure, working on Kubernetes and open source developer tools for distributed systems. He is a core maintainer of Brigade, as well as of the Cloud Native Application Bundles (CNAB) project.When he is not working on open source, he loves playing... Read More →
avatar for Michelle Noorali

Michelle Noorali

Software Engineer, Microsoft
Michelle Noorali is a Sr. Software Engineer at Microsoft. She is a core maintainer on open source projects in the Kubernetes ecosystem including Helm and Draft. She has been involved in the Kubernetes community since 2015 and serves on the Kubernetes Steering Committee. She is passionate... Read More →

Wednesday December 12, 2018 2:35pm - 3:10pm
Ballroom 6E


Using Services Outside Kubernetes from Kubernetes with the Service Catalog - Ara Pulido, Bitnami
Combining Kubernetes with external services available from public cloud providers can be a powerful way to deploy cloud native applications. Developers can focus on deploying their applications to Kubernetes, while delegating things like database management to a public cloud managed service.

The Service Catalog bridges these two worlds by allowing developers instantiate services outside Kubernetes directly from the Kubernetes cluster.

In this demo led talk we will show how the Service Catalog allows users to build hybrid applications that use best of breed cloud services and custom made Kubernetes applications running in a Kubernetes cluster. We will demo some public cloud ready Helm Charts and how we can manage these services from Kubeapps, a Kubernetes application dashboard.

avatar for Ara Pulido

Ara Pulido

Engineering Manager, Bitnami
Ara Pulido is an Engineering Manager at Bitnami, where she leads the Kubernetes and the SRE teams. The Kubernetes team at Bitnami is responsible of maintaining open source projects like Kubeapps, Kubeless, Sealed Secrets and others. She has more than 10 years of experience working... Read More →

Wednesday December 12, 2018 3:40pm - 4:15pm
Ballroom 6E


Evolution of Integration and Microservices with Service Mesh and Ballerina - Christian Posta, Red Hat
Cloud-native describes a way of building applications on a cloud platform to iteratively discover and deliver business value. We now have access to a lot of similar technology that the large internet companies pioneered and used to their advantage to dominate their respective markets. What challenges arise when we start building applications to take advantage of this new technology?

In this talk we'll explore the role of service meshes when building distributed systems, why they make sense, and where they don't make sense. We will look at a class of problem that crops up that service mesh cannot solve, but that frameworks and even new programming languages like Ballerina are aiming to solve

avatar for Christian Posta

Christian Posta

Chief Architect, Cloud Application Development, Red Hat
Christian Posta is a Chief Architect of cloud applications at Red Hat and well known in the community for being an author (Microservices for Java Developers, O’Reilly 2016), frequent blogger, speaker, open-source enthusiast and committer on various open-source projects. Christian... Read More →

Wednesday December 12, 2018 4:30pm - 5:05pm
Ballroom 6E