<?xml version='1.0' encoding='utf-8' ?>
<iCalendar xmlns:pentabarf='http://pentabarf.org' xmlns:xCal='urn:ietf:params:xml:ns:xcal'>
    <vcalendar>
        <version>2.0</version>
        <prodid>-//Pentabarf//Schedule//EN</prodid>
        <x-wr-caldesc></x-wr-caldesc>
        <x-wr-calname></x-wr-calname>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>DTLE89@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-DTLE89</pentabarf:event-slug>
            <pentabarf:title>Day 1 - Registration + Reception</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T090000</dtstart>
            <dtend>20190518T094500</dtend>
            <duration>0.04500</duration>
            <summary>Day 1 - Registration + Reception</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Opening</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/DTLE89/</url>
            <location>Main Hall</location>
            
            <attendee>TBA</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>CPJPCG@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-CPJPCG</pentabarf:event-slug>
            <pentabarf:title>Cloud Native Rejekts Opening</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T094500</dtstart>
            <dtend>20190518T095500</dtend>
            <duration>0.01000</duration>
            <summary>Cloud Native Rejekts Opening</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Opening</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/CPJPCG/</url>
            <location>Main Hall</location>
            
            <attendee>Chris Kuehl</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>VBYM33@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-VBYM33</pentabarf:event-slug>
            <pentabarf:title>Using BPF to debug your Kubernetes application</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T100000</dtstart>
            <dtend>20190518T103000</dtend>
            <duration>0.03000</duration>
            <summary>Using BPF to debug your Kubernetes application</summary>
            <description>BPF tools for tracing your Linux system is an area with a lot of developments. This has happened in the bcc project and in bpftrace project. Until recently, bcc and bpftrace were designed to trace one Linux system. This is changing with kubectl-trace, a tool adapting bpftrace for the Kubernetes workflow.

I’ll present how to use kubectl-trace to trace a Kubernetes pod. I will also present new tools based on bcc to trace syscalls or files opened by a specific pod. Finally, I will explain how it works and what support it requires from the Kubernetes installation.

Slides: https://tinyurl.com/rejekts-bpf-kubernetes</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/VBYM33/</url>
            <location>Main Hall</location>
            
            <attendee>Alban Crequy</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>MKZDRL@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-MKZDRL</pentabarf:event-slug>
            <pentabarf:title>Building flexible policy with OPA and Kubernetes</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T104000</dtstart>
            <dtend>20190518T111000</dtend>
            <duration>0.03000</duration>
            <summary>Building flexible policy with OPA and Kubernetes</summary>
            <description>Every organization has rules, whether it be that each resource needs to be labelled a specific way or to only use images from specific container repositories. Some of these rules or policies are essential to meet governance or legal requirements and may be based on learning from past experiences. In this session we introduce, how you can audit, validate and mutate Kubernetes resources based custom semantic rules during create, update, and delete operations without recompiling or reconfiguring the Kubernetes API server. These policies are all backed by the Open Policy Agent (OPA), which is a lightweight, general-purpose policy engine for cloud-native environments. We will also demonstrate the work that is being done in the upstream community and provide working samples to start your journey building scalable policy on Kubernetes.

Open Source Repository - https://github.com/open-policy-agent/gatekeeper</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/MKZDRL/</url>
            <location>Main Hall</location>
            
            <attendee>Rita Zhang</attendee>
            
            <attendee>Max Smythe</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>XT9PEB@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-XT9PEB</pentabarf:event-slug>
            <pentabarf:title>Evaluating Firecracker as a container runtime engine</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T113500</dtstart>
            <dtend>20190518T120500</dtend>
            <duration>0.03000</duration>
            <summary>Evaluating Firecracker as a container runtime engine</summary>
            <description>Firecracker, an open-source project published by Amazon, opens up a lot of interesting perspective to the container ecosystem. It opens up use cases between containers and VMs, making use of KVM without relying on heavyweight Qemu instances. Its integration with the Kubernetes ecosystem has only started its first step with containerd. Obviously it’s a good starting point. However, it&#x27;s also time to think about how we should get the new shape of containers integrated with all other high-level container runtimes.
 
