Upgrade to Pro — share decks privately, control downloads, hide ads and more …

From Zero to Docker In Production With Kubernetes

From Zero to Docker In Production With Kubernetes

A data driven exploration to the motivations, challenges, & answers of going to production with Docker

Jeffrey Hicks

October 20, 2016
Tweet

More Decks by Jeffrey Hicks

Other Decks in Technology

Transcript

  1. From Zero to Docker in Production A data driven exploration

    to the motivations, challenges, & answers of going to production with Docker
  2. The Birth Of MVC Web Frameworks •  (M) ActiveRecord • 

    (V) ActionView •  (C) ActionController > gem install rails
  3. > gem install rails The Birth Of MVC Web Frameworks

    •  (M) ActiveRecord •  (V) ActionView •  (C) ActionController •  Webrick •  SQLite
  4. Code Module Packaging Trinity Adoption Language Command Line Interface Registry

    Package Format 1995 Perl cpan CPAN Pearl Modules .meta 2004 Ruby gem RubyGems Gems .gemspec 2005 Java mvn Maven Central Artifacts .pom 2008 Python pip PyPI Package PKG-INFO 2011 .NET nuget NuGet Gallery Package .nuspec 2012 PHP composer Packagist Packages Composer.json
  5. Libs & Binaries Adoption OS Command Line Interface Registry Package

    Format 1999 Debian apt-get Depends •  Ubuntu •  Debian Libs / Binaries .deb 2001 Redhat yum Depends •  CentOS •  Fedora Libs / Binaries .rpm 2009 Mac brew Brew.sh Libs / Binaries Formulas.rb
  6. Docker Runtime is a VM Alternative 310 IT Pros Surveyed

    •  Reduce VM Costs •  Cloud Portability
  7. Docker Runtime is a VM Alternative 310 IT Pros Surveyed

    •  Reduce VM Costs – 3% •  Cloud Portability – 11%
  8. Docker is a Package Management System 310 IT Pros Surveyed

    •  Reduce VM Costs – 3% •  Cloud Portability – 11% •  Developer Efficiency
  9. Docker is a Package Management System 310 IT Pros Surveyed

    •  Reduce VM Costs – 3% •  Cloud Portability – 11% •  Developer Efficiency – 38%
  10. Docker is a Package Management System 310 IT Pros Surveyed

    •  Reduce VM Costs – 3% •  Cloud Portability – 11% •  Developer Efficiency – 38% •  Microservice Arhitecture – 36%
  11. kube-apiserver Controllers Price Ansible Ansible Tower $50 / node Chef

    Chef Server $6 / node Puppet Puppet Enterprise $112 / node SaltStack SaltStack Enterprise $150 / node Kubernetes kube-apiserver Free & Open Source
  12. Deployments •  Describe work loads •  YAML (or JSON) file

    posted to REST API •  Work loads described by deployments are created and maintained by Kubernetes
  13. Services •  Describe access to Deployments similar to Load Balancers.

    •  YAML (or JSON) file posted to REST API •  Access points described by Services are created and maintained by Kubernetes
  14. Secrets •  SensiBve data such as Database Passwords, API Keys,

    and CerBficates •  YAML (or JSON) file posted to REST API •  Kubernetes Stores secrets and serves to work loads as Environment variables or mounted files.
  15. Persistent Volumes •  IdenBfy and specify access to Persistent Block

    Storage resources •  YAML (or JSON) file posted to REST API •  Kubernetes mounts and maintains volumes to deployments.