‹#› @tpryan Virtual Machines - Pros • Eliminate direct hardware costs Finances Developers • No significant changes System Admins • Eliminates toil associated with hardware. • Allows continued use of system configuration and optimization skills.
‹#› @tpryan Virtual Machines - Cons • Can lead to billing surprises Finances Developers • Might be environment differences that cause bugs. System Admins • Loss of control • Problems can occur in the space that they used to control but now don’t.
‹#› @tpryan VM Mitigation • Move risk from cloud provider to cloud customer Discounts Unstable VM • Dramatically reduced cost • Resource isn’t guaranteed Custom VMs • Constrain resources to your processing need
‹#› @tpryan Serverless - Pros • Pay only for exact use Finances Developers • Easier to create microservices • Easier to isolate services from other service System Admins • Eliminates most systems toil
‹#› @tpryan Serverless - Cons • Bursts can surprise you • Sustained usage will tend to be more expensive then you might expect Finances Developers • Most serverless systems require a proprietary interface • Existing apps require work to migrate • Constraints in what kinds of other operation you can do • Constraints in runtimes. System Admins • Eliminates most systems toil • (Might be threatening if all of it gets replaced.)
‹#› @tpryan Matrix from Hell Dev 1 Laptop Dev 2 Laptop QA Stage Production OS OS X Windows Debian Debian Debian Frontend nginx (homebrew) nginx (download) nginx (apt-get) nginx (apt-get) nginx (apt-get) Services php (homebrew) php (download) php (apt-get) php (apt-get) php (apt-get) Database mysql (download) mysql (download) mysql (apt-get) mysql (apt-get) mysql (apt-get) Logs /usr/local/etc/nginx/logs/ C:\nginx-1.9.5\logs /var/log/nginx/ /var/log/nginx/ /var/log/nginx/
‹#› @tpryan Containers - Pros • Allows for better resource usage Finances Developers • Easier to create microservices • Easier to isolate services from other service • Less constraints then serverless System Admins • Separates the code from the system almost entirely • Strongly encourages developer to write easily logged, monitored and dignosed applications
‹#› @tpryan Containers - Cons • Still requires a sunk minimum cost Finances Developers • Microservices are great, until they aren’t and then they hurt. • Complexity System Admins • Containers tend to create additional layer of management • Complexity, complexity, complexity
‹#› @tpryan Container Mitigation • Bring a container, provider will host • GAE Flex • AWS has a thing • Azure has a thing • Other services Managed Container Hosting Managed Kubernetes • Provider runs Kubernetes for you, takes away a lot of complexity • Kubernetes Engine • AWS’s thing • Azure thing