In this talk, I would like to talk about alternative ways of integration for getting Firecracker integrated with multiple container runtimes. A proof-of-concept implementation will be also presented during the talk.
 
From the side of Firecracker, its integration with the Kubernetes ecosystem has only started its first steps, only with containerd &amp; Kata containers. For the diversity of Kubernetes ecosystem, however, we should also think about how we should get Firecracker integrated with all other high-level container runtimes in the cloud-native ecosystem.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/XT9PEB/</url>
            <location>Main Hall</location>
            
            <attendee>Dongsu Park</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>GRK7DW@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-GRK7DW</pentabarf:event-slug>
            <pentabarf:title>Prometheus as exposition format for eBPF programs</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T121500</dtstart>
            <dtend>20190518T124500</dtend>
            <duration>0.03000</duration>
            <summary>Prometheus as exposition format for eBPF programs</summary>
            <description>Nowadays every application exposes their metrics via an HTTP endpoint readable by using Prometheus. Recently the exposition format got included into the OpenMetrics standard of the CNCF. Nevertheless, this very common pattern by definition only expose metrics regarding the specific applications being observed.

This talk wants to expose the idea, and a reference implementation, of a slightly different use case that uses **eBPF** programs as a source of information to allow the exposition and collection of kernel and application probes via a **Prometheus** endpoint.

After having showed the architecture of the proposed reference implementation - a Kubernetes operator with a custom resource for BPF programs - we&#x27;ll demo the entire solution to grab and present some metrics without having touched any application running on the demo cluster.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/GRK7DW/</url>
            <location>Main Hall</location>
            
            <attendee>Leonardo Di Donato</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>BTN3CX@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-BTN3CX</pentabarf:event-slug>
            <pentabarf:title>Lunch</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T125000</dtstart>
            <dtend>20190518T142000</dtend>
            <duration>1.03000</duration>
            <summary>Lunch</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Break</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/BTN3CX/</url>
            <location>Main Hall</location>
            
            <attendee>TBA</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>LH3PPX@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-LH3PPX</pentabarf:event-slug>
            <pentabarf:title>Highly Effective Kubernetes Deployments with GitOps</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T142000</dtstart>
            <dtend>20190518T145000</dtend>
            <duration>0.03000</duration>
            <summary>Highly Effective Kubernetes Deployments with GitOps</summary>
            <description>Over the last year, I’ve had the privilege of working with a number of development teams as they modernize workloads, make them cloud native, and move them to Kubernetes.  In this talk, I’ll talk about how many are converging on a GitOps workflow to make their Kubernetes deployments secure, auditable, and simpler and describe the end to end process and tooling you can use to achieve this. This is a practical cloud neutral talk and you’ll walk away with tools and techniques you can apply to your own Kubernetes deployments.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/LH3PPX/</url>
            <location>Main Hall</location>
            
            <attendee>Edaena Salinas</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>VNXFFH@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-VNXFFH</pentabarf:event-slug>
            <pentabarf:title>Building a CI pipeline for Kubernetes distributions on the cheap</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T150000</dtstart>
            <dtend>20190518T153000</dtend>
            <duration>0.03000</duration>
            <summary>Building a CI pipeline for Kubernetes distributions on the cheap</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/VNXFFH/</url>
            <location>Main Hall</location>
            
            <attendee>Kosy Anyanwu</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>HVZJJ7@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-HVZJJ7</pentabarf:event-slug>
            <pentabarf:title>Observing Enterprise Kubernetes Clusters At Scale</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T154000</dtstart>
            <dtend>20190518T161000</dtend>
            <duration>0.03000</duration>
            <summary>Observing Enterprise Kubernetes Clusters At Scale</summary>
            <description>Giant Swarm operates Kubernetes clusters for enterprise, offering a control plane for Kubernetes as a product, and 24/7 support for any managed Kubernetes clusters. As part of this offering, a high degree of observability and monitoring is necessary to respond to and debug operational issues.

