The Doppler Quarterly Spring 2019 | Page 47

Adopting Kubernetes as a unified platform for serverless and container workloads enables you to fully exploit and embrace modern, cloud-native architectures. Over the past few years, serverless and containers emerged as winners for building modern infrastructure. Each of these technologies have their own sweet spots and chal- lenges. Highly customized container workloads might require sophisticated orchestra- tor infrastructure with high reliability. Serverless cloud services are limited when it comes to application portability, barring some recent advancements, such as OpenFaaS. With the rise of managed Kubernetes, modern application developers are growing com- fortable with using containers. They build and package applications in local machines, and distribute them to different environments as container images—without worrying about performance, scalability or the specifics of the Kubernetes implementation on a cloud service provider. kubernetes Datacenter Build Pipelines Application Code App Container Container Registry kubernetes Cloud Figure 1: Container Apps Deployment But with serverless deployments, the developer experience is not as smooth a ride when it comes to application packaging, portability and debugging. Developers may still need to deal with cloud infrastructure operations, and the nitty-gritty of vendor-specific offerings such as AWS SAM or Azure Functions plugins when it comes to troubleshoot- ing coding errors and exceptions, cold start times, etc. SPRING 2019 | THE DOPPLER | 45