OpenShift 3 has been intertwined with Kubernetes development since the very beginning, and many of the developer focused workflows it has focused on has informed and been informed by the core design of Kubernetes. Today it offers workflow and tooling for application developers using Kubernetes as a development platform while still allowing those developers to manage the lower level components of the system. This talk will describe those patterns and how they enhance the core Kubernetes objects, and how those patterns are being moved into the Kubernetes core over time.
We will cover:
- Deploying and redeploying applications based on external changes – how does a developer rely on the platform to manage change, and how can the new Deployment object evolve to offer extended capabilities like triggers, hooks, and custom logic.
- Building and rebuilding images based on administrator or developer source code, and how immutable image infrastructures like Kubernetes and Docker are dependent on automated end to end build chains.
- Allowing administrators to offer a low cost way to expose hundreds or thousands of applications through a front-end load balancer without requiring dedicated load balancers, and how the Ingress resource allows abstraction of high availability and external exposure while allowing administrative control.
- Hosting toolchains on top of Kubernetes that allow better development experience – specifically cheap Git hosting and mirroring and scale out Jenkins slaves.
- Administrative policies that can limit and control developer action to allow sharing of the cluster.
The talk will also touch on future design directions for OpenShift 3 and Kubernetes and how the platform can grow to better serve large scale application hosting.