The Doppler Quarterly Fall 2017 | Page 42

Configuration Management Toolbox Management Monitoring Security Logging Universal Control Plane Source Code Management CI/CD Content Trust, RBAC, LDAP/AD, SSO Registry Service Trusted Registry Orchestration Swarm Container Runtime Engine Content Operating Systems Virtualization Physical/Converged Infrastructure Figure 3: Containers as a Service Source: Docker components requires a great deal of up-front work. There are a number of third party solutions for container management that strive to greatly stream- line and simplify the integration and management of containers. However, the initial effort should not be underestimated. Containers as a Service (CaaS) is Docker’s answer to the prescriptive chal- lenges of PaaS. CaaS allows you to roll your own PaaS without being as pre- scriptive. CaaS allows you to abstract the technology components of your choice into containers and integrates all of the containers into a common plat- form so that developers are shielded from all of the underlying complexity. In response, traditional PaaS solutions like Pivotal’s Cloud Foundry now allow you to pick and choose what components in the stack you want to manage yourself and which ones you want the PaaS solution to manage. You can make compelling arguments for both approaches. One of the biggest advantages of CaaS over traditional PaaS (Cloud Foundry, Heroku, etc.) is cost. With CaaS, you pay for support and possibly subscription fees for various ecosystem tools. PaaS charges a premium for their services. Welcome to a World of Serverless Serverless, or functions as a service (FaaS) totally changes the abstraction game. With serverless, you invoke functions and all of the infrastructure is pro- vided for you on demand. No setting up AMIs, patching, deploying virtual machines, etc. No more large up front enterprise agreements. FaaS is a simple pay-as-you-go service that requires a minimal amount of administration and management. Serverless is relatively new and immature and has its limitations. Testing can be complex and the tools to help in this area are not yet robust. Serverless is also known to be inefficient with long-running applications. 40 | THE DOPPLER | FALL 2017 Service Discovery Networking Volumes Infrastructure Public Cloud Storage