Session

Understanding Kubernetes: Container Patterns

Prerequisite: If you are unfamiliar with Kubernetes be sure to attend: Understanding Kubernetes: Fundamentals

Aha moments with apps in containers can be quite liberating. The mobile space is saturated with "there's an app for that". For us, we now expect "there's a container for that". "Write once, run anywhere" (WORA) has changed to "Package once, run anywhere" (PORA). As the community of containers is riding up the hype curve we will look at some of those top aha moments together.

• Go rouge with Java 9+
• Polyglot microservices
• RabbitMQ broker in 2 minutes
• Private Docker hub in a container
• Composing a Pod with multiple containers
• Database flavors for integration testing

The epiphanies come from the modular simplicity. Leveraging namespaces and using cgroups, these apps share a common kernel without polluting the host OS. This simplifies installation, conflicts and uninstalls. The barriers to getting something running are decreased and normalized to a container run command. This is subtly powerful and liberating. With this simplicity comes complexity such as shared resources, file systems, mounts, networking, and overall cluster management.

Your software package delivery and installation is no longer an rpm, deb, dmg, jar, war, native executable or a run script, it is simply an image that has a common run container command.

Lastly, we will explore how containers can help and hurt your team if you are not careful. What goes into a container is a reflection of a team's skills. Should a team make each tech stack different, or should you standardize? External processes affect your tech stack choices inside your container such as static code analysis, code beautifiers, CI/CD, tracing, logging, and monitoring. Exercise caution as standardization and frameworks can lead to coupling. Your tech stack details can change from version to version so get your SemVer and API versioning right. Finally, containers can be a vehicle to introduce new technologies to those that are conservative and risk avoiders.

During the presentation, we will explore some example on Katacoda.

Jonathan Johnson

Software Architectures ★ Presenter ★ Kubernetes & Java Specialist

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top