In this talk, we will present the learnings from our observability journey to the community, with a focus on how we’ve progressed with Prometheus. This will detail our path to our current usage of Prometheus, our current architecture and drawbacks, and our plans for the future.

As part of this discussion, we’ll cover our architectural choices for monitoring our Kubernetes management platform, before moving onto our current setup and areas we’d like to improve. Towards how we’d like to improve, we’ll go into our plans to horizontally scale our Prometheus setup, as well as integrate with Cortex.

We will also dive into our use of post mortems and continuous delivery to provide continuous improvement. This will touch on some related aspects, such as how our alerting has evolved over time, and how we have implemented new Prometheus exporters to improve the observability of Kubernetes, such as through exposing network and DNS metrics.

Our main aim with this talk is to present how we’re managing observability in a holistic sense. We also believe that the community would be enriched by our learnings, as they can see which decisions we made have had positive outcomes (and which ones haven’t!).</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/HVZJJ7/</url>
            <location>Main Hall</location>
            
            <attendee>Joe Salisbury</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>VNVWCU@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-VNVWCU</pentabarf:event-slug>
            <pentabarf:title>Artifact Registries; Extending OCI Image and Distribution</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T163500</dtstart>
            <dtend>20190518T170500</dtend>
            <duration>0.03000</duration>
            <summary>Artifact Registries; Extending OCI Image and Distribution</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/VNVWCU/</url>
            <location>Main Hall</location>
            
            <attendee>Steve Lasker</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>C7HJP8@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-C7HJP8</pentabarf:event-slug>
            <pentabarf:title>Deep Dive: Deploying Kubernetes on Bare Metal Using the Cluster API</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T171500</dtstart>
            <dtend>20190518T174500</dtend>
            <duration>0.03000</duration>
            <summary>Deep Dive: Deploying Kubernetes on Bare Metal Using the Cluster API</summary>
            <description>Today, the Cluster API project has provider implementations for a variety of cloud environments. Users are interested in using the Cluster API to operate clusters in heterogeneous bare metal environments. While machine provisioning varies widely across these environments, software provisioning remains largely the same. Because of this commonality, the cost of maintaining a separate provider for each environment outweighs the benefits.

Attendees will learn how a single Cluster API provider can be used to operate clusters across different bare metal environments. We will show how to implement a webhook to provision machines in a bare metal environment, and how to integrate it with the Cluster API provider. We will also explain in depth the challenges of deploying Kubernetes in a uniform way across different environments using existing tooling (e.g. kubeadm).</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/C7HJP8/</url>
            <location>Main Hall</location>
            
            <attendee>David Watson &amp; Jason DeTiberus</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>88DYSP@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-88DYSP</pentabarf:event-slug>
            <pentabarf:title>Lessons learned while scaling Kubernetes to 5k nodes</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190518T175500</dtstart>
            <dtend>20190518T182500</dtend>
            <duration>0.03000</duration>
            <summary>Lessons learned while scaling Kubernetes to 5k nodes</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/88DYSP/</url>
            <location>Main Hall</location>
            
            <attendee>Thomas Graf</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>VTTMJ9@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-VTTMJ9</pentabarf:event-slug>
            <pentabarf:title>Day 2 - Registration and Reception</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T090000</dtstart>
            <dtend>20190519T100000</dtend>
            <duration>1.00000</duration>
            <summary>Day 2 - Registration and Reception</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Opening</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/VTTMJ9/</url>
            <location>Main Hall</location>
            
            <attendee>TBA</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>QGAV7J@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-QGAV7J</pentabarf:event-slug>
            <pentabarf:title>Getting Developers to Adopt Your Service</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T100000</dtstart>
            <dtend>20190519T103000</dtend>
            <duration>0.03000</duration>
            <summary>Getting Developers to Adopt Your Service</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/QGAV7J/</url>
            <location>Main Hall</location>
            
            <attendee>Jessica Andersson</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>NUPMTF@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-NUPMTF</pentabarf:event-slug>
            <pentabarf:title>The App Developer&#x27;s Kubernetes Toolbox</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T104000</dtstart>
            <dtend>20190519T111000</dtend>
            <duration>0.03000</duration>
            <summary>The App Developer&#x27;s Kubernetes Toolbox</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/NUPMTF/</url>
            <location>Main Hall</location>
            
            <attendee>Adnan Abdulhussein</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>KMUEGQ@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-KMUEGQ</pentabarf:event-slug>
            <pentabarf:title>Knowing what your Kubernetes cluster is doing</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T113500</dtstart>
            <dtend>20190519T120500</dtend>
            <duration>0.03000</duration>
            <summary>Knowing what your Kubernetes cluster is doing</summary>
            <description>This talk builds on and extends two other talks from previous KubeCon events:

  - Reveal Your Deepest Kubernetes Metrics (KubeCon 2018 Europe)
  - Monitor The World Meaningful Metrics for Kubernetes Applications and Clusters (KubeCon 2018 NA)

