Join in with this month's London Java Community where we'll be having an evening of Kubernetes talks! We'll be joined by Cesar Tron-Lozai, Daniele Polencic and Andrew Martin. Don't miss it!
Congratulations, you are done coding, you made a runnable Jar file. So what? How does it go into the cloud?
In this talk we will explore how JVM applications can be packaged inside a Docker image and discuss tips and common pitfalls. We will continue with a brief introduction to Kubernetes, how it can help deploy our Docker containers and how it can integrate with frameworks like Spring. Finally, will look at a development workflow which allows fast local development of large microservices applications leveraging Telepresence.
Novice and competent Kubernetes users welcome!
Being a Java developer for many years, Cesar Tron-Lozai was very excited when Java 8 came out, and the functional elements it brought to Java. His interest didn't stop there and he went to play with Scala, Haskell, and eventually study Category Theory (the mother of all theory that is behind functional programming). In his job as Head of Engineering of a small startup, he gets involved with all the aspects of software development: Infrastructure, DevOps, design, backend and frontend. In his spare time he co-organise Devoxx4kids in the UK.
You used the Spring framework to create web-services in the blink of an eye. And you know how great it’s to build small services that compose into a larger system. And it works great — until you have to run it in production.
With so many dependencies, how do you deploy applications in the right order? And what about service discovering and config management? Should you create microservices for those? How do you scale services independently so that you are not wasting resources?
In this talk, you’ll learn how to design, package and deploy reliable Spring Boot applications to Kubernetes. You'll understand the many configuration options available to configure your cluster and how best to tweak them to scale your application. Afterwards, you'll be able to sleep easy knowing you've followed Kubernetes best practices, so you avoid those wake-up calls in the middle of the night!
Kubernetes provides multiple layers of network security including the control plane, etcd, the CNI network, network policies, and - with Istio on top - the requests between applications themselves. In this talk we explore the underlying technologies on which these layers are built using approachable examples and demonstrations.
Attendees can expect to gain an understanding of these implementations and the principles behind encryption, identity, and trust in Kubernetes.
What are TLS, X.509, and mutual authentication?
Why cloud native communication should be encrypted by default
Kubernetes component intercommunication
CNI and network policy for applications
Bootstrapping identity with SPIFFE
Mutual TLS, route rules, and destination policies in Istio
Andrew Martin has a strong test-first engineering ethos gained architecting and deploying high-traffic web applications. Proficient in systems development, testing, and maintenance, he is comfortable profiling and securing every tier of a bare metal or cloud native application, and has battle-hardened experience delivering containerised solutions to enterprise clients. He is a co-founder at https://control-plane.io.