Currently, I’d be particularly happy to speak about the following topics:
- AWS in general and AWS networking in particular
- Jenkins Pipelines
- Prometheus & Grafana
Serverless Networking - How We Provide Cloud-Native Connectivity for IoT Devices (Nov 2020)
In serverless, the network is taken for granted. But what if the network is the product? Is there a routerless? Does it still have a CLI?
How our Cloudy Mindsets Approached Physical Routers (or: SNMP was not an option) (Nov 2020)
After the latest project, EMnify became a 99% only cloud company. To meet growing scalability and reliability requirements of the interconnection between our AWS-based deployments and multiple carriers, BGP peerings had to be moved out of AWS. Therefore, a pair of Juniper routers were put into place. For a company fully relying on cloud services so far, this alien technology resulted in several challenges. We want to share, how we solved the integration puzzle of this physical equipment into our existing workflows and tools.
[German] Mobilfunknetz in der AWS-Cloud (Oct 2020)
How EMnify runs a fully virtualized mobile core network on AWS.
- Event: Würzburg Web Week, Würzburg
Jenkins vs. CodePipeline (Sep 2019)
Who has not used Jenkins? Who does not have a love-hate relationship with it?
At EMnify, we are heavy Jenkins users, but we re also always considering alternatives where hosted services could make our life easier.
Therefore, we recently - once again - looked at AWS CodePipeline and its friends CodeCommit, CodeBuild, and CodeDeploy. In this talk, we will compare the current state of the two ecosystems regarding their simplicity and flexibility for implementing both trivial as well as complex pipelines. Further, we cover topics like: deployment, maintenance, security, costs, and usability.
- Slides at SlideShare
- Together with my colleague Rafael Schleetz Benvenuti
- Event: AWS Community Day Germany, Hamburg
Networking in Amazon Web Services (Oct 2018)
- Event: DevOps Meetup Würzburg
Monitoring Akka with Kamon 1.0 (Apr 2018)
Insights into the inner workings of an application become crucial latest when performance and scalability issues are encountered. This becomes especially challenging in distributed systems, like when using Akka cluster. A popular open-source solution for monitoring on the JVM in general, and Akka in particular, is Kamon. With its recently reached 1.0 milestone, it features means for both metrics collection and tracing of Akka applications, running both standalone or distributed. This talk gives an introduction to Kamon 1.0 with a focus on its metrics features. The basic setup using Prometheus and Grafana will be described, as well as an overview over the different modules and its APIs for implementing custom metrics. The resulting setup allows to record both, automatically exposed metrics about Akka’s actor systems, as well as metrics tailored to the monitored application’s domain and service level indicators. Finally, learnings from a first-time user experience of getting started with Kamon will be reported. The example of adding instrumentation to EMnify’s mobile core application will illustrate, how easy it is to get started and how to kill the Prometheus on a daily basis.
HTTP/2, QUIC, and Multipath-TCP (Mar 2017)
How new protocols are modernizing the web.
- Event: adidas Tech Talks, Herzogenaurach
(Declarative) Jenkins Pipelines (Mar 2017)
An updated version of the Jenkins Pipelines talk below, this time with the introduction focussing on declarative pipelines.
An Open-Source Chef Cookbook CI/CD Implementation Using Jenkins Pipelines (Feb 2017)
Infrastructure is code and code should be tested. For Chef cookbooks, it is however up to the user to establish such testing and release workflows, at least when relying solely on non-commercial tooling. This talk introduces the - still far from perfect - implementation of a Chef cookbook CI/CD pipeline used in the TYPO3 open source project, publicly available at chef-ci.typo3.org. The complete setup can be instantiated using a publicly available cookbook and is self-contained, i.e., the cookbook passes itself through its pipeline.
This implementation makes use of the novel Jenkins Pipeline plugins, which allow to define pipelines as code.
By pointing to a GitHub organization, any code changes in its cookbook repos trigger a pipeline execution. After passing successfully through the different test stages, including parallelized test-kitchen runs, the upload to the Chef Server terminates the pipeline.
Build it, ship it, run it - here and there (Nov 2016)
Kubernetes as cloud infrastructure solution offering cross-platfrom container orchestration for small and big clusters.
- Event: Datev TrendScout, Nuremberg
Continuous Delivery (Nov 2016)
An introduction to continuous delivery.
Jenkins Pipelines (Oct 2016)
Pipelines are a central element of Continuous Delivery and break the delivery process down into multiple stages. By visualizing the flow through the pipeline, the delivery team receives feedback about the status of a change made to the delivered software project.
The implementation of such pipelines using the popular Jenkins CI software has been pretty rough until the public release of a whole set of plugins earlier this year. These pipeline plugins are under very active development and now bring decent support for both pipeline visualization as well as configuration using an own domain specific language.
The talk will give an overview over Jenkins’ new pipeline plugins, as well as different ways to define pipelines as code, i.e., manually, by scanning all repos of a Github organization, and via the shared library. By describing a setup for automated testing and releasing of Chef cookbooks, some of the features offered by Jenkins pipelines will be demonstrated.
Let’s go HTTPS-only! (May 2016)
We are really overdue with encrypting all the things! During this talk, I discussed that setting up HTTPS is more than just buying a certificate - for the good and for the bad. On the one hand, one doesn’t even have to buy one, when Let’s Encrypt is an option. On the other hand, there are bunch of options that should be undertaken to make the setup really secure. This includes HTTP Strict Transport Security headers, correct ciphers, and many more.
Cleaning up the Dirt of the Ninetees (May 2016)
How new protocols (HTTP/2, QUIC, Multipath TCP) change the web and data transport.
[German] 7x7 = Feiner Sand - Architekturalternativen für moderne Anwendungen - Docker, Microservices & PaaS (May 2015)
SDN Interfaces and Performance Analysis of SDN Components (Sep 2014)
[German] DevOps und Continuous Delivery (July 2014)
- Event: Datev TrendScout, Nuremberg
The Development Infrastructure of the TYPO3 Project (Feb. 2013)
What tools are needed to run an open-source project? This talk gives the answer from a TYPO3 perspective and presents the toolchain.
Using Gerrit Code Review in an Open-Source Project (Feb. 2013)
How the TYPO3 project ensures code quality through peer-reviews using “Gerrit Code Review” This talk presents Gerrit itself and the workflow and lessons learned in a big, community-driven open-source project: the TYPO3 project. Gerrit is used here for all top-level projects (TYPO3 CMS, TYPO3 Flow, TYPO3 Neos) since two years to handle every single code change. In addition to human reviews, automatic tests in Jenkins and TravisCI are executed. Gerrit brings transparency into our community-driven project and allows everybody to participate by pushing patches and voting for/against any change.
Official typo3.org Infrastructure & the TYPO3 Server Admin Team (Nov. 2012)
About the TYPO3 open source project’s infrastructure and how we (the Server Admin Team) maintain it.
[German] Neuigkeiten aus dem TYPO3-Projekt (Oct. 2012)
News from the TYPO3 project. The current status of TYPO3 CMS 6.0, TYPO3 Neos and TYPO3 Flow.
Making of TYPO3 (Dec. 2011)
How TYPO3 is developed.