It will start where the other talks end and show real world examples of using metrics from kube-state-metrics for the higher abstraction level Kubernetes objects in combination with other exporters such as aws-limits and log files to get insights into the Kubernetes cluster we are running internally for other development teams at Meltwater. By running Kubernetes in production for over a year we have learnt (sometimes the hard way) to focus on the overall state of the cluster without loosing the possibility to dig into specific details as well as knowing about the state of the cloud environment the cluster runs in. The hard way gave us learnings on which metrics we were lacking and which ones were not needed.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/KMUEGQ/</url>
            <location>Main Hall</location>
            
            <attendee>Federico Hernandez</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>7YSFAF@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-7YSFAF</pentabarf:event-slug>
            <pentabarf:title>Hardware vulnerabilities in cloud-native environments</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T121500</dtstart>
            <dtend>20190519T124500</dtend>
            <duration>0.03000</duration>
            <summary>Hardware vulnerabilities in cloud-native environments</summary>
            <description>The talk aims to raise awareness as well as spread in-depth understanding of the impact CPU information disclosure flaws have on Kubernetes and its workloads.

Our motivation is to educate our audience to empower folks to be able able to judge by themselves whether their workloads are secure, and to provide options and mitigations should workloads be at risk. Knowledge from this session will help the community to better understand this new vulnerability class, and to maintain security in Kubernetes deployments.

The talk will roughly follow the path of our blog post on the impact of hardware security vulnerabilities in cloud-native environments: https://kinvolk.io/blog/2019/03/hardware-vulnerabilities-in-cloud-native-environments/ .</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/7YSFAF/</url>
            <location>Main Hall</location>
            
            <attendee>Thilo Fromm</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>PTN7FW@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-PTN7FW</pentabarf:event-slug>
            <pentabarf:title>Lunch</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T125000</dtstart>
            <dtend>20190519T142000</dtend>
            <duration>1.03000</duration>
            <summary>Lunch</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Break</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/PTN7FW/</url>
            <location>Main Hall</location>
            
            <attendee>TBA</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>ZW8MXF@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-ZW8MXF</pentabarf:event-slug>
            <pentabarf:title>Kubernetes Operators</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T142000</dtstart>
            <dtend>20190519T145000</dtend>
            <duration>0.03000</duration>
            <summary>Kubernetes Operators</summary>
            <description>The Operator pattern for custom Kubernetes controllers extends the platform to automate the management of stateful, complex applications -- think databases, file stores, and other critical components that often have their own notions of clustering. Operators provide a philosophy and a toolkit for extending Kubernetes orchestration to this class of application, as well as, recursively, mechanisms for managing the lifecycle of the Kubernetes platform itself. This talk, a freestyle rap based on a rejected Kubecon proposal, will examine and demo Kubernetes Operators and make you want to use Operators and write one for your own application.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/ZW8MXF/</url>
            <location>Main Hall</location>
            
            <attendee>Josh Wood</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>RNVGKN@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-RNVGKN</pentabarf:event-slug>
            <pentabarf:title>Visualizing Canary Rollouts with Istio and Helm</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T150000</dtstart>
            <dtend>20190519T153000</dtend>
            <duration>0.03000</duration>
            <summary>Visualizing Canary Rollouts with Istio and Helm</summary>
            <description>The secret sauce uses a little-known feature of Helm to create arrays of Kubernetes stacks and Codefresh to manage custom health-checks and keeping the rollouts synchronized.

You don&#x27;t want to miss this very visual and interactive talk.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/RNVGKN/</url>
            <location>Main Hall</location>
            
            <attendee>Dan Garfield</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>9LP3TL@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-9LP3TL</pentabarf:event-slug>
            <pentabarf:title>Preemptive Autoscaling on any Cloud</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T154000</dtstart>
            <dtend>20190519T161000</dtend>
            <duration>0.03000</duration>
            <summary>Preemptive Autoscaling on any Cloud</summary>
            <description>Cluster autoscalers automatically adjust the number of nodes in your cluster without operator intervention. Scaling up is important to meet resource demand while scaling down is useful for cost savings when nodes are underutilized. Within the Kubernetes ecosystem, there are various methods for achieving autoscaling.

We’ll do a deep dive into Cerebral, an open source, provider agnostic, preemptive autoscaler with pluggable metrics backends and autoscaling engines. We’ll demo how to use it with a standard backend such as Prometheus, as well as explore use cases for custom backends: scaling based on a growing application queue, for example. This methodology will be contrasted with others such as the Kubernetes Cluster Autoscaler. The audience will also leave with an understanding of different scaling strategies: random, least waste, cost-optimized, and so on.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/9LP3TL/</url>
            <location>Main Hall</location>
            
            <attendee>Matt Kelly</attendee>
            
            <attendee>Ashley Schuett</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>GMZRW7@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-GMZRW7</pentabarf:event-slug>
            <pentabarf:title>Always up-to-date - Dissecting A Kubernetes Upgrade</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T163500</dtstart>
            <dtend>20190519T170500</dtend>
            <duration>0.03000</duration>
            <summary>Always up-to-date - Dissecting A Kubernetes Upgrade</summary>
            <description>Giant Swarm manages cloud infrastructure for enterprises. It means we are in charge of providing Kubernetes clusters to our customers, as well as managing them so they are always running and up to date. 

Since Cloud Native environments are composed of a mixture of different components, people usually struggle to have everything up to date. In order to make it safe and robust, we have created a versioned system where all components of the platform are tracked under a bundle. It brings some benefits like immutability and testability. 
 
A bundle is made of a list of components like the VM, underlying operative system, the Kubernetes release, container runtime, load balancers, VPC peerings, DNS server, etc. Every component defines the version and the changelog since the last occurrence. 

Behind the curtain, a control plane in the form of a Kubernetes cluster holds a system of interconnected operators in charge of ensuring the desired state of the tenant clusters. A custom resource holds the entire configuration of the clusters including the version bundle. Every time there is a component(s) released we create a new bundle. After it is tested, it is promoted to the end user who can trigger the upgrade in her existing clusters. 

As this approach is similar to upstream cluster API efforts, we believe that the community can benefit from our learnings after two years of building and running this architecture. The audience will see which decisions we made, and why using Kubernetes to manage Kubernetes clusters is a great approach in order to keep the clusters up to date in such a dynamic environment.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/GMZRW7/</url>
            <location>Main Hall</location>
            
            <attendee>Fernando RIpoll</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>ZJKBJX@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-ZJKBJX</pentabarf:event-slug>
            <pentabarf:title>OpenMetrics: Prometheus Unbound</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T171500</dtstart>
            <dtend>20190519T172000</dtend>
            <duration>0.00500</duration>
            <summary>OpenMetrics: Prometheus Unbound</summary>
            <description>Nowadays every application exposes their **metrics** via an HTTP endpoint readable by using **Prometheus**. Recently the **exposition format** got included into the **OpenMetrics standard** of the **CNCF**. But why a standardization process was needed and is good? And what are the **novelties** and **differences** OpenMetrics introduces?

This lightning talk will answer those questions while presenting the upcoming OpenMetrics official standard.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Lightning talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/ZJKBJX/</url>
            <location>Main Hall</location>
            
            <attendee>Leonardo Di Donato</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>M3QJJY@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-M3QJJY</pentabarf:event-slug>
            <pentabarf:title>Which service mesh should I use?</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T173000</dtstart>
            <dtend>20190519T173500</dtend>
            <duration>0.00500</duration>
            <summary>Which service mesh should I use?</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Lightning talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/M3QJJY/</url>
            <location>Main Hall</location>
            
            <attendee>Lee Calcote</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>SFTA7W@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-SFTA7W</pentabarf:event-slug>
            <pentabarf:title>Zero downtime upgrades of Kubernetes</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T174000</dtstart>
            <dtend>20190519T174500</dtend>
            <duration>0.00500</duration>
            <summary>Zero downtime upgrades of Kubernetes</summary>
            <description>The team at Meltwater develops and provides  Kubernetes as a Service in a multi-tenant setup internally for 40+ development teams. The base cluster is deployed with Kops and then enhanced with add-ons by the team. During our first &quot;kops rolling-update&quot; runs we have experienced nodes going into &quot;Not ready&quot;. Mainly do to bug #48638/#41916 and the way nodes reach the masters through DNS round-robin. Though our way of doing the upgrade was &quot;triggered&quot; by kops, we think the process and its steps, in particular the way we monitor the upgrade itself and the API functionality during the upgrade, could be interesting and applied to any Kubernetes instance.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Lightning talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/SFTA7W/</url>
            <location>Main Hall</location>
            
            <attendee>Simone Sciarrati</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>ZKNBXH@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-ZKNBXH</pentabarf:event-slug>
            <pentabarf:title>Build Cloud Native Application Bundles with Porter</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T175500</dtstart>
            <dtend>20190519T182500</dtend>
            <duration>0.03000</duration>
            <summary>Build Cloud Native Application Bundles with Porter</summary>
            <description>When we deploy to the cloud, most of us aren&#x27;t dealing with just a single cloud provider or even deployment tool. It seems like even the simplest of applications today need a load balancer, SSL certificates, persistent file storage, DNS, and somewhere in there is your application.

That is a lot to figure out! The Cloud Native Application Bundles specification was created to help address that problem, helping you manage everything in a single package and focus on what you know best: your application. [Porter](https://porter.sh) is a tool that delivers an easy to use, declarative approach to building these bundles. Porter helps you build bundles without needing to be a CNAB expert. Come learn how Porter makes it easier to manage cloud native applications in the messy imperfect hybrid cloud world that we live in.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/ZKNBXH/</url>
            <location>Main Hall</location>
            
            <attendee>Carolyn Van Slyck</attendee>
            
            <attendee>Jeremy Rickard</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>LEQHTE@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-LEQHTE</pentabarf:event-slug>
            <pentabarf:title>Monitoring the NATS messaging system at scale with Elastic Beats</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T113500</dtstart>
            <dtend>20190519T120500</dtend>
            <duration>0.03000</duration>
            <summary>Monitoring the NATS messaging system at scale with Elastic Beats</summary>
            <description>In this session we plan to cover the whole process of turning an internal requirement into a very meaningful integration between a CNCF incubating project (NATS) and a CNCF silver member’s project (Elastic Beats).

First part of the session is going to be about the problem we had to solve. As a team working on Kubernetes microservices, we are using NATS as a messaging queue to ensure the resiliency of the critical paths. Furthermore, we rely on EFK to monitor our stack. Consequently, monitoring of NATS had to be achieved through EFK stack as well.

In the second part of the session we will describe how we came up with the solution, trying to motivate the audience to follow the same successful path when facing similar situations. After investigating our available options, we noticed that Beats project, the Elastic data shipper, could fit in our case if NATS monitoring was supported. And here comes the motivational part. Those days, during an organized hackathon we grabbed the opportunity to work into creating our own NATS Beat which was later added to the official list of community Beats. Today, after Beats maintainers’ request, NATS has its own module in the core of Beats project.

Final part of the session will be dedicated on how to actually use Beats for shipping monitoring data of a running NATS server to an Elasticsearch instance. The audience will have the opportunity to realize the value of NATS module and the benefit of putting effort in community projects.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/LEQHTE/</url>
            <location>Sidebar</location>
            
            <attendee>MICHAEL KATSOULIS</attendee>
            
            <attendee>Stamatis Katsaounis</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>MWPDUY@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-MWPDUY</pentabarf:event-slug>
            <pentabarf:title>Test Driven Development Is Dead</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T121500</dtstart>
            <dtend>20190519T124500</dtend>
            <duration>0.03000</duration>
            <summary>Test Driven Development Is Dead</summary>
            <description>In this session we&#x27;ll uncover why both Unit Testing and Integration Testing as a practice doesn&#x27;t actually help engineers or operations understand how their applications run in production nor does it help them sleep at night when PagerDuty goes off at 3am. We&#x27;ll discuss how modern software delivery organizations are leveraging advances in monitoring and logging systems to analyze the behavior of their production systems in near real time and uncover the mysticism surrounding observability. We&#x27;ll smash the ban hammer on those bits of code which should never be tested and show real world examples of tooling such as Opentracing and Prometheus that enable organizations to focus on what matters: is my production application working like it should.

Ultimately, sufficiently advanced monitoring is indistinguishable from testing and in this talk I&#x27;ll prove it.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/MWPDUY/</url>
            <location>Sidebar</location>
            
            <attendee>Kevin Crawley</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>W3VULB@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-W3VULB</pentabarf:event-slug>
            <pentabarf:title>Moving the CNI to User Space</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T142000</dtstart>
            <dtend>20190519T145000</dtend>
            <duration>0.03000</duration>
            <summary>Moving the CNI to User Space</summary>
            <description>Existing container networking solutions rely on Linux Kernel networking (using iptables, eBPF, Open vSwitch etc.) .  This constrains both performance and flexibility. 

User-Space networking offers better performance (especially when combined with technologies such as vector-based forwarding such as d.io VPP) and enables new features to be developed and deployed without requiring changes to the Linux kernel.

Contiv-VPP is a CNI plugin for Kubernetes that leverages fd.io VPP and which provides a full implementation of Kubernetes network policy and of Kubernetes services (usually implemented by kube-proxy, which programs Linux kernel netfilter rules).

We will provide a detailed description, and live demos of Contiv-VPP, and will discuss the challenges we encountered in our implementation.

Finally we will show how user space networking enables Cloud-native Network Functions such as firewalls and VPN gateways.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/W3VULB/</url>
            <location>Sidebar</location>
            
            <attendee>Giles Heron</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>XFNRUH@@cfp.cloud-native.rejekts.io</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-XFNRUH</pentabarf:event-slug>
            <pentabarf:title>Consistent user authentication in multi-cloud hosted Kubernetes clusters</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190519T150000</dtstart>
            <dtend>20190519T153000</dtend>
            <duration>0.03000</duration>
            <summary>Consistent user authentication in multi-cloud hosted Kubernetes clusters</summary>
            <description>During this talk I will show how a reverse proxy in front of the Kubernetes API can implement uniform OIDC authentication across hosted Kubernetes solutions.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-2019/talk/XFNRUH/</url>
            <location>Sidebar</location>
            
            <attendee>Christian Simon</attendee>
            
        </vevent>
        
    </vcalendar>
</iCalendar>
